김종민
저자김종민은빅데이터와GIS기반스타트업인UISCLOUD의수석프로그래머이자동양미래대학교컴퓨터공학부겸임교수다.HTML5와AngularJS,스프링MVC,스프링부트등스프링관련프로젝트에관심이많고Clojure의매력에도푹빠져지내고있으며,먼훗날“개발자로태어나개발자로살다개발자로죽었다”라는문구로기억되고싶은욕망이있다.
목차▣01장:사람을사랑한기술__신기술은이전기술의어깨를딛고__기계어에서객체지향프로그래밍언어로____기계어-0과1의행진/너무나비인간적인언어____어셈블리어-0과1의행진을벗어나인간지향으로/기계어니모닉____C언어-강력한이식성/OneSourceMultiObjectUseAnywhere____C++언어-정말인간적인프로그래밍방법론,객체지향____자바-진정한객체지향언어____신기술은이전기술의어깨를딛고개발자를위해발전한다____신기술이역사속에서환영만받은것은아니다__짧은글,긴생각____UML을대하는자세____당신은CBD,SOA가어려운가?____객체지향의4대특성을누군가에게설명할수있는가?____스프링프레임워크는사상이면서또단일제품이다__책출간의변▣02장:자바와절차적/구조적프로그래밍__자바프로그램의개발과구동____자바에존재하는절차적/구조적프로그래밍의유산____다시보는main()메서드:메서드스택프레임__변수와메모리:변수!너어디있니?__블록구문과메모리:블록스택프레임__지역변수와메모리:스택프레임에갇혔어요!__메서드호출과메모리:메서드스택프레임2__전역변수와메모리:전역변수쓰지말라니까요!__멀티스레드/멀티프로세스의이해__STS(또는이클립스)를이용해T메모리영역엿보기__정리-객체지향은절차적/구조적프로그래밍의어깨를딛고▣03장:자바와객체지향__객체지향은인간지향이다__객체지향의4대특성-캡!상추다__클래스vs.객체=붕어빵틀vs.붕어빵???__추상화:모델링82____추상화는모델링이다____추상화와T메모리____클래스멤버vs.객체멤버=static멤버vs.인스턴스멤버__상속:재사용+확장____상속의강력함____상속은isa관계를만족해야한다?____다중상속과자바____상속과인터페이스____상속과UML표기법____상속과T메모리__다형성:사용편의성____오버라이딩?오버로딩?____다형성과T메모리____다형성이지원되지않는언어__캡슐화:정보은닉____객체멤버의접근제어자__참조변수의복사__정리-자바키워드와OOP4대특성▣04장:자바가확장한객체지향__abstract키워드-추상메서드와추상클래스__생성자__클래스생성시의실행블록,static블록__final키워드____final과클래스____final과변수____final과메서드__instanceof연산자__package키워드__interface키워드와implements키워드__this키워드__super키워드__예비고수를위한한마디__정리-자바키워드와OOP확장▣05장:객체지향설계5원칙-SOLID__SRP-단일책임원칙__OCP-개방폐쇄원칙__LSP-리스코프치환원칙__ISP-인터페이스분리원칙__DIP-의존역전원칙__정리-객체지향세계와SOLID▣06장:스프링이사랑한디자인패턴__어댑터패턴(AdapterPattern)__프록시패턴(ProxyPattern)__데코레이터패턴(DecoratorPattern)__싱글턴패턴(SingletonPattern)__템플릿메서드패턴(TemplateMethodPattern)__팩터리메서드패턴(FactoryMethodPattern)__전략패턴(StrategyPattern)__템플릿콜백패턴(TemplateCallbackPattern-견본/회신패턴)__스프링이사랑한다른패턴들▣07장:스프링삼각형과설정정보__IoC/DI-제어의역전/의존성주입____프로그래밍에서의존성이란?____스프링없이의존성주입하기1-생성자를통한의존성주입____스프링없이의존성주입하기2-속성을통한의존성주입____스프링을통한의존성주입-XML파일사용____스프링을통한의존성주입-스프링설정파일(XML)에서속성주입____스프링을통한의존성주입-@Autowired를통한속성주입____스프링을통한의존성주입-@Resource를통한속성주입____스프링을통한의존성주입-@Autowiredvs.@Resourcevs.태그__AOP-Aspect?관점?핵심관심사?횡단관심사?____일단덤벼보자-실전편____일단덤벼보자-설명편____일단덤벼보자-용어편____일단덤벼보자-POJO와XML기반AOP____AOP기초완성310__PSA-일관성있는서비스추상화▣부록A:스프링MVC를이용한게시판구축__A.1URL과@RequestMapping연결하기__A.2인메모리DBHSQL사용하기__A.3VO와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자바8API에서제공하는함수형인터페이스__B.7컬렉션스트림에서람다사용__B.8메서드레퍼런스와생성자레퍼런스__B.9인터페이스의디폴트메서드와정적메서드__B.10정리
출판사서평자바에서스프링으로나아가기위한연결고리를제공해드립니다!자바엔터프라이즈개발을편하게해주는오픈소스경량애플리케이션프레임워크인스프링은자바와객체지향이라는기반위에굳건히세워져있다.따라서스프링을제대로이해하고활용하려면먼저자바와객체지향부터올바르게이해해야한다.모든기술은갑자기하늘에서뚝떨어진것이아니다.이전기술의어깨를디딤돌삼아그위에이전기술이제시한철학과기법을정반합의논리로정제하고,이전기술을거름삼아새로운철학과기법을더해나타난다.스프링...자바에서스프링으로나아가기위한연결고리를제공해드립니다!자바엔터프라이즈개발을편하게해주는오픈소스경량애플리케이션프레임워크인스프링은자바와객체지향이라는기반위에굳건히세워져있다.따라서스프링을제대로이해하고활용하려면먼저자바와객체지향부터올바르게이해해야한다.모든기술은갑자기하늘에서뚝떨어진것이아니다.이전기술의어깨를디딤돌삼아그위에이전기술이제시한철학과기법을정반합의논리로정제하고,이전기술을거름삼아새로운철학과기법을더해나타난다.스프링또한이전기술과개념에서좋은점들을집대성하고거기에자신만의철학과기법을더해자타가인정하는현존최강의프레임워크로발전했다.따라서스프링을학습하고적용하려면스프링의근간이기도한이전기술과개념에대한최소한의이해가필요하다.그리고스프링의근간을이루는핵심에는객체지향특성과설계원칙,디자인패턴이자리잡고있다.