더북(TheBook)

2.3.3 무조건 프레임워크를 사용하지 말고 똑똑하게 활용하라

.NET은 다른 프레임워크와 마찬가지로 일반적으로 미리 알 수 없거나 무시할 수 있는 특정 데이터 타입을 추상화하는 데 유용한 도구를 제공한다. URL, IP 주소, 파일 이름, 날짜와 같은 사용자 지정 텍스트 기반의 값은 문자열로 저장한다. 이러한 기존 데이터 타입 중 몇 가지와 함께 이를 활용하는 방법에 대해 알아보자.

이러한 데이터 타입을 위한 .NET 기반 클래스를 이미 알고 있을 수도 있지만, 다루기 쉬운 문자열을 훨씬 선호할 수도 있다. 문자열을 사용할 때 발생할 수 있는 문제는 유효성 검사에 대한 증거가 부족하다는 점이다. 주어진 문자열이 이미 유효성 검사를 통과했는지 함수에서는 알 수 없다. 때문에 예상하지 못한 실패를 겪거나 재검증을 위해 불필요한 코드가 발생하여 속도가 느려지게 된다. 이 경우에는 특정 데이터 타입을 위해 미리 만든 클래스를 사용하는 편이 더 나을 수 있다.

우리에게 있는 유일한 도구가 망치라면 모든 문제가 못처럼 보일 것이다. 문자열도 마찬가지이다. 문자열은 콘텐츠를 저장하기 위해 일반화된 훌륭한 타입이며 구문 분석, 분할, 병합 등을 다루기가 매우 쉽다. 정말 매력적이다. 하지만 문자열에 대한 이러한 자신감은 종종 우리로 하여금 이미 있는 도구를 다시 개발하게 만든다. 문자열로 일을 처리하기 시작하면 그럴 필요가 없는 경우에도 문자열 처리 함수로 모든 것을 처리하려 하는 경향이 생긴다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.