개발자 99% 커뮤니티에서 수다 떨어요!
오늘 TIL 3줄 요약
프로그래머는 기자가 신문 기사를 쓰듯이 사람들이 보기 쉬운 형식의 코드를 작성해야 한다.
이러한 형식 맞추기는 전문 개발자의 의무이다.
맨 처음 잡아놓은 구현 스타일과 가독성 수준은 유지보수 용이성과 확장성에 영향을 미친다.
TIL (Today I Learned) 날짜
2022. 05. 02
오늘 읽은 범위
5장. 형식 맞추기
책에서 기억하고 싶은 내용을 써보세요.
코드 형식은 의사소통의 일환이다. 의사소통은 전문 개발자의 일차적인 의무이다. (p.96)
한 파일에 많은 소스 코드보다 적은 소스 코드가 이해하기 쉽다. (p.97)
소스 파일 첫 부분은 고차원 개념과 알고리즘을 설명한다. 아래로 내려갈수록 의도를 세세하게 묘사한다. 마지막에는 가장 저차원 함수와 세부 내역이 나온다. (p.98)
빈 행은 새로운 개념을 시작한다는 시각적 단서이다. (p.98)
서로 밀접한 개념을 세로로 가까이 둬야 한다. 같은 파일에 속할 정도로 밀접한 두 개념은 세로 거리로 연관성을 표현한다. (p.101)
변수는 사용하는 위치에 최대한 가까이 선언한다. 우리가 만든 함수는 매우 짧으므로 지역 변수는 각 함수 맨 처음에 선언한다. (p.101)
인스턴스 변수는 클래스 맨 처음에 선언한다. 변수 간에 세로로 거리를 두지 않는다. (p.103)
범위(scope)로 이루어진 계층을 표현하기 위해 우리는 코드를 들여쓴다. 들여쓰는 정도는 계층에서 코드가 자리잡은 수준에 비례한다. (p.111)
프로그래머라면 각자 선호하는 규칙이 있다. 하지만 팀에 속한다면 자신이 선호해야 할 규칙은 팀 규칙이다. (p.113)
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
요즘은 IDE 프로그램이 잘 개발되어 있어서 코드 형식 자동맞춤 기능이 작동하여 개발자가 편하게 코드를 작성할 수 있다. 그런데도 불구하고 정해진 형식을 따르지 않고 내 마음대로 작성한 코드는 시간이 오래 지나고나서 보게되면은 매우 보기 힘들고 유지보수하기 힘든 측면이 많았다. 해당 챕터에 나온 형식을 준수하고 나름대로의 코드 형식을 준수하는 팀 컨벤션을 정하여서 팀원과 작업을 맞춰가는 좋은 개발자가 되어야 겠다.
궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.
인스턴스 변수 (p.103) : 클래스가 있는 객체 지향 프로그래밍에서 인스턴스 변수(instance variable)는 클래스(예: 멤버 변수)에 정의된 변수로, 이를 위해 각각의 인스턴스화된 클래스의 객체가 별도의 사본이나 인스턴스를 가지고 있다. 인스턴스 변수는 클래스 변수와 비슷하다.
종속 함수 (p.104) : 어떤 릴레이션 R에서, X와 Y를 각각 R의 애트리뷰트 집합의 부분 집합이라 하자. 애트리뷰트 X의 값 각각에 대해 시간에 관계없이 항상 애트리뷰트 Y의 값이 오직 하나만 연관되어 있을 때 Y는 X에 함수 종속이라 하고, X → Y라고 표기한다.