본문 바로가기

리디 접속이 원활하지 않습니다.
강제 새로 고침(Ctrl + F5)이나 브라우저 캐시 삭제를 진행해주세요.
계속해서 문제가 발생한다면 리디 접속 테스트를 통해 원인을 파악하고 대응 방법을 안내드리겠습니다.
테스트 페이지로 이동하기

스프링 입문을 위한 자바 객체 지향의 원리와 이해 상세페이지

컴퓨터/IT 개발/프로그래밍

스프링 입문을 위한 자바 객체 지향의 원리와 이해

소장종이책 정가25,000
전자책 정가28%18,000
판매가18,000
스프링 입문을 위한 자바 객체 지향의 원리와 이해 표지 이미지

스프링 입문을 위한 자바 객체 지향의 원리와 이해작품 소개

<스프링 입문을 위한 자바 객체 지향의 원리와 이해> 자바에서 스프링으로 나아가기 위한 연결 고리를 제공해 드립니다!

자바 엔터프라이즈 개발을 편하게 해주는 오픈소스 경량 애플리케이션 프레임워크인 스프링은 자바와 객체 지향이라는 기반 위에 굳건히 세워져 있다. 따라서 스프링을 제대로 이해하고 활용하려면 먼저 자바와 객체 지향부터 올바르게 이해해야 한다.

모든 기술은 갑자기 하늘에서 뚝 떨어진 것이 아니다. 이전 기술의 어깨를 디딤돌 삼아 그 위에 이전 기술이 제시한 철학과 기법을 정반합의 논리로 정제하고, 이전 기술을 거름 삼아 새로운 철학과 기법을 더해 나타난다. 스프링 또한 이전 기술과 개념에서 좋은 점들을 집대성하고 거기에 자신만의 철학과 기법을 더해 자타가 인정하는 현존 최강의 프레임워크로 발전했다. 따라서 스프링을 학습하고 적용하려면 스프링의 근간이기도 한 이전 기술과 개념에 대한 최소한의 이해가 필요하다. 그리고 스프링의 근간을 이루는 핵심에는 객체 지향 특성과 설계 원칙, 디자인 패턴이 자리 잡고 있다.


출판사 서평

스프링에 입문하는 초급자는 스프링을 학습하거나 적용하는 데 어려움을 호소하고 있다. 그렇다면 스프링은 정말로 어려운 것일까? 누가 필자에게 스프링이 무엇인지 물어보면 주저 없이 객체 지향 프로그래밍(OOP) 프레임워크라고 답하곤 한다. 객체 지향 프로그래밍에 대한 올바른 지식을 갖추지 않은 상태에서 스프링을 이해한다는 것은 어불성설이다. 알파벳도 모르는 상태에서 영어를 마스터하고자 하는 욕심과 별반 다르지 않다. 스프링은 객체 지향 프로그래밍(OOP; Object-Oriented Programming)을 활용했던 기존 기술 중 가장 좋은 철학과 기법을 모아 그 정수를 뽑아낸 결정체라 할 수 있다.

모든 기술은 갑자기 하늘에서 뚝 떨어진 것이 아니다. 이전 기술의 어깨를 디딤돌 삼아 그 위에 이전 기술이 제시한 철학과 기법을 정반합의 논리로 정제하고, 이전 기술을 거름 삼아 새로운 철학과 기법을 더해 나타난다. 스프링 또한 이전 기술과 개념에서 좋은 점들을 집대성하고 거기에 자신만의 철학과 기법을 더해 자타가 인정하는 현존 최강의 프레임워크로 발전했다. 따라서 스프링을 학습하고 적용하려면 스프링의 근간이기도 한 이전 기술과 개념에 대한 최소한의 이해가 필요하다. 그리고 스프링의 근간을 이루는 핵심에는 객체 지향 특성과 설계원칙, 디자인 패턴이 자리 잡고 있다.

