cohension 썸네일형 리스트형 파이썬 클린 코드 - 3장 (좋은 코드의 일반적인 특징) 1. 계약에 의한 디자인 소프트웨어는 사용자가 직접 호출하기도 하지만 코드의 다른 부분에서 호출하는 경우도 있다. 애플리케이션의 책임을 나눠 레이어나 컴포넌트로 분리한 경우가 그렇다. 컴포넌트는 기능을 숨겨 캡슐화하고 함수를 사용할 고객에게는 API(Application Programming Interface) 를 노출해야 한다. 컴포넌트의 함수, 클래스, 메서드는 특별한 유의사항에 따라 동작해야 하며, 그렇지 않을 경우 코드가 깨지게 된다. 예를 들어 정수를 파라미터로 사용하는 함수에 문자열을 파라미터로 전달하면 기대와 다르게 동작할 것이다. 물론 API 를 디자인할 때 예상되는 입력, 출력 및 부작용을 문서화해야 한다. 그러나 문서화가 런타임 시의 소프트웨어 동작을 강제할 수는 없다. 따라서 코드가 .. 더보기 이전 1 다음