반응형
* 본 아티클은, '좋은 코드 나쁜 코드' 1장을 기반으로 작성된 글입니다.
코드 품질의 목표
- 작동해야 한다.
- 작동이 멈추면 안 된다.
- 변경된 요구 사항에 적응할 수 있어야 한다.
- 수정, 기능 추가, 소비자 선호나 비즈니스 요구 변경 등
- 이미 존재하는 기능을 다시 구현해서는 안 된다.
코드 품질의 핵심 요소
- 코드는 읽기 쉬워야 한다.
- 코드의 가독성이 떨어지면, 다른 개발자가 그 코드를 이해하는 데 많은 시간을 들여야 한다.
- 코드의 기능이나 세부 사항을 놓칠 가능성도 크다. → 버그 확률 up
- 코드는 예측 가능해야 한다.
- 사람의 정신 모델에 반하도록 구현하면 안 된다.
- 중요한 데이터가 손상되는 재앙 등이 발생할 수도 있다.
- 코드를 오용하기 어렵게 만들라.
- TV 뒷면의 전원 소켓과 HDMI 소켓처럼
- 코드를 모듈화하라.
- 잘 정의된 인터페이스를 사용하여 두 개의 인접한 모듈 사이 상호작용을 만든다.
- 코드를 재사용 가능하고 일반화할 수 있게 작성하라.
- 재사용성 : 드릴로 벽과 바닥에 모두 구멍을 뚫을 수 있음
- 일반화성 : 드릴의 회전으로 나사도 박을 수 있음
- 테스트가 용이한 코드를 만들고, 제대로 테스트하라.
- 테스트는 필수적이다.
- 테스트 용이성 : 테스트 대상이 되는 ‘실제’코드가 얼마나 테스트하기 적합한지 나타내는 개념으로, 코드를 작성하면서 테스트 용이성을 반드시 고려해야 한다.
고품질 코드를 작성하는 것은 오래 걸리지만, 중장기적으로는 개발 시간이 단축된다.
반응형
'프로그래밍 책' 카테고리의 다른 글
프로그래밍에서의 오류 (명시적 vs 암시적 방법) #좋은코드나쁜코드 #4장 #Checked exception #Unchecked exception (0) | 2023.04.04 |
---|---|
코드 계약이란? (협업을 위한 코드 작성법) #좋은코드나쁜코드 #3장 (0) | 2023.04.04 |
추상화 계층을 나누는 방법 #좋은코드나쁜코드 #2장 #API #마이크로서비스 (0) | 2023.04.04 |
코딩을 지탱하는 기술 - 내용 정리 (0) | 2023.03.15 |
객체지향의 사실과 오해 리뷰 #객체지향 책 추천 (0) | 2022.11.17 |