바딘 프레임워크

모던 자바 웹 UI

김대성 저

이 책은 순수한 자바 코드만을 이용 하여 웹 화면을 개발 가능 하도록 도와 주는 자바 UI 프레임워크인 바딘을 설명하기 위해서 하나의 샘플 웹 프로젝트설계를 시작으로 서버 사이드 개발 → 클라이언트 사이드 개발 → 스프링 연동 → 테스트 개발까지 크게 총 4 단계로 구성 되어 있으며 최종 동작하는 하나의 완성된 웹 프로젝트를 만들어 가는 것을 큰 주제로 삼고 있다. 


도서 상세

분야: [UI & UX / 그래픽, 프로그래밍, 웹프로그래밍]

출간일: May 25, 2017

페이지: 560

도서정가: 33,000 원

ISBN: 9791187497059

N 초급 B 초/중급 능숙 C P 숙련 E 전문
부가 정보

출판사 서평

바딘 프레임워크(Vaadin Framework)는 최종 사용자와 개발자를 만족시킬 수 있는 자바 프레임워크로 개발자에겐 날개를, 최종 사용자에겐 최적의 경험을 선사하는 프레임워크이다.

바딘 프레임워크는 고품질의 웹 기반 사용자 인터페이스를 쉽게 만들고 유지 관리 할 수 있도록 설계된 자바 웹 응용 프로그램 개발 프레임워크다. 바딘은 서버 측과 클라이언트 측의 두 가지 프로그래밍 모델을 지원한다. 특히 서버 중심 프로그래밍 모델이 더 강력하다. AWT, Swing 또는 SWT와 같은 기존의 자바 툴킷을 사용하여 데스크탑 응용 프로그램을 프로그래밍하는 것과 마찬가지로 웹 및 프로그래밍 사용자 인터페이스를 잊어 버릴 수 있다. 

전통적인 웹 프로그래밍은 새로운 웹 기술을 배우는 데 시간을 보내는 재미있는 방법이지만, 여기서는 생산성을 높이고 애플리케이션 로직에 집중하고자 할 것이다. 서버 측 바딘 프레임 워크는 브라우저에서 사용자 인터페이스를 관리하고 브라우저와 서버간에 AJAX 통신을 관리한다. 바딘 방식을 사용하면 HTML이나 JavaScript와 같은 브라우저 기술을 직접 배우거나 처리할 필요가 없다. 

이 책의 구성

이 책의 전체적인 구성은 크게 총 3부로 나뉘며 전체 19개 장으로 구성 되어 있으며 2장부터 18장까지 개발과 관련 된 모든 소스는 Github에 공개 되어 있고 커밋 히스토리는 각 장의 목차와 동일하니 필요한 순간에 체크아웃하여 참조하기를 바란다.

Github : https://github.com/basakpie/vaadin7-jns-book-example

제1부 : 서버 사이드 개발편 (1장 ~ 12장)
바딘 프레임워크의 개발은 웹 화면을 구성 할 수 있는 모두 미리 개발 된 바딘의 자바 API만을 이용해서 구성요소들을 블록처럼 쌓아 가면서 화면을 만들게 된다. 이미 알고 있는 HTML, CSS, JavaScript를 바딘의 API만을 가지고 어떻게 개발 하여야 하는 지와 서버 사이드에서는 입장에서의 요청(Request), 응답(Response)에 대한 처리는 또 다시 바딘에서는 어떻게 다뤄야 되는지 가상의 세미나 웹 프로젝트를 설계 하고 여러 화면들을 만들어 나아가면서 경험해 보게 된다.

