SlideShare a Scribd company logo
1 of 54
GWT(Google Web Toolkit)
Web기술개발팀
배 철민 Manager
13년 6월 13일 목요일
GWT(Google Web Toolkit) 소개
13년 6월 13일 목요일
Contents
• What is GWT?
• Why GWT?
• Disadvantage of GWT
• Development Flow
• GWT 환경설정
• GWT 분석 및 예제
13년 6월 13일 목요일
What is GWT?
• Google Web Toolkit is a development toolkit to
create Rich Internet Application
• GWT provides developers option to write client
side application in Java
• GWT complies the code written in Java to
JavaScript code.
• GWT automatically generates javascript code
suitable for each browser(cross-browsing)
13년 6월 13일 목요일
Back-end Development Front-end Development
지금까지 잘 해오고 있었는데...
13년 6월 13일 목요일
Why GWT?
• auto-complete / refactoring / navigation /
project management
• Developers can debug the client side
application as Java application
• Extensible
13년 6월 13일 목요일
Disadvantage GWT
• Not Indexable
• Not degradable
• Not designer’s friendly
13년 6월 13일 목요일
GWT Component
13년 6월 13일 목요일
Development Flow
13년 6월 13일 목요일
Development Flow
13년 6월 13일 목요일
GWT 환경설정
http://www.gwtproject.org/download.html
13년 6월 13일 목요일
GWT?
• Elements(HTML + CSS)
• Event Handler (JavaScript)
• Server Communication (JavaScript)
Web Application의 구성
13년 6월 13일 목요일
GWT Library 분석
Web Application Elements
구성요소(DOM Tree, Element)
13년 6월 13일 목요일
GWT Library 분석
-Elements 관련-
13년 6월 13일 목요일
GWT Library 분석
-Elements 관련-
13년 6월 13일 목요일
GWT Library 분석
-Elements 관련-
13년 6월 13일 목요일
GWT Library 분석
-Elements 관련-
13년 6월 13일 목요일
GWT Elements
• The Elements are really minimum
• raw Elements and ugly Elements
• need to build everything
• GWT 3rd party widget library
(GWT-Bootstrap, GWT-CodeMirror, etc..)
13년 6월 13일 목요일
Example
1 2
13년 6월 13일 목요일
GWT Library 분석
-Event Handler-
13년 6월 13일 목요일
Basic Event Handle
GWT Event Handler Android Event Handler
13년 6월 13일 목요일
Large Project Event Handle
• MVP Model
• EventBus
13년 6월 13일 목요일
MVP Model
13년 6월 13일 목요일
MVP Model
13년 6월 13일 목요일
MVP Model
Model
13년 6월 13일 목요일
MVP Model
Model
13년 6월 13일 목요일
MVP Model
ModelPresenter
13년 6월 13일 목요일
MVP Model
ModelPresenter
13년 6월 13일 목요일
MVP Model
ModelPresenterView
13년 6월 13일 목요일
MVP Model
ModelPresenterView
사용자 이벤트
13년 6월 13일 목요일
MVP Model
ModelPresenterView
사용자 이벤트 모델 변경/질의
13년 6월 13일 목요일
MVP Model
ModelPresenterView
사용자 이벤트 모델 변경/질의
변경 통지
13년 6월 13일 목요일
MVP Model
ModelPresenterView
뷰 변경
사용자 이벤트 모델 변경/질의
변경 통지
13년 6월 13일 목요일
MVP Model
13년 6월 13일 목요일
MVP Model
EventBus
13년 6월 13일 목요일
Example
13년 6월 13일 목요일
GWT Library 분석
-Server Communication-
13년 6월 13일 목요일
AJAX
13년 6월 13일 목요일
using RPC mechanism
13년 6월 13일 목요일
Example
13년 6월 13일 목요일
GWT is useful than Javascript ?
13년 6월 13일 목요일
GWT is useful than Javascript ?
13년 6월 13일 목요일
Useful Resources
Google Web Toolkit : https://developers.google.com/web-toolkit/
GWT Project : http://www.gwtproject.org/
Wikipedia : http://en.wikipedia.org/wiki/Google_Web_Toolkit
Google Code : https://code.google.com/p/google-web-toolkit/
Java tutorial : http://www.tutorialspoint.com/java/index.htm
GWT tutorial : http://www.tutorialspoint.com/gwt/gwt_useful_resources.htm
Smart Showcase : http://www.smartclient.com/smartgwt/showcase/#main
13년 6월 13일 목요일
MGWT(Mobile Google Web Toolkit) 소개
13년 6월 13일 목요일
MGWT 소개 동영상
13년 6월 13일 목요일
MGWT 소개 동영상
13년 6월 13일 목요일
MGWT 소개 동영상
13년 6월 13일 목요일
Index
• What is MGWT?
• Why MGWT?
• MGWT 환경설정
• MGWT Example
13년 6월 13일 목요일
what is MGWT?
• adds functionality thats currently missing in the
gwt core for mobile development
13년 6월 13일 목요일
why MGWT?
• HTML5 App vs Native App
• MGWT uses GWT Best Practices
• MVP framework
• UiBinder
• Custom ActivityManager
• MGWT event model
13년 6월 13일 목요일
MGWT 환경설정
http://www.m-gwt.com/
13년 6월 13일 목요일
Example
13년 6월 13일 목요일
Useful Resources
M-GWT : http://www.m-gwt.com/
Google Code : https://code.google.com/p/mgwt/
Github : https://github.com/dankurka/mgwt
Docs : http://docs.mgwt.googlecode.com/git/javadoc/latest/index.html
13년 6월 13일 목요일
13년 6월 13일 목요일

