이미 소장하고 있다면 판매해 보세요.
|
1부 프레임워크의 소개
1장 왜 프레임워크가 필요한가? 재사용할 수 있는 소프트웨어를 만들려면? 복사\붙이기 메소드 호출 클래스 재사용 클래스 집합에서 디자인 패턴으로 디자인 패턴에서 프레임워크로 쓸만한 프레임워크가 되기 위한 조건들 상품화된 프레임워크들 무거운 프레임워크와 가벼운 프레임워크 그러면 J2EE만 가지고는 안되나요? 프레임워크와 J2EE의 관점 차이 Zoom out 방식의 한계 Zoom in 방식으로의 프레임워크 제 3자 프레임워크를 구입하려 할 때 고려해야 할 점들 직접 만든 프레임워크 프레임워크 생성 과정 올인원 서블릿(All in one servlet) MVC 패턴을 향하여 티어 구조 2장 디자인 패턴으로 보는 프레임워크의 생성 과정 초기 형태 올인원 서블릿으로 구현 주소록 설계 은행 설계 MVC 패턴 주소록 프로그램의 분할 정복 은행 프로그램의 분할 정복 이슈 1 : 데이터베이스 로직의 위치 이슈 2 : 개체와 집합 이슈 3 : 서블릿의 일반화 어댑터 패턴 : 데이터 액세스 로직의 분리 세션 엔터티 패턴 : 개체와 집합의 관계 JSP 뷰 패턴 : 서블릿의 재사용 이슈 4 : 웹 화면 구성 확장된 MVC 패턴 웹 프레젠테이션 티어의 독립 비즈니스 로직 티어의 독립 데이터 액세스 티어의 독립 Front Controller 패턴 이슈 2 : 서로 다른 비즈니스 객체를 어떻게 서블릿이 호출할 수 있을까? Command Processor 패턴 이슈 3 : 서로 다른 결과를 어떤 클래스 타입으로 받을 수 있을까? 추상 팩토리 패턴 1 이슈 1 : 다양한 종류의 Request Input을 서블릿이 어떻게 구분하나? 세션 퍼사드 패턴 어댑터 패턴 인터페이스 패턴 추상 팩토리 패턴 2 싱글톤 패턴 OR 매핑 각 티어 간의 데이터 변경 플로우차트 완성된 로자 프레임워크 아키텍처 마치면서 2부 프레임워크의 적용 3장 주소록 프로그램 적용 개발 순서 개발 환경 설치 조건 프레임워크 설치 과정 주소록 프로그램의 개요 설계 데이터베이스 테이블 정의 db.properties 정의 JDBC 클래스 파일 정의 JDBC 프로그램 테스트 엔터티 클래스 EntityObject로부터 상속받는다 setAttribute()와 getAttribute()를 코딩한다 객체 ID를 정의한다 모든 속성은 public으로 선언한다 import roja.*;를 포함한다 세션 클래스 데이터 소스와 저장될 객체 이름을 선언해둔다 SessionObject에서 상속받는다 init() 메소드를 코딩한다 CommandProcessor CommandProcessor로부터 확장한다 doTheWork()를 구현한다 에러 핸들링 JSP/HTML P2B 설계(Presentation To Business Logic Design) 웹 화면 설계 JSP(또는 Servlet) 코딩 배치(deployment) 프로젝트 디렉토리를 만든다 war 파일을 만든다 테스트 마치면서 4장 비즈니스 객체 설계 페이퍼/펜 모델링 객체 지향 설계의 기본 순서 사용자 요구사항 스텝 1 : 평이한 영어로 재구성 스텝 2 : 영역을 정한다 스텝 3 : 주어, 동사, 목적어로 재배치한다 스텝 4 : 엔터티 클래스를 찾는다 엔터티 클래스에는 메소드보다 변수가 더 중요하다 두 종류의 객체 스텝 5 : 세션 클래스를 찾는다 영역을 포괄하는 객체(Scope Object) Bank 영역 설계 스텝 3 : 주어 동사 목적어로 재배치한다 스텝 4 : 엔터티 클래스를 찾는다 클래스 재사용 스텝 5 : 세션 클래스를 찾는다 스텝 6 : 선정된 클래스에 메소드를 첨가한다 스텝 6 : 선정된 클래스에 자바 의사 코드를 구성해 보자 스텝 7 : 에이전트 관계도를 그린다 스텝 8 : 전체 의사 코드를 구성한다 마치면서 5장 은행 프로그램 적용 개발 순서 상세 설계 데이터 액세스 티어의 설계와 개발 데이터베이스 테이블 작성 db.properties 파일 조정 비즈니스 로직 티어의 설계와 개발 엔터티 클래스 개발 세션 클래스 개발 CommandProcessor를 위한 의사 코드 스크린 개발 시나리오 전체 클래스 다이어그램 프레젠테이션 티어의 설계와 개발 JSP/HTML 정의 배치와 테스트 마치면서 3부 프레임워크 확장 6장 프레젠테이션 티어의 확장 컨텐트 캐시 구현 방식 컨텐트 컨트롤 서블릿(ContentControlServlet) 로그아웃 서블릿(LogoutServlet) 세션 컨트롤 페이지 컨트롤(Page Control) 예정된 페이지 이동(Predefined page navigation) 동적 페이지 이동(Calculated page navigation) 샘플 애플리케이션 세션 컨트롤(Session Control) 예정된 페이지 컨트롤(Predefined Page Control) 동적 페이지 컨트롤(Dynamic Page Control) 마치면서 7장 비즈니스 로직 티어의 확장 레퍼런스 넘버(Reference number generator) 오브젝트 캐시(Object Cache) 컨텐트(Content) 로깅과 시스템 지원 프레임워크 마치면서 8장 비즈니스 룰 엔진 왜 비즈니스 룰 엔진이 필요한가? 아키텍처 룰 설계 비교의 기본 원리 연산자의 비교 날짜 비교 소수 비교 단일 조건과 복합 조건 복합 조건의 비교 방식 룰 베이스의 설계 룰 파서의 설계 룰 엔진의 설계 룰 에디터의 설계 룰 엔진(매트릭스 : Matrix)의 사용법 은행 프로그램에 소개된 룰 엔진 샘플 마치면서 9장 데이터 액세스 티어의 확장 OR 매핑 클래스 매핑과 XML 매핑 비교 OR 매핑의 기능 향상 PatternNote의 도입 OR 매핑 과정 ORmapper 사용 방법 객체와 XML의 바인딩 객체에서 XML로 변환하는 샘플 XML에서 객체로 변환하는 샘플 객체에서 XML로의 매핑 과정 XML에서 객체로의 매핑 과정 사용 방법 객체에서 HTML 생성 JDOM을 통한 리포트 프린팅 사례 객체에서 HTML을 만드는 과정 PropertyDB PropertyDB의 구성 방식 사용 방법 마치면서 10장 EJB 왜 EJB를 찾는가? EJB의 출발 동기 EJB 기본 설계와 J2EE EJB의 유용성 로자/라일락 프레임워크와 EJB 호환성 적용 방법 EJB의 한계와 극복 방안 취약점 설계 방안 마치면서 |