제2부 : 클라이언트 사이드 개발편 (13장 ~ 16장)
가상의 완성된 샘플 웹 프로젝트에 적용한 간단한 기능 하나를 직접 바딘의 API 형태로 직접 커스텀하게 만들어 보면서 지금까지 사용하였던 바딘의 API들이 어떻게 브라우저와 서버를 동작(Google Web Toolkit-구글웹툴킷, Remote Procedure Call-원격프로시저호출) 시키는지 비로서 알게 되고 이렇게 만든 자신만의 바딘 API를 애드온즈(Add-ons, 오픈 마켓)까지 직접 공개해 봄으로써 바딘 저장소의 공유와 참여가 가지는 바딘의 생명력에 대해서도 다시 한번 공감하게 된다.

제3부 : 스프링 연동과 테스트 개발편 (17장 ~ 19장)
웹 애플리케이션을 개발 한다면 빈번히 사용 되는 스프링 프레임워크와의 연동을 통해서 실무에서도 적용 가능한 웹 프로젝트로 전환 시키는 방법에 대해서 알아 보고 자바로만 개발 된 바딘의 웹 화면들을 어떻게 테스트 하여야 하는지 로그인 화면을 기준으로 단위 테스트와 통합 테스트까지 개발해 본다.

이 책의 독자

이 책은 웹 애플리케이션을 자바를 이용해서 한번이라도 구현을 해 본 개발자를 위한 책이다. 그 중에서도 비즈니스 웹 개발을 풀 스택 형태로 개발을 해본 경험이 있다면 더욱 더 좋을 듯하다. 사실 바딘을 배우기 위해서는 기초적인 자바 문법 정도만 알고 있다면 충분히 이해할 수 있지만 그 동안 서버 사이드 애플리케이션 개발자가 웹 UI 화면을 개발해 오면서 겪어 왔었던 클라이언트와 서버간에 생기는 다양한문제점들이 바딘으로 개발을 할 경우 어떻게 조금 더 우아하게 그 문제들이 해결되는지 현실적으로 공감 할 수 있기 때문이기도 하다.또는 로그 관리 웹, 배치 관리 웹, 서비스 관리 웹, NoSQL 관리 웹, 서버 관리 웹과같은 비즈니스 웹 애플리케이션을 만들고는 싶었으나 정작 웹 UI 화면을 개발 한지너무 오래 되어서 시작조차 미뤄왔던 나와 같은 개발자가 또 다른 독자층이 될 듯하다.마지막으로 만약 당신이 자바를 잘 알고 있다면 이미 바딘을 알고 있는거나 다름이없음을 강조해 본다.


저자 정보

김대성 : 돌이켜 보면 지난15년 동안 자바 프로그래머로 다양한 곳에서 많은 일을 해 왔다. SI, SM, Solution 기업에서는 수 많은 기능 개발과 레거시 연동을 위해 싸우며 잘못 된 코드가 안겨주는 유지보수의 어려움을 몸소 느꼈고 지금은 잊혀져 가는 프리챌이라는 포탈 서비스 회사에서는 IAM 이라는 SNS를 개발 했었다. 현재는 게임 회사인 엔씨소프트에서 샌드박스라는 게이머SNS 개발 이후 리니지이터널 게임 개발팀에서 근무 하고 있다.

제1부 서버 사이드 개발

1장 바딘의 이해

2장 프로젝트 시작하기

3장 처음 만들어 보는 화면(UI)

4장 뷰와 네비게이터의 이해

5장 메뉴를 이용한 동적 뷰 전환

6장 스타일 직접 다루기

7장 데이터 컨트롤과 파일 다루기

8장 테이블로 처리하는 CRUD

9장 그리드로 처리하는 CRUD

10장 멀티 컴포넌트를 다루는 복잡한 화면

11장 서버 푸쉬 다루기

12장 모바일 웹(모바일+반응형) 다루기


제2부 클라이언트 사이드 개발

13장 Add-ons(애드온즈) 사용하기

14장 My Add-ons 프로젝트 시작하기

15장 My Add-ons 프로젝트 개발하기

16장 My Add-ons 프로젝트 관리하기


제3부 스프링 연동과 테스트 개발

제17장 스프링 연동하기

제18장 테스트 코드 작성과 실행

제19장 정리하기


부록