도서/CleanCode 2

UML

상속 상속받는 관계. 빈 삼각형 화살표. 예를 들면 Car의 특성을 물려받는 Truck. 의존 일시적인 참조를 나타내는 관계. 어떤 메서드 내에서 임시로 생성, 리턴, 매개변수 등의 형태로 사용되는 관계. 점선 화살표. 예를 들면 Car의 Refuel 메서드에서 임시로 사용하는 GasStation과의 관계. 연관 지속적인 참조를 나타내는 관계. 어떤 클래스의 참조 필드를 가지는 관계. 실선 화살표. 예를 들면 Car 클래스에서 참조 필드로 가지고 있는 Person과의 관계. 집합 연관의 하위 항목. 참조 필드의 묶음. 어떤 클래스의 참조형 묶음 필드를 가진 관계. 빈 다이아몬드 실선 화살표. 예를 들면 자동차 정비소에 맡겨놓아진 자동차들의 목록을 갖는 RepairShop과 Car의 관계. 합성 집합보다 ..

도서/CleanCode 2023.03.30

11장. 시스템 (p.194)

이 장에서는 어려운 용어들과 번역체로 인해 알아듣기 힘든 내용이 많았다. 따라서 이 글에서는 상당한 의역을 통해 책의 내용을 이해하기 쉬운 말로 바꾸어 보았다. 시스템은 적절한 추상화와 모듈화를 통해 각 구성요소가 효율적으로 관리되도록 해야한다. 시스템 제작과 사용을 분리하라. 준비과정(시작단계, 객체를 제작하고 의존성을 '연결'하는 과정) 과 런타임 로직을 분리해야 한다. 관심사(concern) : 컴퓨터 프로그램의 코드에 영향을 미치는 특정한 정보 집합이다.(위키백과) 관심사 분리 : 그냥 관련있는 것 끼리 잘 뭉치라는 뜻. 반대로 관련 없는 것들은 분리. 잘못된 예 : 초기화 지연 기법 public Service getService() { if(service = null) service = new ..

도서/CleanCode 2023.02.03