<4D F736F F F696E74202D20C0B1BCAEC2F92DC4DAB8AEBEC6C0CEC5CDB3DDB4E5C4C42D616A61782E707074>

Similar documents
HTML5가 웹 환경에 미치는 영향 고 있어 웹 플랫폼 환경과는 차이가 있다. HTML5는 기존 HTML 기반 웹 브라우저와의 호환성을 유지하면서도, 구조적인 마크업(mark-up) 및 편리한 웹 폼(web form) 기능을 제공하고, 리치웹 애플리케이 션(RIA)을

슬라이드 1

슬라이드 1

Microsoft Word - 김완석.doc

Microsoft PowerPoint - F3-1-이원석

!K_InDesginCS_NFH

<B1DDC0B6C1A4BAB8C8ADC1D6BFE4B5BFC7E C8A3292E687770>

HTML5* Web Development to the next level HTML5 ~= HTML + CSS + JS API

Microsoft PowerPoint - KNOM2008제출_연승호_v1.0

Week8-Extra

Eclipse 와 Firefox 를이용한 Javascript 개발 발표자 : 문경대 11 년 10 월 26 일수요일

<C1A4BAB8BBEABEF720B9CEB0A3B9E9BCAD2DC3D6C1BE2E687770>

Windows Live Hotmail Custom Domains Korea

[Brochure] KOR_TunA

슬라이드 1

2009방송통신산업동향.hwp


