개발자 99% 커뮤니티에서 수다 떨어요!
TIL (Today I Learned)
2022.02.20
오늘 읽은 범위
2장. 의미 있는 이름
책에서 기억하고 싶은 내용을 써보세요.
훌륭한 약어로 보일지라도 hp라는 변수는 독자에게 그릇된 정보를 제공한다. (page. 24)
프로그래머에게 List라는 단어는 특수한 의미이다. 계정을 담는 컨테이너가 실제 List 가 아니라면 프로그래머에게 그릇된 정보를 제공하는 셈이다. (page. 24)
컴파일러나 인터프리터만 통과하려는 생각으로 코드를 구현하는 프로그래머는 스스로 문제를 일으킨다. (page. 25)
읽는 사람이 차이를 알도록 이름을 지어라. 프로그래밍은 사회 활동이기 때문이다. (page. 27)
독자가 코드를 읽으면서 변수 이름을 자신이 아는 이름으로 변환해야 한다면 그 변수 이름은 바람직하지 못하다. 이는 일반적으로 문제 영역이나 해법 영역에서 사용하지 않는 이름을 선택했기 때문에 생기는 문제다. (page. 31)
추상적인 개념 하나에 단어 하나를 선택해 이를 고수한다. (page. 33)
일반적으로는 짧은 이름이 긴 이름보다 좋다. 단, 의미가 분명한 경우에 한해서다. 이름에 불필요한 맥락을 추가하지 않도록 주의한다. (page. 37)
클래스 이름
클래스 이름과 객체 이름은 명사나 명사구가 적합하다. [ Ex) Customer, WikiPage, Account, AddressParser ]
메서드 이름
메서드 이름은 동사나 동사구가 적합하다. [ Ex) postPayment, deletePage, save]
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요.
모르는 것을 알게되는 기분을 좋아하는 나로서는 아주 좋았다. 코딩에 입문하고 있던 나에게 이 책은 상당히 도움이 되고 있다. 간단한 코드를 짜면서 공부할 때도 변수 이름에 시간을 투자하게 되었다. 기능에 대한 연관성을 지닌 변수 이름들은 공부에 큰 도움이 되는 것 같다! 이렇게 쭉 공부해봐야겠다.
책을 읽으면서 모르는 단어들이 많이 나오고 있다. 코딩을 공부하면서 개념과 연동하면서 공부하지 않던 내 모습이 드러나는 기분이다. 코딩은 사회 활동이라는 점이 많이 와닿게 된다. 이 책을 읽지 않았더라면 이러한 문제점도 숙지하지 못한 상태로 '할 줄 안다!' 라는 자존감을 가지고 나아갔을 것이다. 이제부터 개념을 정확히 숙지해보도록 노력해보자.
궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.
인코딩 (encoding) : 어떤 정보를 정해진 규칙(Code)에 따라 변환하는 것(en-code-ing)을 일컫는다. 사람이 인지할 수 있는 형태의 데이터를 약속된 규칙에 의해 컴퓨터가 사용하는 0과 1로 변환하는 과정을 통틀어 일컫는다
메서드 : 메서드(method) 또는 멤버 함수(member function)이라 불리는 이것은 객체 지향 프로그래밍에서 객체와 관련된 서브 루틴 (또는 함수)이며 데이터와 멤버 변수에 대한 접근 권한을 갖는다.
프로그래머에게 List란? : 리스트란 변수와 마찬가지로 어떠한 변수에 여러 개의 데이터를 넣을 수 있는 기능
정적 팩토르 메서드 : 정적 팩토리 메서드란 객체 생성의 역할을 하는 클래스 메서드라는 의미로 요약해볼 수 있다.