이 책에서는 본격적인 스프링 학습을 위한 사전 지식, 즉 스프링의 근간이 되는 객체 지향 4 대 특성, 객체 지향 설계 5원칙, 스프링에서 많이 활용되고 있는 디자인 패턴을 학습하고 이 해하는 것을 목표로 한다.


저자 소개

김종민
빅데이터와 GIS 기반 스타트업인 UISCLOUD의 수석 프로그래머이자 동양미래대학교 컴퓨터공학부 겸임 교수다. HTML5와 AngularJS, 스프링 MVC, 스프링 부트 등 스프링 관련 프로젝트에 관심이 많고 Clojure의 매력에도 푹 빠져 지내고 있으며, 먼 훗날 “개발자로 태어나 개발자로 살다 개발자로 죽었다”라는 문구로 기억되고 싶은 욕망이 있다.

목차

▣ 01장: 사람을 사랑한 기술

신기술은 이전 기술의 어깨를 딛고
기계어에서 객체 지향 프로그래밍 언어로
기계어-0과 1의 행진 / 너무나 비인간적인 언어
어셈블리어-0과 1의 행진을 벗어나 인간 지향으로 / 기계어 니모닉
C 언어-강력한 이식성 / One Source Multi Object Use Anywhere
C++ 언어-정말 인간적인 프로그래밍 방법론, 객체 지향
자바 - 진정한 객체 지향 언어
신기술은 이전 기술의 어깨를 딛고 개발자를 위해 발전한다
신기술이 역사 속에서 환영만 받은 것은 아니다
짧은 글, 긴 생각
UML을 대하는 자세
당신은 CBD, SOA가 어려운가?
객체 지향의 4대 특성을 누군가에게 설명할 수 있는가?
스프링 프레임워크는 사상이면서 또 단일 제품이다
책 출간의 변

▣ 02장: 자바와 절차적/ 구조적 프로그래밍

자바 프로그램의 개발과 구동
자바에 존재하는 절차적/구조적 프로그래밍의 유산
다시 보는 main() 메서드: 메서드 스택 프레임
변수와 메모리: 변수! 너 어디 있니?
블록 구문과 메모리: 블록 스택 프레임
지역 변수와 메모리: 스택 프레임에 갇혔어요!
메서드 호출과 메모리: 메서드 스택 프레임 2
전역 변수와 메모리: 전역 변수 쓰지 말라니까요!
멀티 스레드 / 멀티 프로세스의 이해
STS(또는 이클립스)를 이용해 T 메모리 영역 엿보기
정리 - 객체 지향은 절차적/구조적 프로그래밍의 어깨를 딛고

▣ 03장: 자바와 객체 지향

객체 지향은 인간 지향이다
객체 지향의 4 대 특성 - 캡! 상추다
클래스 vs. 객체 = 붕어빵틀 vs. 붕어빵 ???
추상화: 모델링 82
추상화는 모델링이다
추상화와 T 메모리
클래스 멤버 vs. 객체 멤버 = static 멤버 vs. 인스턴스 멤버
상속: 재사용 + 확장
상속의 강력함
상속은 is a 관계를 만족해야 한다?
다중 상속과 자바
상속과 인터페이스
상속과 UML 표기법
상속과 T 메모리
다형성: 사용편의성
오버라이딩? 오버로딩?
다형성과 T 메모리
다형성이 지원되지 않는 언어
캡슐화: 정보 은닉
객체 멤버의 접근 제어자
참조 변수의 복사
정리 - 자바 키워드와 OOP 4 대 특성

▣ 04장: 자바가 확장한 객체 지향

abstract 키워드 - 추상 메서드와 추상 클래스
생성자
클래스 생성 시의 실행 블록, static 블록
final 키워드
final 과 클래스
final 과 변수
final 과 메서드
instanceof 연산자
package 키워드
interface 키워드와 implements 키워드
this 키워드
super 키워드
예비 고수를 위한 한마디
정리 - 자바 키워드와 OOP 확장

▣ 05장: 객체 지향 설계 5원칙 - SOLID