More Related Content

Viewers also liked

Javascript & Angular .js for the enterprise, lessons learned, typescript scal...
Javascript & Angular .js for the enterprise, lessons learned, typescript scal...Javascript & Angular .js for the enterprise, lessons learned, typescript scal...
Javascript & Angular .js for the enterprise, lessons learned, typescript scal...David Amend
 
Reasons to migrate to modern web development with JavaScript
Reasons to migrate to modern web development with JavaScriptReasons to migrate to modern web development with JavaScript
Reasons to migrate to modern web development with JavaScriptDavid Amend
 
Gwt widget frameworks_presentation
Gwt widget frameworks_presentationGwt widget frameworks_presentation
Gwt widget frameworks_presentationDavid Amend
 
Geecon 2014 - Five Ways to Not Suck at Being a Java Freelancer
Geecon 2014 - Five Ways to Not Suck at Being a Java FreelancerGeecon 2014 - Five Ways to Not Suck at Being a Java Freelancer
Geecon 2014 - Five Ways to Not Suck at Being a Java FreelancerRoberto Cortez
 
Multi modularized project setup with gulp, typescript and angular.js
Multi modularized project setup with gulp, typescript and angular.jsMulti modularized project setup with gulp, typescript and angular.js
Multi modularized project setup with gulp, typescript and angular.jsDavid Amend
 
Angularjs practical project experiences with javascript development in a bank
Angularjs practical project experiences with javascript development in a bankAngularjs practical project experiences with javascript development in a bank
Angularjs practical project experiences with javascript development in a bankDavid Amend
 
Maven - Taming the Beast
Maven - Taming the BeastMaven - Taming the Beast
Maven - Taming the BeastRoberto Cortez
 
Migration tales from java ee 5 to 7
Migration tales from java ee 5 to 7Migration tales from java ee 5 to 7
Migration tales from java ee 5 to 7Roberto Cortez
 
Angular 2 : learn TypeScript already with Angular 1
Angular 2 : learn TypeScript already with Angular 1Angular 2 : learn TypeScript already with Angular 1
Angular 2 : learn TypeScript already with Angular 1David Amend
 
KYSUC - Keep Your Schema Under Control
KYSUC - Keep Your Schema Under ControlKYSUC - Keep Your Schema Under Control
KYSUC - Keep Your Schema Under ControlCoimbra JUG
 

Viewers also liked (11)

Javascript & Angular .js for the enterprise, lessons learned, typescript scal...
Javascript & Angular .js for the enterprise, lessons learned, typescript scal...Javascript & Angular .js for the enterprise, lessons learned, typescript scal...
Javascript & Angular .js for the enterprise, lessons learned, typescript scal...
 
Reasons to migrate to modern web development with JavaScript
Reasons to migrate to modern web development with JavaScriptReasons to migrate to modern web development with JavaScript
Reasons to migrate to modern web development with JavaScript
 
