수정중(3)
-
[ Clean Code ] 클린코드 - 단위테스트(Unit Test)
TDD( Test Driven Development) 과거 인식 클래스, 메서드를 공들여 구현하고는 → 엉망진창 테스트 코드로 돌아가기만 하면 아무 코드나 급조해서 붙여 넣음. → 일회성코드에 불과 TDD 법칙 세가지 첫째, 실패하는 단위테스트 작성할 때까지 실제 코드를 작성하지 않는다. 둘째, 컴파일은 실패하지 않으면서, 실행이 실패하는 정도로만 단위테스트 작성 셋째, 현재 실패하는 테스트 통과할 정도로만 실제 코드 작성 ⛔️ 그러나, 방대한 테스트 코드는 심각한 관리 문제를 유발하기도 함. 깨끗한 코드 유지하기 밥 아저씨 사례 그냥 테스트만 구현하고 돌아가면 지저분한 코드여도 상관 없다! ⛔️ 막 쓰는 테스트 코드에 대한 위험성 코드가 지저분해질수록 변경도 어렵다! 테스트 코드 복잡할수록 실제 코드 ..
2024.01.13 -
[ Clean Code ] 클린코드 시리즈 - 주석
주석을 신뢰하면 안된다. 오래될수록 완전히 그릇된 가능성도 있다. 이유? 프로그래머들이 주석을 유지하고 보수하기란 현실적으로 불가능 코드는 변화하고 진화한다. → 일부가 여기서 저기로 위치가 변경되기도 함 부정확한 주석은 아예 없는 주석보다 훨씬 더 나쁘다. 그리고 주석은 독자를 현혹하고 오도함. ⚠️ 더 이상 지킬 필요가 없는 규칙이나 지켜서는 안되는 규칙을 명시한다. 💡 진실은 한 곳에 존재 → 바로 코드 [ 좋은 주석 ] 정말로 좋은 주석은, 주석을 달지 않을 방법을 찾아낸 주석 1. 법적인 주석 회사가 정립한 구현 표준에 맞춰 법적인 이유로 특정 주석을 넣으라고 명시 소스 파일 첫머리에 주석으로 들어가는 저작권 정보와 소유권 정보는 필요하고, 타당함 FitNess에서 모든 소스 파일 첫머리에 추가..
2023.12.23 -
[ Clean Code ] 클린코드 시리즈 - 함수
함수가 이해하기 쉬우려면? 의도를 분명히 표현하는 함수를 어떻게 구현할 수 있을까? 함수에 어떤 속성을 부여해야 처음 읽는 사람이 프로그램의 내부를 직관적으로 파악할 수 있을까?[작게 만들어라] 블록과 들여쓰기 if / else / while 중첩구조가 생길만큼 함수가 커져서는 안된다. 그러므로 함수에서 들여쓰기 [ 한가지만 해라 ] 함수는 한 가지를 해야한다. 그 한가지를 잘해야한다.그 한가지는 무엇인가? 알기 어렵다는 점 페이지가 테스트페이지인지 확인한 후 테스트 페이지라면 설정 페이지와 해제 페이지를 넣는다 테스트 페이지든 아니든 페이지를 HTML 로 렌더링함 -> 지정된 함수 이름 아래 추상화 수준이 하나의 단계 단순히 다른 표현이 아니라, 의미 있는 이름으로 다른 함수를 추출할 수 있다면 그 함..
2023.12.23