좋은코드
[Good Code,Bad Code] Chapter1 - 코드 품질
고쩡이
2023. 10. 20. 11:55
📑 1.2 코드품질의 목표
- 작동해야 한다.
- 작동이 멈춰서는 안 된다.
- 변화하는 요구 사항에 적응해야 한다.
- 이미 존재하는 기능을 또다시 구현해서는 안 된다.
📑 1.3 코드 품질의 핵심 요소
- 코드는 읽기 쉬워야 한다
- 코드는 예측 가능해야 한다
- 코드를 오용하기 어렵게 만들라
- 코드를 모듈화하라
- 코드를 재사용 가능하고 일반화할 수 있게 작성하라
- reusability : 어떤 문제를 해결하기 위한 무언가가 여러 가지 다른 상황에서도 사용될 수 있음을 의미
- generalizability : 개념적으로는 유사하지만 서로 미묘하게 다른 문제들을 해결할 수 있음을 의미
- 테스트가 용이한 코드를 작성하고 제대로 테스트하라
- 테스트(test) : '실제' 코드를 돌려보고, 모든 것이 정상적 작동하는지 확인하고, 이것을 자동화하기 위해 노력한다.
- 테스트 용이성(testability) : 테스트 대상이 되는 '실제 코드'를 가리키며 해당 코드가 얼마나 테스트하기 적합한지를 나타낸다. 모듈화된 코드는 테스트 용이성이 더 좋다.
📑 1.4 고품질 코드 작성은 일정을 지연시키는가?
중장기적으로는 고품질 코드를 작성하는 것이 개발 시간을 단축해준다.
📔 요약
- 좋은 소프트웨어를 만들려면 고품질 코드를 작성해야 한다.
- 실제 서비스 환경에서 실행되는 소프트웨어가 되기 전에 코드는 일반적으로 여러 단계의 검사와 테스트를 통과해야 한다.
- 버그나 제대로 동작하지 않는 기능이 사용자에게 제공되거나 비즈니스에 중요한 시스템에서 실행되는 것을 이러한 검사를 통해 막을 수 있다.
- 테스트는 코드를 작성하는 모든 단계에서 고려하는 것이 좋다. 코드를 다 작성하고 난 후에 고려하는 것이 아니다.
- 고품질 코드를 작성하면 처음에는 시간이 오래 걸리지만,중장기적으로는 개발 시간이 단축되는 경우가 많다.