Gwt widget frameworks_presentation
Gwt widget frameworks_presentationGwt widget frameworks_presentation
Gwt widget frameworks_presentation
 
Geecon 2014 - Five Ways to Not Suck at Being a Java Freelancer
Geecon 2014 - Five Ways to Not Suck at Being a Java FreelancerGeecon 2014 - Five Ways to Not Suck at Being a Java Freelancer
Geecon 2014 - Five Ways to Not Suck at Being a Java Freelancer
 
Multi modularized project setup with gulp, typescript and angular.js
Multi modularized project setup with gulp, typescript and angular.jsMulti modularized project setup with gulp, typescript and angular.js
Multi modularized project setup with gulp, typescript and angular.js
 
Angularjs practical project experiences with javascript development in a bank
Angularjs practical project experiences with javascript development in a bankAngularjs practical project experiences with javascript development in a bank
Angularjs practical project experiences with javascript development in a bank
 
Maven - Taming the Beast
Maven - Taming the BeastMaven - Taming the Beast
Maven - Taming the Beast
 
Migration tales from java ee 5 to 7
Migration tales from java ee 5 to 7Migration tales from java ee 5 to 7
Migration tales from java ee 5 to 7
 
Angular 2 : learn TypeScript already with Angular 1
Angular 2 : learn TypeScript already with Angular 1Angular 2 : learn TypeScript already with Angular 1
Angular 2 : learn TypeScript already with Angular 1
 
KYSUC - Keep Your Schema Under Control
KYSUC - Keep Your Schema Under ControlKYSUC - Keep Your Schema Under Control
KYSUC - Keep Your Schema Under Control
 
Just enough app server
Just enough app serverJust enough app server
Just enough app server
 

Similar to Gwt presentation

How_to_choose_the_right_framework
How_to_choose_the_right_frameworkHow_to_choose_the_right_framework
How_to_choose_the_right_frameworkJT Jintae Jung
 
웹-프론트엔드 프레임워크를 고르기 위한 팁
웹-프론트엔드 프레임워크를 고르기 위한 팁웹-프론트엔드 프레임워크를 고르기 위한 팁
웹-프론트엔드 프레임워크를 고르기 위한 팁WebFrameworks
 
2022 백엔드 멘토링 자료
2022 백엔드 멘토링 자료2022 백엔드 멘토링 자료
2022 백엔드 멘토링 자료ssuserf875e6
 
GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: GRUTER의 빅데이터 플랫폼 및 전략 소개
GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: GRUTER의 빅데이터 플랫폼 및 전략 소개GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: GRUTER의 빅데이터 플랫폼 및 전략 소개
GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: GRUTER의 빅데이터 플랫폼 및 전략 소개Gruter
 
2020년 9월 12일 개발 이야기 정리
2020년 9월 12일 개발 이야기 정리2020년 9월 12일 개발 이야기 정리
2020년 9월 12일 개발 이야기 정리Jay Park
 
Continuous Integration & Collaboration
Continuous Integration & CollaborationContinuous Integration & Collaboration
Continuous Integration & CollaborationKi Bae Kim
 
Frends meetup 2013.07
Frends meetup 2013.07Frends meetup 2013.07
Frends meetup 2013.07Nanha Park
 
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?Sang-ho Choi
 
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?주식회사 내일비
 
How to implement your dream 20150427
How to implement your dream 20150427How to implement your dream 20150427
How to implement your dream 20150427Will Kim
 
HTML5 관점에서 2015년 웹 앱 개발 동향과 사례 및 2016년 발전 방향 저...
HTML5 관점에서 2015년 웹 앱 개발 동향과 사례 및 2016년 발전 방향 저...HTML5 관점에서 2015년 웹 앱 개발 동향과 사례 및 2016년 발전 방향 저...
HTML5 관점에서 2015년 웹 앱 개발 동향과 사례 및 2016년 발전 방향 저...Sang Seok Lim
 
Gae와cloud sql을이용한 전자결재 개발
Gae와cloud sql을이용한 전자결재 개발Gae와cloud sql을이용한 전자결재 개발
Gae와cloud sql을이용한 전자결재 개발지헌 선
 
my activities before getting a job
my activities before getting a jobmy activities before getting a job
my activities before getting a jobDeo Kim
 
