logo
logo
x
바코드검색
BOOKPRICE.co.kr
책, 도서 가격비교 사이트
바코드검색

인기 검색어

실시간 검색어

검색가능 서점

도서목록 제공

자바/스프링 개발자를 위한 실용주의 프로그래밍

자바/스프링 개발자를 위한 실용주의 프로그래밍

(객체지향부터 스프링과 테스트까지, 다시 제대로 배우는 애플리케이션 개발)

김우근 (지은이)
위키북스
32,000원

일반도서

검색중
서점 할인가 할인률 배송비 혜택/추가 실질최저가 구매하기
28,800원 -10% 0원
1,600원
27,200원 >
28,800원 -10% 0원
카드할인 10%
2,880원
25,920원 >
yes24 로딩중
교보문고 로딩중
11st 로딩중
영풍문고 로딩중
쿠팡 로딩중
쿠팡로켓 로딩중
G마켓 로딩중
notice_icon 검색 결과 내에 다른 책이 포함되어 있을 수 있습니다.

중고도서

검색중
서점 유형 등록개수 최저가 구매하기
알라딘 판매자 배송 24개 22,000원 >
로딩중

eBook

검색중
서점 정가 할인가 마일리지 실질최저가 구매하기
aladin 25,600원 -10% 1280원 21,760원 >

책 이미지

자바/스프링 개발자를 위한 실용주의 프로그래밍
eBook 미리보기

책 정보

· 제목 : 자바/스프링 개발자를 위한 실용주의 프로그래밍 (객체지향부터 스프링과 테스트까지, 다시 제대로 배우는 애플리케이션 개발)
· 분류 : 국내도서 > 컴퓨터/모바일 > 컴퓨터 공학 > 소프트웨어 공학
· ISBN : 9791158395155
· 쪽수 : 496쪽
· 출판일 : 2024-06-11

책 소개

자바 개발자가 코틀린 같은 신생 언어를 다룰 수 있게 된다고 해서 개발을 더 잘하게 되는 것은 아니다. 소프트웨어 개발 능력을 키우고 싶다면 '개발' 그 자체를 공부하고 기초적인 설계 원리를 이해할 수 있어야 한다. 이 책은 객체지향, SOLID, 디자인 패턴, 테스트 같은 주요 개발 관련 이론이 실제 프로젝트에 어떻게 적용될 수 있는지 설명한다.

목차

[1부] 객체지향

▣ 들어가며
개발을 배워야 한다
__기술 vs. 개발
__개발 능력을 길러야 하는 이유
__스프링과 JPA는 기술이다
이 책을 출간하게 된 이유

▣ 01장: 절차지향과 비교하기
1.1 책임과 역할
1.2 TDA 원칙

▣ 02장: 객체의 종류
2.1 VO(Value Object: 값 객체)
__2.1.1 불변성
__2.1.2 동등성
__2.1.3 자가 검증
2.2 DTO(Data Transfer Object: 데이터 전송 객체)
2.3 DAO(Data Access Object: 데이터 접근 객체)
2.4 엔티티(Entity: 개체)
__2.4.1 도메인 엔티티
__2.4.2 DB 엔티티
__2.4.3 JPA 엔티티
__2.4.4 해석
2.5 객체의 다양한 종류

▣ 03장: 행동
3.1 덕 타이핑
3.2 행동과 구현
3.3 인터페이스
3.4 행동과 역할
3.5 메서드

▣ 04장: SOLID
4.1 SOLID 소개
__4.1.1 단일 책임 원칙
__4.1.2 개방 폐쇄 원칙
__4.1.3 리스코프 치환 원칙
__4.1.4 인터페이스 분리 원칙
__4.1.5 의존성 역전 원칙
4.2 의존성
__4.2.1 의존성 주입
__4.2.2 의존성 역전
__4.2.3 의존성 역전과 스프링
__4.2.4 의존성이 강조되는 이유
4.3 SOLID와 객체지향
4.4 디자인 패턴

