객체지향의 사실과 오해

1. 객체엔 property가 존재, property는 단순값인 attribute와 타 객체를 참조하는 link로 나누니다

2. 엔티티는 참조객체를 의미한다

3. 객체를 설계할 땐 상태(필드) 보다 행동을 중심으로 설계해야 한다

4. 추상화 지형 그대로 그려놓은 지하철 노선도 vs 역과 환승을 추상화한 지하철 노선도

- 공통점을 취하고 차이점을 버린다

- 복잡성을 줄이고 단순화

- 동일한 행동은 동일한 책임 수행, 동일한 타입에 속하며 내부 표현 방식은 다를 수 있다.

- 동일한 책임은 동일한 메시지(파라미터)를 수신하며 내부 처리방식(메소드 내부 내용)은 다를 수 있다

- 책임주도설계(responsibility driven design)

  : 제공할 행동을 머저 생각 및 결정 후 행동(책임) 수행에 필요한 데이터를 생각하고

    그 데이터는 인터페이스 뒤로 캡슐화 한다

- 객체를 분류하는 기준은 타입이며 타입을 나누는 기준은 객체가 수행하는 행동이다

 

 

개발언어나 기술에 대해 깊이 다루기 보단 객체지향이라는 개념을 추상적으로 다룬 책. 

객체지향에 대해 최대한 쉬운 예로 설명하는 책.

2020.02.23

반응형

'etc. > books' 카테고리의 다른 글

[Book] HTTP 완벽 가이드  (0) 2020.03.17
[Book] 소프트웨어 장인  (0) 2020.01.16
[Book] Clean Code (클린 코드)  (0) 2019.12.28
[Book] 프로그래머의 길, 멘토에게 묻다  (0) 2019.11.22
[Book] Head First : Design Patterns  (2) 2019.06.04

 

"소프트웨어 장인정신"

소프트웨어 장인정신은 소프트웨어 개발자가 스스로가 선택한 커리어에 책임감을 가지고, 지속적으로 새로운 도구와 기술을 익히며 발전하겠다는 마음가짐이다. 소프트웨어 장인정신은 책임감, 프로페셔널리즘, 실용주의 그리고 소프트웨어 개발자로서의 자부심

 

"애자일"

: 단일 개념이 아닌 서로 다른 여러 맥락에 따른 방법론과 테크닉의 조합

: 짧은 피드백 주기의 중요성

 

"카타"

: 품세라는 뜻으로 일본 무예 훈련에서 나온 용어

: 작은 훈련용 코딩

 

"펫 프로젝트"

: 자가 학습/훈련 용 프로젝트

 

"어디로 가고있지 모르고 있다면 결국 가고싶지 않은 곳으로 간다"

: 방향의 중요성

: 방향을 잡기위한 자기계발

 

"나쁜 코드는 암과도 같다"

: 리펙토링의 중요성

: TDD의 중요성

 

 

2020.02.01

반응형

+ Recent posts