클린코드 챌린지를 졸업했다 🎓
노마드 개발자 북클럽 - 클린코드 3기

Search for a command to run...

Series
이 시리즈에서는 개발자 필독서 'Clean Code' 를 다룹니다.
독후감을 작성하고 과제를 풀면서 단순 구현을 넘어 좋은 코드란 무엇인가에 대해 고민해 봅니다.
노마드 개발자 북클럽 - 클린코드 3기

진행 날짜 2024년 2월 13일 Mission 원칙 1. 의미 있는 이름을 사용해야 한다 Before 😣 function d(a) { let r = 0; for (let i = 0; i < a.length; i++) { if (a[i] > 0) { r += a[i]; } } return r; } 고치려는 문제 함수 이름 d와 변수 이름 a, r, i가 의미를 분명히 전달하지 못함. 함수의 목적이나...
![[mission] 4. 3가지 예시 만들기](https://cdn.hashnode.com/res/hashnode/image/upload/v1710334118833/3294a17e-2b8f-4a61-95e6-8044f7c8becc.png)
TIL (Today I Learned) 날짜 2024년 2월 11일 오늘 읽은 범위 10장. 클래스 책에서 기억하고 싶은 내용 클래스는 작아야 한다! 단일 책임 원칙 : 클래스나 모듈을 변경할 이유가 단 하나뿐이어야 한다는 원칙 큰 클래스 몇 개보다 작은 클래스 여럿으로 이뤄진 시스템이 더 바람직하다. 작은 클래스는 각자 맡은 책임과 변경할 이유가 하나며, 다른 작은 클래스와 협력해 시스템에 필요한 동작을 수행한다. 응집도를 유...
![[til] 10장. 클래스](https://cdn.hashnode.com/res/hashnode/image/upload/v1710333848984/5e96a57a-04e2-4192-9162-cad9167b61b5.png)
진행 날짜 2024년 2월 10일 범위 7장. 오류처리 9장. 단위 테스트 Mission Quiz 1. 예외를 던지거나 오류 코드를 반환하는 것 중 어느것이 더 나은가요? 정답 예외 Quiz 2. try/catch/finally는 언제 써야 하나요? 정답 코드를 작성하기 전 Quiz 3. 오류 메시지에는 어떤 정보가 포함되어야 하나요? 정답 실패한 작업, 실패 유형, 오류에 대한 자세한 정보 Quiz 4. 메서드/함수에서 null을 ...
![[mission] 3. 퀴즈](https://cdn.hashnode.com/res/hashnode/image/upload/v1710334069995/eb06149c-0d3e-4c89-a7a2-f2a72a231d58.png)
TIL (Today I Learned) 날짜 2024년 2월 8일 오늘 읽은 범위 9장. 단위 테스트 책에서 기억하고 싶은 내용 TDD 법칙 세 가지 실패하는 단위 테스트를 작성할 때까지 실제 코드를 작성하지 않는다. 컴파일은 실패하지 않으면서 실행이 실패하는 정도로만 단위 테스트를 작성한다. 현재 실패하는 테스트를 통과할 정도로만 실제 코드를 작성한다. 이 법칙을 따르면 개발과 테스트가 대략 30초 주기로 묶이며, 방대한 테스트 케이스...
![[til] 9장. 단위 테스트](https://cdn.hashnode.com/res/hashnode/image/upload/v1710333783302/40953753-afaa-43c0-a287-9fc8416afed1.png)
TIL (Today I Learned) 날짜 2024년 2월 8일 오늘 읽은 범위 8장. 경계 책에서 기억하고 싶은 내용 시스템에 들어가는 모든 소프트웨어를 직접 개발하는 경우는 드물다. 때로는 패키지를 사고, 때로는 오픈소스를 이용한다. 때로는 사내 다른 팀이 제공하는 컴포넌트를 사용한다. 어떤 식으로든 이 외부 코드를 우리 코드에 깔끔하게 통합 해야만 한다. 소프트웨어 경계를 깔끔하게 처리하는 기법과 기교를 알아보자. 외부 코드 사용하기...
![[til] 8장. 경계](https://cdn.hashnode.com/res/hashnode/image/upload/v1710333714541/96681dd9-f71c-4156-a84c-a529720cb347.png)