loop-study
개발 공부할래?
loop-study
전체 방문자
오늘
어제
  • 분류 전체보기 (186)
    • 목표 및 회고 (25)
    • 세미나 & 워크샵 (1)
    • 교육 및 인강 (67)
      • TDD, Clean Code with Java (5)
      • ATDD, 클린 코드 with Spring (6)
      • DDD 세레나데 (3)
      • 인프라 공방 (6)
      • 이규원의 현실 세상의 TDD (19)
      • 스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술 (18)
      • 스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 (0)
      • 모든 개발자를 위한 HTTP 웹 기본 지식 - 김영한 (8)
      • 코딩으로 학습하는 GoF의 디자인 패턴 (1)
      • 스프링 시큐리티 완전정복 6.x (1)
    • 서적 (62)
      • 객체지향의 사실과 오해 (1)
      • 객체지향과 디자인패턴 (7)
      • 만들면서 배우는 클린 아키텍처 (3)
      • 테스트 주도 개발로 배우는 객체 지향 설계와 실천 (1)
      • 오브젝트: 코드로 이해하는 객체지향 설계 (17)
      • 리팩토링 : 코드 구조를 체계적으로 개선하여 효율적인 리팩터링 구현하기 (0)
      • 토비의 스프링 (3)
      • 엔터프라이즈 애플리케이션 아키텍처 패턴 (9)
      • 개발자의 글쓰기 (1)
      • 소프트웨어 장인 (17)
      • Real MySQL 8.0 (2)
    • 개발 & 방법론 (29)
      • Java (13)
      • TDD (5)
      • ATDD (3)
      • DDD (6)
      • 인프라 (2)
      • SQL (0)
    • 개인이야기 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

  • 백엔드 로드맵

인기 글

태그

  • 자바
  • DDD 세레나데
  • JUnit
  • 객체지향
  • 모든 개발자를 위한 HTTP 웹 기본 지식
  • fastcampus
  • 넥스트스탭
  • ATDD
  • java
  • 현실세상의 TDD
  • 스프링
  • 장인정신
  • 조영호
  • 인프런
  • 마틴 파울러
  • 오브젝트
  • 소프트웨어 장인
  • Test Driven Development
  • nextstep
  • study
  • 백기선
  • 엔터프라이즈 애플리케이션 아키텍처 패턴
  • Patterns of Enterprise Application Architecture
  • 이규원
  • TDD
  • 테스트 주도 개발
  • 스터디
  • 김영한
  • 추상화
  • 인프라공방

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
loop-study

개발 공부할래?

오브젝트 포스팅을 끝내며
서적/오브젝트: 코드로 이해하는 객체지향 설계

오브젝트 포스팅을 끝내며

2021. 6. 10. 22:06

오브젝트 마지막인 마치며, 나아가기에 이런 문구가 있다

어떤 기술을 처음 학습하려는 사람은 '따라가는 수준'에서 시작한다.

나는 객체지향을 코드로 이해하기 위해서 오브젝트를 읽기 시작했다.

처음엔 객체지향 개념도 제대로 안 잡힌 상태여서 오브젝트 내용을 잘 이해하지 못했다. 말 그대로 글과 코드를 보면서 따라갔다.

그러다가 중반부터 한달정도 멈췄다가 다시 읽으면 첫 완주를 했다.

첫 완주 했을 때의 심정은 드디어 다 읽었구나, 나도 이제 객체지향에 대해 좀 알게 된 거 같은 기분이다.

 

객체가 무엇인지 검색을 해보면 객체란 상태와 행동을 가진 거라 정의하는 사이트가 많았다. 

오브젝트 초반 부분도 객체는 행동과 상태를 같이 가진 것이라고 표현한다.

하지만 초반 이후엔 객체는 협력이라는 문맥 안에서 적합한 책임을 가진 것이라 생각이 바뀐다.

객체는 독립적으로 존재하는 게 아니다. 협력하기 위해 존재하는 것이고, 협력안에서 적합한 책임을 가지며 책임을 지기 위해 사용되는 상태를 가지는 것이 객체라 생각하게 된다.

오브젝트는 이런 객체로 협력을 설계하는 방법을 알려준다.

 

오브젝트를 포스팅하기 위해 다시 읽었다.

디자인 패턴과 리팩터링, 클린 아키텍처 등 객체지향 관련된 책을 읽고 나서 다시 보게 되니 이해했다고 생각했던 내용들이 이번에는 전혀 색다른 내용으로 다가왔다. 

흔히들 책은 시간이 지나면 느껴지는 게 다르다는 말이 무엇인지 이해됐다. 

주기적으로 여러 번 봐도 재미가 있겠구나 생각된다.

 

그리고 읽으면서 좋은 객체지향 설계란 무엇인가 고민했다. 

좋은 설계는 무엇일까? 좋은 코드는 무엇일까?

흔히 말하는 이해하기 좋은 코드일까? 오브젝트에서는 자주 언급되는 게 있다.

설계는 트레이드오프의 산물이다.

나쁜 설계든 좋은 설계든 상관없다.

모두가 상황에 따라 선택된 최선의 선택일 것이다. 

'서적 > 오브젝트: 코드로 이해하는 객체지향 설계' 카테고리의 다른 글

오브젝트 15_ 디자인 패턴과 프레임워크  (0) 2021.06.10
오브젝트 14_ 일관성 있는 협력  (0) 2021.06.10
오브젝트 13_ 서브클래싱과 서브타이핑  (0) 2021.06.10
오브젝트 12_ 다형성  (0) 2021.06.10
오브젝트 11_ 합성과 유연한 설계  (0) 2021.06.10
    '서적/오브젝트: 코드로 이해하는 객체지향 설계' 카테고리의 다른 글
    • 오브젝트 15_ 디자인 패턴과 프레임워크
    • 오브젝트 14_ 일관성 있는 협력
    • 오브젝트 13_ 서브클래싱과 서브타이핑
    • 오브젝트 12_ 다형성
    loop-study
    loop-study
    오늘도 공부하자

    티스토리툴바