본문 바로가기

coding6

[TIL] 클린코드(Clean Code) - 10장. 클래스 📌 오늘 TIL 3줄 요약 SRP(단일책임원칙) : 클래스는 작아야 하고 클래스는 책임, 즉 변경할 이유가 하나여야 한다. OCP(개방폐쇄원칙) : 새 기능을 수정하거나 기존 기능을 변경할 때 건드릴 코드가 최소인 시스템 구조가 바람직하다. 이상적인 시스템이라면 새 기능을 추가할 때 시스템을 확장할 뿐 기존 코드를 변경하지는 않는다. DIP(의존역전원칙) : 상세한 구현에 의존하는 클라이언트 클래스는 구현이 바뀌면 위험에 빠진다. 그래서 우리는 인터페이스와 추상 클래스를 사용해 구현이 미치는 영향을 격리한다. 📆 TIL (Today I Learned) 날짜 2022.03.09 📚 오늘 읽은 범위 10장. 클래스 📝 책에서 기억하고 싶은 내용 클래스는 작아야 한다! 함수는 물리적인 행 수로 크기를 측정했다.. 2022. 3. 9.
[TIL] 클린코드(Clean Code) - 5장. 형식 맞추기 📆 TIL (Today I Learned) 날짜 2022.02.28 📚 오늘 읽은 범위 5장. 형식 맞추기 📝 책에서 기억하고 싶은 내용 형식을 맞추는 목적 : 오랜 시간이 지나 원래 코드의 흔적을 더 이상 찾아보기 어려울 정도로 코드가 바뀌어도 맨 처음 잡아놓은 구현 스타일과 가독성 수준은 유지보수 용이성과 확장성에 계속 영향을 미친다. 원래 코드는 사라질지라도 개발자의 스타일과 규율은 사라지지 않는다. (p.96) 적절한 행 길이를 유지하라 : 500줄을 넘지 않고 대부분 200줄 정도인 파일로도 커다란 시스템을 구축할 수 있다는 사실이다. (FitNesses는 50,000줄에 육박하는 시스템이다.) 반드시 지킬 엄격한 규칙은 아니지만 바람직한 규칙으로 삼으면 좋겠다. 일반적으로 큰 파일보다 작은 파.. 2022. 2. 28.
[TIL] 클린코드(Clean Code) - 4장. 주석 📆 TIL (Today I Learned) 날짜 2022.02.25 📚 오늘 읽은 범위 3장. 주석 📝 책에서 기억하고 싶은 내용 나쁜 코드에 주석을 달지 마라. 새로 짜라. (p.68) 코드는 변화하고 진화한다. 일부가 여기서 저기로 옮겨지기도 한다. 조각이 나뉘고 갈라지고 합쳐지면서 괴물로 변한다. 불행하게도 주석이 언제나 코드를 따라가지는 않는다. 아니, 따라가지 못한다. 주석이 코드에서 분리되어 점점 더 부정확한 고아로 변하는 사례가 너무도 흔하다. (p.68) 부정확한 주석은 아예 없는 주석보다 훨씬 더 나쁘다. 부정확한 주석은 독자를 현혹하고 오도한다. 부정확한 주석은 결코 이뤄지지 않을 기대를 심어준다. 더 이상 지킬 필요가 없는 규칙이나 지켜서는 안 되는 규칙을 명시한다. (p.69) 코드.. 2022. 2. 25.
[TIL] 클린코드(Clean Code) - 3장. 함수 📆 TIL (Today I Learned) 날짜 2022.02.22 📚 오늘 읽은 범위 3장. 함수 📝 책에서 기억하고 싶은 내용 켄트가 코드를 보여줬을 때 나는 함수가 너무도 작아 깜짝 놀랐다. 그때까지 나는 장황하게 긴 스윙 프로그램 함수에 익숙했다. 그런데 Sparkle은 모든 함수가 2줄, 3줄, 4줄 정도였다. 각 함수가 너무도 명백했다. 각 함수가 이야기 하나를 표현했다. 각 함수가 너무도 멋지게 다음 무대를 준비했다. 바로 이것이 답이다! (p.43) 함수가 '한 가지'만 하는지 판단하는 방법이 하나 더 있다. 단순히 다른 표현이 아니라 의미 있는 이름으로 다른 함수를 추출할 수 있다면 그 함수는 여러 작업을 하는 셈이다. (p.45) 코드는 위에서 아래로 이야기처럼 읽혀야 좋다. 한 함수 .. 2022. 2. 22.