SRP - 단일 책임 원칙
OCP - 개방 폐쇄 원칙
LSP - 리스코프 치환 원칙
ISP - 인터페이스 분리 원칙
DIP - 의존 역전 원칙
정리 - 객체 지향 세계와 SOLID

▣ 06장: 스프링이 사랑한 디자인 패턴

어댑터 패턴(Adapter Pattern)
프록시 패턴(Proxy Pattern)
데코레이터 패턴(Decorator Pattern)
싱글턴 패턴(Singleton Pattern)
템플릿 메서드 패턴(Template Method Pattern)
팩터리 메서드 패턴(Factory Method Pattern)
전략 패턴(Strategy Pattern)
템플릿 콜백 패턴(Template Callback Pattern - 견본/회신 패턴)
스프링이 사랑한 다른 패턴들

▣ 07장: 스프링 삼각형과 설정 정보

IoC/DI - 제어의 역전/의존성 주입
프로그래밍에서 의존성이란?
스프링 없이 의존성 주입하기 1 - 생성자를 통한 의존성 주입
스프링 없이 의존성 주입하기 2 - 속성을 통한 의존성 주입
스프링을 통한 의존성 주입 - XML 파일 사용
스프링을 통한 의존성 주입 - 스프링 설정 파일(XML)에서 속성 주입
스프링을 통한 의존성 주입 - @Autowired를 통한 속성 주입
스프링을 통한 의존성 주입 - @Resource를 통한 속성 주입
스프링을 통한 의존성 주입 - @Autowired vs. @Resource vs. property 태그
AOP - Aspect? 관점? 핵심 관심사? 횡단 관심사?
일단 덤벼 보자 - 실전편
일단 덤벼 보자 - 설명편
일단 덤벼 보자 - 용어편
일단 덤벼 보자 - POJO와 XML 기반 AOP
AOP 기초 완성 310
PSA - 일관성 있는 서비스 추상화

▣ 부록A: 스프링 MVC를 이용한 게시판 구축

A.1 URL과 @RequestMapping 연결하기
A.2 인메모리 DB HSQL 사용하기
A.3 VO와 MyBatis를 이용한 DAO 구현
A.4 서비스(Service) 구현
A.5 목록 구현
A.6 읽기 구현
A.7 새 글 구현
A.8 수정 구현
A.9 삭제 구현
A.10 리팩터링

▣ 부록B: 자바 8 람다와 인터페이스 스펙 변화

B.1 람다가 도입된 이유
B.2 람다란 무엇인가?
B.3 함수형 인터페이스
B.4 메서드 호출 인자로 람다 사용
B.5 메서드 반환값으로 람다 사용
B.6 자바 8 API에서 제공하는 함수형 인터페이스
B.7 컬렉션 스트림에서 람다 사용
B.8 메서드 레퍼런스와 생성자 레퍼런스
B.9 인터페이스의 디폴트 메서드와 정적 메서드
B.10 정리


리뷰

구매자 별점

5.0

점수비율
  • 5
  • 4
  • 3
  • 2
  • 1

6명이 평가함

리뷰 작성 영역

이 책을 평가해주세요!

내가 남긴 별점 0.0

별로예요

그저 그래요

보통이에요

좋아요

최고예요

별점 취소

구매자 표시 기준은 무엇인가요?

'구매자' 표시는 리디에서 유료도서 결제 후 다운로드 하시거나 리디셀렉트 도서를 다운로드하신 경우에만 표시됩니다.

무료 도서 (프로모션 등으로 무료로 전환된 도서 포함)
'구매자'로 표시되지 않습니다.
시리즈 도서 내 무료 도서
'구매자’로 표시되지 않습니다. 하지만 같은 시리즈의 유료 도서를 결제한 뒤 리뷰를 수정하거나 재등록하면 '구매자'로 표시됩니다.
영구 삭제
도서를 영구 삭제해도 ‘구매자’ 표시는 남아있습니다.
결제 취소
‘구매자’ 표시가 자동으로 사라집니다.

이 책과 함께 구매한 책


이 책과 함께 둘러본 책



본문 끝 최상단으로 돌아가기

spinner
모바일 버전