Web analytics 2.0 study ch.9
Web analytics 2.0 study ch.9Web analytics 2.0 study ch.9
Web analytics 2.0 study ch.9Eunyoung Kim
 
SoundHub 프로젝트 발표 자료
SoundHub 프로젝트 발표 자료SoundHub 프로젝트 발표 자료
SoundHub 프로젝트 발표 자료HeeJuMun
 
좌충우돌 Data Engineering 학습기
좌충우돌 Data Engineering 학습기좌충우돌 Data Engineering 학습기
좌충우돌 Data Engineering 학습기DONGMIN LEE
 
기술적 변화를 이끌어가기
기술적 변화를 이끌어가기기술적 변화를 이끌어가기
기술적 변화를 이끌어가기Jaewoo Ahn
 
사용자분석 @코더스하이세미나
사용자분석 @코더스하이세미나사용자분석 @코더스하이세미나
사용자분석 @코더스하이세미나Mikyung Kang
 

Similar to Gwt presentation (20)

How_to_choose_the_right_framework
How_to_choose_the_right_frameworkHow_to_choose_the_right_framework
How_to_choose_the_right_framework
 
웹-프론트엔드 프레임워크를 고르기 위한 팁
웹-프론트엔드 프레임워크를 고르기 위한 팁웹-프론트엔드 프레임워크를 고르기 위한 팁
웹-프론트엔드 프레임워크를 고르기 위한 팁
 
2022 백엔드 멘토링 자료
2022 백엔드 멘토링 자료2022 백엔드 멘토링 자료
2022 백엔드 멘토링 자료
 
GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: GRUTER의 빅데이터 플랫폼 및 전략 소개
GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: GRUTER의 빅데이터 플랫폼 및 전략 소개GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: GRUTER의 빅데이터 플랫폼 및 전략 소개
GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: GRUTER의 빅데이터 플랫폼 및 전략 소개
 
2020년 9월 12일 개발 이야기 정리
2020년 9월 12일 개발 이야기 정리2020년 9월 12일 개발 이야기 정리
2020년 9월 12일 개발 이야기 정리
 
Continuous Integration & Collaboration
Continuous Integration & CollaborationContinuous Integration & Collaboration
Continuous Integration & Collaboration
 
제 1회
제 1회제 1회
제 1회
 
Frends meetup 2013.07
Frends meetup 2013.07Frends meetup 2013.07
Frends meetup 2013.07
 
발표자료
발표자료 발표자료
발표자료
 
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
 
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
 
How to implement your dream 20150427
How to implement your dream 20150427How to implement your dream 20150427
How to implement your dream 20150427
 
HTML5 관점에서 2015년 웹 앱 개발 동향과 사례 및 2016년 발전 방향 저...
HTML5 관점에서 2015년 웹 앱 개발 동향과 사례 및 2016년 발전 방향 저...HTML5 관점에서 2015년 웹 앱 개발 동향과 사례 및 2016년 발전 방향 저...
HTML5 관점에서 2015년 웹 앱 개발 동향과 사례 및 2016년 발전 방향 저...
 
Gae와cloud sql을이용한 전자결재 개발
Gae와cloud sql을이용한 전자결재 개발Gae와cloud sql을이용한 전자결재 개발
Gae와cloud sql을이용한 전자결재 개발
 
my activities before getting a job
my activities before getting a jobmy activities before getting a job
my activities before getting a job
 
Web analytics 2.0 study ch.9
Web analytics 2.0 study ch.9Web analytics 2.0 study ch.9
Web analytics 2.0 study ch.9
 
SoundHub 프로젝트 발표 자료
SoundHub 프로젝트 발표 자료SoundHub 프로젝트 발표 자료
SoundHub 프로젝트 발표 자료
 
좌충우돌 Data Engineering 학습기
좌충우돌 Data Engineering 학습기좌충우돌 Data Engineering 학습기
좌충우돌 Data Engineering 학습기
 
기술적 변화를 이끌어가기
기술적 변화를 이끌어가기기술적 변화를 이끌어가기
기술적 변화를 이끌어가기
 
사용자분석 @코더스하이세미나
사용자분석 @코더스하이세미나사용자분석 @코더스하이세미나
사용자분석 @코더스하이세미나
 

Gwt presentation