개발로그

Item 63 - 문자열 연결은 느리니 주의하라

문자열 연결 연산자 (+) 문자열 연결 연산자(+)는 여러 문자열을 하나로 합쳐주는 편리한 수단이다. 하지만, 본격적으로 사용하면 성능 저하를 감내하기 어렵다. 문자열 연결 연산자(+)로 문자열 n개를 잇는 시간은 n^2에 비례한다. String 은 불변이라서 두 문자열을 연결할 경우, 양쪽 내용을 모두 복사해야 한다. 청구서의 ...

Item 62 - 다른 타입이 적절하다면 문자열 사용을 피하라

시작하면서 문자열은 텍스트를 표현하도록 설계되었다. 하지만 문자열은 원래 의도와 다른 용도로 쓰이는 경향이 있다. 이번 아이템에서 문자열을 쓰지 않아야 할 사례를 알아보자! 문자열은 다른 타입을 대신하기에 적절하지 않다. 🙅‍♂️ 파일, 네트워크, 키보드의 입력으로부터 데이터를 받을 때 String을 사용할 수 있다. 하지만...

Item 57 - 지역변수의 범위를 최소화 하라

item 15의 ‘클래스와 멤버의 접근 권한을 최소화하라’와 취지가 비슷하다. 지역변수의 유효 범위를 최소로 줄이면 코드 가독성과 유지보수성이 높아지고 오류 가능성은 낮아진다. 지역변수의 범위를 줄이는 방법 🚀 (1) 가장 처음 쓰일 때 선언하기 사용하는 시점보다 훨씬 이전에 미리 선언하면 가독성이 떨어지고, 실제로 사용하는 시점엔 타입...