러스트 언어 입문 시리즈 - 7편: 에러 처리(Error Handling)와 Result 타입, Option 타입 비교하기
이전 글에서는 러스트의 트레이트(Trait)와 제네릭(Generic) 개념을 통해 추상화와 다형성을 어떻게 안전하고 명확하게 달성하는지 살펴보았습니다. 이번에는 러스트에서 에러를 처리하는 방식을 알아봅시다. C++에서 예외(Exceptions)를 던지고 try/catch로 받는 패턴에 익숙하다면, 러스트가 보여주는 접근 방식은 다소 낯설게 느껴질 수 있습니다. 러스트는 기본적으로 예외(throw)와 catch 블록이 없습니다. 대신 함수의 반환값을 통해 에러 상황을 명시적으로 처리하는 Result 타입, 값이 존재하지 않을 수도 있음을 표현하는 Option 타입, 그리고 프로그램이 더 이상 진행할 수 없는 치명적 상황에서 사용하는 panic! 매크로로 구성된 에러 처리 철학을 가지고 있습니다.런타임 예외..