Ⅰ. 서론 1989년 CERN의 팀 버너스 리에 의해 만들어진 월드 와이드 웹 기술은 HTML(HyperText Markup Language), URL(Unified Resource Locator, HTTP(Hyper- Text Transfer Protocol)이라는

untitled

Google Maps Platform

3장

공지사항

쉽게 풀어쓴 C 프로그래밍

2007

Week13

160322_ADOP 상품 소개서_1.0

52 l /08

제이쿼리 (JQuery) 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호

PowerPoint 프레젠테이션

Microsoft Word - IT기획시리즈.doc

Social Network

Building Mobile AR Web Applications in HTML5 - Google IO 2012

Intro to Servlet, EJB, JSP, WS

con_using-admin

Analyst Briefing

무제-1

00-CourseSyllabus

<%DOC NAME%> User Manual

XSS Attack - Real-World XSS Attacks, Chaining XSS and Other Attacks, Payloads for XSS Attacks

Scene7 Media Portal 사용

C H A P T E R 2

01장 웹 개요와 실습 환경 구축

untitled

(Microsoft PowerPoint \277\243\305\315\307\301\266\363\300\314\301\356 \260\374\301\241\300\307 HTML5)

Open Cloud Engine Open Source Big Data Platform Flamingo Project Open Cloud Engine Flamingo Project Leader 김병곤

Domino Designer Portal Development tools Rational Application Developer WebSphere Portlet Factory Workplace Designer Workplace Forms Designer

..,. Job Flow,. PC,.., (Drag & Drop),.,. PC,, Windows PC Mac,.,.,. NAS(Network Attached Storage),,,., Amazon Web Services*.,, (redundancy), SSL.,. * A

untitled

<4D F736F F D205B4354BDC9C3FEB8AEC6F7C6AE5D3131C8A35FC5ACB6F3BFECB5E520C4C4C7BBC6C320B1E2BCFA20B5BFC7E2>

Microsoft PowerPoint - HTML5-교육컨설팅.ppt

TTA Journal No.157_서체변경.indd

Egretia_White_Paper_KR_V1.1.pages

서현수

HTML5 와리포팅툴구현사례

일반인을 위한 전자책 제작 방법

대표이사등의 확인ㆍ서명 확 인 서 우리는 당사의 대표이사 및 신고업무담당이사로서 이 사업보고서의 기재내용에 대해 상당한 주의를 다하여 직접 확인ㆍ검토한 결과, 중요한 기재사항의 기재 또는 표시의 누락이나 허위의 기재 또는 표시가 없고, 이 사 업보고서에 표시된 기재 또

목 차 Ⅰ. 일반사항 1 Ⅱ. 특기사항 3 Ⅲ. 물품내역 및 세부규격 8 Ⅳ. 주의사항

Microsoft Word - ICT Report

Microsoft PowerPoint - web-part03-ch19-node.js기본.pptx

Microsoft Word - 문필주_수정_.doc

(주)나우프로필의 이동형 대표 개편의 방향이 시민참여를 많이 하는 방향이라, 홈페이지 시안 이 매우 간편해져서 소통이 쉬워질 것 같다. 다만 웹보다 모바일 이용자가 지속적으로 급증하는 추세이므로 이에 적합한 구조가 되도록 보장해야 한다. 소셜미디어전략연구소 배운철 대표

초보자를 위한 ASP.NET 2.0

Web 2.0 and OpenAPI

FMX M JPG 15MB 320x240 30fps, 160Kbps 11MB View operation,, seek seek Random Access Average Read Sequential Read 12 FMX () 2

목순 차서 v KM의 현황 v Web2.0 의 개념 v Web2.0의 도입 사례 v Web2.0의 KM 적용방안 v 고려사항 1/29

Microsoft PowerPoint PMS-r2.pptx

Microsoft PowerPoint - web-part03-ch20-XMLHttpRequest기본.pptx

슬라이드 1

Voice Portal using Oracle 9i AS Wireless

AGENDA 모바일 산업의 환경변화 모바일 클라우드 서비스의 등장 모바일 클라우드 서비스 융합사례

Microsoft PowerPoint - 11주차_Android_GoogleMap.ppt [호환 모드]

Microsoft PowerPoint - 2.Building RIA with SEAM_1_이동호.ppt [호환 모드]

Portal_9iAS.ppt [읽기 전용]

인문사회과학기술융합학회

접근성과 웹 The power of the Web is in its universality. Access by everyone regardless of disability is an essential aspect. Tim Berners-Lee, the inventor

Lab1

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEBCD2C7C1C6AEBFFEBEEEB9DFC7A5C0DAB7E12E BC8A3C8AF20B8F0B5E55D>

품질검증분야 Stack 통합 Test 결과보고서 [ The Bug Genie ]

[White Paper]다시보는 시맨틱 웹 그리고 시맨틱 기술 하는 Tabulator와 Sindice에 기반한 데이터 매쉬업 및 브라우징 서비스인 sig.ma는 꼭 한번 경험해 봐야 할 대상이 다. 또한, SemaPlorer나 DBpedia Mobile 경우는 LOD

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

놀이동산미아찾기시스템

Microsoft PowerPoint - mwac10-hollobit-r5

SchoolNet튜토리얼.PDF

PowerPoint Presentation

슬라이드 1

쉽게 풀어쓴 C 프로그래밍

Slide 1

PowerPoint Presentation

SIGIL 완벽입문

<4D F736F F F696E74202D20332DC1F6B9DDC1A4BAB8BDC3BDBAC5DB>

슬라이드 1

Introduction- 소개 Previous- 이전, Next Chapter- 다음장 JavaScript is the most popular scripting language in the world. It is the standard language used in w

User Guide

< FC8A8C6E4C0CCC1F620B0B3B9DF20BAB8BEC8B0A1C0CCB5E5C3D6C1BE28C0FAC0DBB1C7BBE8C1A6292E687770>

PowerPoint 프레젠테이션

월간 CONTENTS 3 EXPERT COLUMN 영화 점퍼 와 트로이목마 4 SPECIAL REPORT 패치 관리의 한계와 AhnLab Patch Management 핵심은 패치 관리, 왜? 8 HOT ISSUE 2016년에 챙겨봐야 할 개인정보보호

메일서버등록제(SPF) 인증기능적용안내서 (Exchange Windows 2003) OS Mail Server SPF 적용모듈 작성기준 Windows Server 2003 Exchange Server 2003 GFI MailEssentials 2010 fo

Microsoft PowerPoint - Chapter_03-1_DevEnv.pptx

i4uNETWORKS_CompanyBrief_ key

CONTENTS 01 Adobe Photoshop Lightroom을 소개합니다 촬영부터 출력까지 간편한 사진 작업 (Simplify photography from shoot to finish) Adobe Photoshop Lightroom 작업공간(Workspace)

Transcription:

AJAX (Asynchronous Javascript+XML) 기술소개및향후전망 윤석찬 channy@daumcorp.com 다음커뮤니케이션 R&D 센터 본자료의디자인요소중많은부분은 http://we04.com 에서발표한 Doug Bowman 의프리젠테이션을인용하였습니다.

Agenda What s Ajax? Ajax 의정의및소개 기존웹서비스나 Remote Scripting 과의차이점 Ajax 기반개발사례 Ajax 적용과정 Google 의 Ajax 적용사례 (Gmail, Google Maps, Google Suggests) Daum 의 Ajax 적용사례 ( 한메일주소록 / 검색 / 플래닛 ) Ajax 어플리케이션사례 Accessory Rich Application Personalization Platform 대안기술 : Rich Internet Application Macromedia Flex Microsoft XAML Mozilla XUL Yahoo! Widget / Mac Dashboard 2

What s AJAX? Ajax 란? XMLHttpRequest와자바스크립트를이용한비동기데이터교환 XML 및XSLT를통한데이터교환및이용 DOM을함께사용하여다이나믹표현제공 XHTML 및 CSS를이용한표준기반표현기법 AJAX is not technology but approach (platform) like LAMP Jesse James Garrett, Ajax: A New Approach to Web Applications, Feb 18, 2005 (http://www.adaptivepath.com/publications/essays/archives/000385.php) I needed something shorter than Asynchronous JavaScript+CSS+DOM+XMLHttpRequest to use when discussing this approach with clients. - Jesse James Garrett 3

Web vs Ajax : Structure 브라우저클라이언트 사용자 UI 클라이언트 브라우저클라이언트 사용자클라이언트 자바스크립트호출 HTML CSS 데이터 Ajax 엔진 HTML 호출 HTML 호출 웹서버 웹서버 / XML 서버 데이터, UCC, 백오피스레거시시스템 웹기반서버시스템 < 전통적인웹처리방식 > 데이터, UCC, 백오피스레거시시스템 웹기반서버시스템 <Ajax 처리방식 > 4

데이터트랜잭션 데이터트랜잭션 데이터트랜잭션 데이터트랜잭션 Web vs Ajax: Processing < 전통적인웹처리방식 > 클라이언트 사용자액션 사용자액션 시간 데이터트랜잭션 데이터트랜잭션 <Ajax 처리방식 > 서 버 서버처리 서버처리 클라이언트 브라우저 UI 사용자액션사용자액션사용자액션 Ajax 엔진 시간 서 버 서버처리서버처리서버처리서버처리 5

Adopting Ajax XMLHttpRequest 98년 MS IE5.0 ActiveX 객체로구현 Mozilla 1.0 지원시작 Safari 1.2에서지원시작 Opera 8에서지원시작 W3C DOM Level3 지원예정 XMLHttp 적용사례 MS IE XMLHttp 웹기반메일서비스, oddpost 채팅서비스, Sayclub XP 환경의 XMLHttp Gmail, Flickr < 해외 Ajax 의원조는 Oddpost> < 국내 Ajax 의원조는세이클럽 (?)> 6

Ajax summit (May 9, 2005) Ajax vs. Remote Scripting Brent Ashley, Remote Scripting Examples Luke Wroblewski, ebay Derek Powazek, Technorati Eric Costello, Flickr Iain Lamb, Yahoo Bill Scott, Sabre Airline Solutions Platforms Douglas Crockford, JSON Kevin Lynch, Macromedia David Heinemeier Hansson, Ruby on Rails Sam Stephenson, Prototype Alex Russell, Dojo Toolkit Ajax 기술은블로그를통해기술오피니언리더들을통해전파되는경향이있다. 7

e.x. Google, it s start Gmail (http://gmail.com) 2004년 4월에 1GB 저장공간메일서비스개시 JavaScript를통해 UI를전송한후, 데이터부분을 XMLHTTP로부터전송받음으로써빠른속도와어플리케이션같은웹 UI의획기적인발상의전환을이룸. 2005년 2월 HTML 버전을제공함으로서비Ajax 브라우저및비 Ajax사용자 ( 장애인 ) 지원 8

Google Maps XMLHttp 와 DOM Handling 으로만구현된완벽한멀티플랫폼서비스 Drag&Drop 으로좌표이동및좌표값과배율을기초로이미지를 ajax 로받아옴. 위성및하이브리드제공 API 를통한변종서비스가계속나오고있음 MSN Virtual Earth, A9 Maps 등경쟁서비스봇물 Google Suggest 검색어에대한추천단어제공서비스로 Ajax 를이용한대표적인사례임 9

한메일 Ajax 예제 한메일주소록 주소록데이터를클라이언트와초기싱크를한후데이터변경이생길때마다 XMLHttp 를이용해서버에전달하고 DOM 데이터추가. 주소정렬, 가나다순, 검색, 주소 / 그룹간편편집, 추가, 삭제를모두 DOM Handling 과 Ajax 를이용하여서비스한메일검색 검색결과가많은경우, 최초검색결과만보여주고이후검색결과는순차적으로전달하도록설계 주소를두번클릭하면바로수정이가능하다. 또한, 이름 / 이메일순으로정렬가능하며 Outlook 클라이언트처럼동작한다. 10

플래닛 Ajax 소개 자신의친구갤러리를자유자재로이동할수있으며놓았을때이동된값을 ajax 를통해 db 에저장한다. Flickr 와같이포토메모를붙이거나수정할수있다. 데이터는 xmlhttp 를통해 db 에바로전달되며, 메모는 Reload 된경우좌표정보로레이어로표시된다. 덧글을달면 ajax 로 db 에저장되고페이지이동없이바로표시된다 11

Examples: Accessory Anyterm.org Amazon Diamond Search 다음검색에서 Amazon Diamond Search 를입력하세요! 12

Examples: Rich Application 일정관리 Kiko, http://www.kiko.com TimeTracker, http://www.formassembly.com/timetracker/ 문서편집기 Writely, http://www.writely.com HTMLEdit, http://www.squarefree.com/htmledit 메신저 Ajax IM, http://www.unwieldy.net/ajaxim 13

Examples: Personalization Google http://www.google.com/ig 채널 Drag & Drop 기능 RSS 채널, 뉴스, 날씨, 메일, 검색결과등을한눈에볼수있음 MSN Start.com http://www.start.com MSN Sandbox 서비스로베타서비스중. 현재 Version3 까지나와있으며 Google 개인화홈과비슷한서비스를제공하고있음. Protopage http://www.protopage.com Blinklist http://www.blinklist.com 14

Examples: Platform Ruby on Rails (http://www.rubyonrails.org) Bindows (http://www.bindows.net) Backbase (http://www.backbase.com) Dojo (http://dojotoolkit.org) Sajax (http://www.modernmethod.com/sajax/) DWR (http://getahead.ltd.uk/dwr/) 15

Ajax 에대한문제점 기술적문제 Browser 호환성 브라우저별로상이한 DOM 핸들링및메모리처리방법 어려운자바스크립트개발및디버깅환경 다양한 RIA 기술에대한선택 사용자문제 접근성 ( 장애인및비 Javascript 브라우저등 ) 사용성 (Back/Forward, Bookmark 등 ) 기획의문제 Ajax를이해한기획안이나오기힘들다 사용자에게친밀한 Application UI를벤치마킹필요 16

Ajax 주변움직임 ActiveX 대체기술 Java, NSplugin : 예전기술이거나 XP 환경에적합하지않음 AJAX: xmlhttp 과 Javascript 를통한인터랙티브 UI 기술 브라우저확장기능 Mozilla/Firefox : XUL/Javascript/CSS 를통한확장가능 Mac OS X 의 Tiger 속의 Dash Board 와같은기능제공 Microsoft: XAML(Longhorn) 을기반으로하는닷넷어플리케이션 표준움직임 WHATWG: Mozilla 와 Opera 에서표준안제정중 WebApplication, WebForm, WebControl SVG, VoiceXML, Xform, Web Services 는새로운웹세계를열것이다 2 차브라우저전쟁은표준전쟁이다!!! 17

Alternatives : Rich Internet Application XUL XAML SVG Flash ActiveX Flex Ajax 범용적사용가능성 데스크탑기반 UI 풍부도 개발환경용이성 플랫폼에대한기술독립성 벤더에대한기술독립성 기술자 Pool 및이전용이성 18

RIA: Macromedia Flex (1) - XML(MXML)+ ECMAScript (ActionScript) + Class Library= SWF <?xml version="1.0"?> <mx:application xmlns:mx="http://www.macromedia.com/2003/mxml" > <!-- data model --> <mx:array id="coffeearray"> <mx:object> <label>red Sea</label> <data>smooth and fragrant</data> </mx:object> <mx:object> <label>andes</label> <data>rich and pungent</data> </mx:object> <mx:object> <label>blue Mountain</label> <data>delicate and refined</data> </mx:object> </mx:array> <mx:script> <![CDATA[ function addtocart():void { cart.additem(coffeecombo.selecteditem.label,coffeecombo.selecteditem.data); } ]]> </mx:script> <!-- view --> <mx:panel title="my First Flex App"> <mx:label text="coffee Blends"/> <mx:combobox id="coffeecombo" dataprovider="{coffeearray}"/> <mx:text text="description: {coffeecombo.selecteditem.data}"/> <mx:button label="add to Cart" click="addtocart()"/> <mx:list id="cart"/> </mx:panel> </mx:application> 19

RIA: Macromedia Flex (1) 20

RIA: XAML on Windows Vista (1) <Canvas xmlns="http://schemas.microsoft.com/2003/xaml" Background="LightCyan" Width="100%" Height="100%"> <Image Source="lh.bmp" Canvas.Left="5" Canvas.Top="5" /> <Text Canvas.Left="90" Canvas.Top="20" FontSize="36">Hello, Longhorn! </Text> </Canvas> <FlowPanel> <Button Background= Green Click= EventY >Yes</Button> <Button Background= Red Click= EventN >No</Button> </FlowPanel> - Windows Vista 아발론엔진사용 - XAML 과간단한 C# 코드로 RIA 개발가능 XAML.net Code void EventY( ) { MessageBox.Show( Agree"); } void EventN( ) { MessageBox.Show( Disagree"); } C# Code 21

RIA: XAML on Windows Vista (2) Windows Vista Screenshot 22

RIA: AFLAX (Asynchronous Flash + XAML) - XAML 과 Flash 클라이언트의결합 -Windows/Mac/Linux/PDA 에모두적용가능 http://www.xamlon.com/ 23

RIA: XUL Application for Firefox(1) - XUL + CSS + JavaScript (XPCOM) - 수백개의 Firefox Extensions 개발중 24

RIA: XUL Application for Firefox(2) Mozilla Amazon Browser: http://www.faser.net/mab/ 25

RIA: (aka.konfabulator) - Graphic + JavaScript (Mozilla) Engine - Widget: Javascript + HTML + CSS - Windows/Mac 버전제공중 - 2005 년 6 월 Yahoo! 에인수 http://widget.yahoo.com/ 26

RIA - Graphic + JavaScript (Mozilla) Engine - Widget: Javascript + HTML + CSS - Windows/Mac 버전제공중 - 2005 년 6 월 Yahoo! 에인수 http://www.apple.com/downloads/dashboard/ 27

Ajax 전망 Weblication 의대세기술로자리매김 웹을더욱다이나믹하게만든다. 풍부한 UI를선보일수있다. XHTML+CSS 레이아웃웹표준화와함께트렌디기술로자리잡을것이며, 고급 UI개발자및웹개발자의기본소양이될것이다. 좀더다양한 RIA 기술습득이요구된다. Ajax 는 Web2.0 을위한 RIA 기술의시작점이다. = Web as Platform Blog/RSS와같은개인화 / 시맨틱서비스 Google/Yahoo의네트웍확장을위한 API 경쟁 28

Bookmarks Ajax 정보사이트 Ajaxian, http://www.ajaxian.com AjaxMatter, http://ajaxmatters.com Ajax on Rails, http://www.onlamp.com/pub/a/onlamp/2005/06/09/rails_ajax.html Ajax 소개자료, http://www.likejazz.com/29692.html Ajax Tag Technorati Ajax Tag, http://technorati.com/tag/ajax Del.icio.us Ajax Tag, http://del.icio.us/tag/ajax O reilly Radar Ajax Tag, http://radar.oreilly.com/tag/ajax 29