▣ 05장: 순환 참조
5.1 순환 참조의 문제점
__5.1.1 무한 루프
__5.1.2 시스템 복잡도
5.2 순환 참조를 해결하는 방법
__5.2.1 불필요한 참조 제거
__5.2.2 간접 참조 활용
__5.2.3 공통 컴포넌트 분리
__5.2.4 이벤트 기반 시스템 사용
5.3 양방향 매핑
5.4 상위 수준의 순환 참조

[2부] 스프링과 객체지향 설계

▣ 06장: 안티패턴
6.1 스마트 UI
6.2 양방향 레이어드 아키텍처
__6.2.1 레이어별 모델 구성
__6.2.2 공통 모듈 구성
6.3 완화된 레이어드 아키텍처
6.4 트랜잭션 스크립트

▣ 07장: 서비스
7.1 Manager
7.2 서비스보다 도메인 모델
7.3 작은 기계
7.4 조언

▣ 08장: 레이어드 아키텍처
8.1 레이어드 아키텍처의 최소 조건
8.2 잘못된 레이어드 아키텍처
__8.2.1 JPA 엔티티 우선 접근
__8.2.2 API 엔드포인트 우선 접근
__8.2.3 본질을 다시 생각하기
8.3 진화하는 아키텍처
__8.3.1 인지 모델 변경하기
__8.3.2 JPA와의 결합 끊기
__8.3.3 웹 프레임워크와의 결합 끊기
8.4 새로운 접근법
8.5 빈약한 도메인

▣ 09장: 모듈
9.1 모듈성
__9.1.1 독립성
__9.1.2 은닉성
9.2 패키지 구조
__9.2.1 계층 기반 구조
__9.2.2 도메인 기반 구조
__9.2.3 정리
9.3 패키지와 모듈

▣ 10장: 도메인
10.1 소프트웨어 개발의 시작
10.2 애플리케이션의 본질
10.3 도메인 모델과 영속성 객체
__10.3.1 통합하기 전략
__10.3.2 구분하기 전략
__10.3.3 평가

▣ 11장: 알아두면 유용한 스프링 활용법
11.1 타입 기반 주입
11.2 자가 호출

[03부] 테스트

▣ 12장: 자동 테스트
12.1 Regression
12.2 의도
12.3 레거시 코드

▣ 13장: 테스트 피라미드
13.1 구글의 테스트 피라미드
13.2 테스트 분류 기준
13.3 소형 테스트의 중요성

▣ 14장: 테스트 대역
14.1 Dummy
14.2 Stub
14.3 Fake
14.4 Mock
__14.4.1 상태 기반 검증
__14.4.2 행위 기반 검증
__14.4.3 상태 기반 vs. 행위 기반
14.5 Spy
14.6 정리

▣ 15장: 테스트 가능성
15.1 테스트를 어렵게 만드는 요소
__15.1.1 숨겨진 입력
__15.1.2 숨겨진 출력
15.2 테스트가 보내는 신호

▣ 16장: 테스트와 설계
16.1 테스트와 SRP
16.2 테스트와 ISP
16.3 테스트와 OCP, DIP
16.4 테스트와 LSP

▣ 17장: 테스트와 개발 방법론
17.1 TDD
17.2 BDD

[부록]

A: 포트-어댑터 패턴
B: 클린 아키텍처
C: 소프트웨어 엔지니어
D: 실용주의
E: 참고 자료

저자소개

김우근 (지은이)    정보 더보기
컴퓨터 공학을 전공하고 카카오에서 백엔드 엔지니어로 근무하고 있다. 현재는 에러 및 로그를 수집하는 옵저버빌리티 플랫폼을 만드는 일에 집중하고 있다. 취미가 개발이라고 당당하게 말할 수 있을 만큼 소프트웨어 개발을 사랑하며 퇴근 후에는 그림을 그리거나 개인 프로젝트를 진행한다. 2020년에는 공개 SW 개발자 대회에서 정보통신산업진흥원장상을 수상했다.
펼치기

책속에서



추천도서

이 포스팅은 쿠팡 파트너스 활동의 일환으로,
이에 따른 일정액의 수수료를 제공받습니다.
이 포스팅은 제휴마케팅이 포함된 광고로 커미션을 지급 받습니다.
도서 DB 제공 : 알라딘 서점(www.aladin.co.kr)
최근 본 책
9791158395452