In IT트렌드, 도서정보, 새로나온책

한 번 읽으면 두 번 깨닫는 객체지향 프로그래밍

저자 :  김동헌 발행일 : 2019-02-18 정가 : 19,500원

전화 883-9774 I 팩스 883-3496 I ebizbooks@hanmail.net

|책 소개|

프로그래머라면 피해갈 수 없는 ‘객체지향’의 개념과 원리

기초부터 활용까지 객체지향을 넓고 깊게 바라보는 새로운 솔루션

IT 분야에 종사한다면 누구나 들어보았을 객체지향 프로그래밍. C#과 JAVA로부터 KOTLIN과 마이크로서비스에 이르기까지 객체지향은 너무나 기본적인 개념으로 자리잡았다. 그러나 객체지향적으로 소프트웨어를 개발한다는 건 과연 무슨 의미일까? 객체지향이라는 말만 많이 들어보았을 뿐, 실무에서 나는 정말로 객체지향적 개발을 하고 있는 걸까?

이 책은 현장에서 소프트웨어 개발에 종사해온 저자가 객체지향을 몸으로 깨우치고, 다시 경험으로 승화시킨 노하우의 산물이다. 객체지향의 개념과 리를 예제와 디자인패턴, UML로 한데 엮어서 마치 실제 비행기 시뮬레이션 게임을 제작하듯 풀어준다. 핵심만 찍어주는 팁박스와 개발자가 놓치지 말아야 할 기본 원리도 잘 정리해놓아서 한 권의 간단명료한 객체지향의 교과서로 쓸 만하다.

|저자 소개|

김동헌

소프트웨어 개발과 글쓰기를 좋아한다. 덕분에 프로그래밍 책까지 쓰게 되었다. 소프트웨어개발자로 일하며 세상에는 뛰어난 천재 개발자들이 많다는 사실을 알게 되었지만, 프로그래밍을 좋아하는 자신 같은 평범한 개발자도 잘할 수 있음을 보여주고 싶었다.

2004년에 JAVA 개발자로 입문하여, 2007년에는 올블로그 TOP100 블로거에 선정되었고, 2011년부터 7년간 신한DS에서 재직하다가 현재는 자바 서버, 아이폰과 안드로이드를 다루는 개발자로 일한다. 최근에는 함수형 언어에 많은 관심이 생겼다.

|추천사|

“최근 주목 받는 마이크로서비스의 원천은 결국 객체지향의 객체(object)라고 할 수 있겠습니다. 따라서 객체지향을 이해하고, 이에 맞게 프로그래밍하는 것은 여전히 클라우드 시대에서도 제일 중요한 부분입니다. 책의 첫 페이지를 읽기 시작했을 때부터, 마지막 페이지를 접을 때까지 내내 흥미롭게 읽었습니다. 저자의 풍부한 개발 경험과 배움에 대한 열정을 잘 녹여내, 책을 읽는 독자들도 객체지향의 이론과 실제를 배우고, 탄탄한 기본기를 다져 팀 단위 협업에 크게 도움이 되리라 믿습니다.” – 강상진 (Akamai Technologies, Sr. Technical Enablement Architect)

“《한 번 읽으면 두 번 깨닫는 객체지향 프로그래밍》은 오래된 개념 같지만 다시 재조명이 필요한 객체지향이라는 개념을, 쉽고 구체적인 레벨로 설명하고 있다. 마이크로서비스를 준비하는 개발자 및 그룹들에게는 이 책을 읽어보면, 제목처럼 ‘한 번 읽고 두 번 깨닫는’ 경험을 할 수 있을 것으로 확신한다.” – 장현태 (AWS Proposal Manager)

|목차|

이 책을 읽는 방법

추천사(강상진)

추천사(장현태)

01 발상의 전환

: 객체지향의 정의와 목표의 전환

대부분 개발자가 기능 중심 개발에 매달리는 이유│기능 중심 개발 → 코드 품질 저하│유연한 소프트웨어란 코드 품질 향상이다│관계의 의존성은 낮게, 기능의 집중도는 높게│객체지향의 정의와 목표

: 고정관념의 전환

객체지향의 구현 대상은 현실 세계?│객체지향은 현실 세계와 동일하다?│객체 하나하나를 잘 만들어야 한다?│기술을 완벽하게 적용해야 한다?│정리

02 객체지향을 돕는 도구

: 객체지향 생각의 도구(관찰, 추상화, 패턴인식)

프로그래밍 언어의 사상을 배우고 따른다는 것│절차지향 언어의 사상과 단점│객체지향 언어의 사상과 장점│관찰 → 추상화 → 패턴인식│관찰 : 사물이나 현상을 주의하여 자세히 살펴보는 것│추상화│패턴인식

: 객체지향 표현의 도구(UML)

UML 다이어그램 종류│UML 다이어그램 활용 방법│클래스 다이어그램

03 객체지향의 넓이

: 객체지향의 기본 요소 5가지

객체(Object)│클래스(Class)│속성(Attribute)│메소드(Method)│생성자(Constructor)

: 객체지향의 근본 조건 7가지

객체지향 보물지도│상속(세로)(Inheritance)│오버로딩(Overloading)│오버라이딩(Overriding)│폴리모피즘(Polymorphism)│캡슐화(Encapsulation)│인터페이스(Interface)│위임(가로)(Delegation)

: 객체지향 구현 원리 5가지

SRP(Single Responsibility Principle)│OCP(Open Closed Principle)│LSP(Liskov Substitution Principle)│ISP(Interface Segregation Principle)│DRY(Don’t Repeat Yourself)/DIP(Dependency Inversion Principle)

04 디자인패턴의 깊이

: Strategy pattern

: State pattern

: Template method pattern

: Decorator pattern

05 한 점 보기

: 객체지향의 한 점

객체지향의 한 점│가족 문파, Objective-C와 스프링 프레임워크│전통의 문파, RDB│신생 문파, 함수형 언어

에필로그

감사의 말

참고문헌

Recommended Posts

Leave a Comment