[Info]Tags categorized posts and contents patterns..

[AJAX] Ajax Code E xamples.. [Book] About the book.. [CSS] CSS Code E xamples.. [DB] Sql Code E xamples.. [DEV] All development stor...

2016년 3월 9일 수요일

[Book] Comet과 리버스 Ajax..

출처 : Outsider's Dev Story https://blog.outsider.ne.kr/

Comet과 리버스 Ajax - 8점
데이브 크레인 외 지음, 정지웅 옮김/인사이트

Ajax의 새로운 추세라고도 할 수 있는 Server Push 기술인 Comet에 대한 책입니다. Ajax Push, Reverse Ajax(이 용어는 여기서 첨 들어봤네요.)등등의 용어도 있지만 거의 Comet으로 통일되어 가는 듯한 느낌입니다.  Comet에 대한 용어는 재작년 가을에 SUN Tech Days 2008 Seoul에서 처음 들었었습니다. 그때는 "웹에서 Push가 된다"라는 사실에 꽤나 충격을 받았던 기억이 있었는데 드디어 국내에서 번역서가 출시가 되었습니다. 현재로썬 유일한 Comet 관련 서적인듯 합니다.

새로운 기술이라 내용의 범위는 많을것으로 생각되지만 사실 이책의 분량은 그리 많지 않습니다. 일반적인 기술서적보다는 약간 작은 사이즈에 페이지도 180페이지가 되지 않기 때문에 처음 봤을때는 이걸로 Comet을 다 설명할 수 있나? 라는 의문이 들 정도였습니다. 내용이 부실하다는 것은 아니지만 Comet에 대한 입문서 정도를 생각하시면 될 것 같습니다. 세세한 기술을 하나하나 다 다루고 설명한다기 보다는 Comet에 대한 전체적인 개념과 흐름을 설명해 준다고 보면 될것 같습니다.

Comet에 대한 다른 서적이 없기 때문에 책에 대한 선택권 자체가 없기는 하지만 Comet에 대한 리소스가 많이 부족한 가운데 Comet과 관련된 대부분의 이슈나 관련 기술들은 대부분 설명하고 있습니다. 일반적으로 Push흉내 내는 Ajax를 통한 폴링에서부터 약간 업그레이드된 피드백 방식으로 간단한 개념을 설명한 뒤에 Comet에 대한 개념을 설명해 주고. Comet을 구현할 수 있는 DWR, 그리고 Comet을 지원하는 Jetty를 통한 서버쪽의 구현방식들, 표준이라고 할 수 있는  Bayeux 프로토콜을 설명하여 대부분의 기술들을 소개해 주고 있으며, 대부분의 설명에 소스코드와 함께 제공하고 있기 때문에 Comet에 대한 핵심부분만 잘 짚어서 소개해주는 느낌입니다.

소스코드는 Grails와 prototye.js를 이용해서 하고 있습.니다 상당히 간단한 소스를 위주로 설명해 주고 있기 때문에 큰 어려움은 없어 보이지만 전혀 모른다면 종종 헷갈릴 수도 있겠습니다. Comet은 아직 기술적으로 초기단계이기 때문에 현재 가지고 있는 이슈사항들에 대해서도 잘 알려주고 있습니다. 개인적으로는 궁금하면서도 사실 Comet을 사용해야 할 일은 그리 많지 않았기 때문에 궁금함을 꽤 가지고 있었는데 이 책을 통해 어느정도는 전체적인 흐름을 잡을 수 있었습니다. 마지막으로 간단한 CRUD 종합 예제까지 제공하고 있어서 분량대비로 생각하면 정말 알차다는 생각이 들 정도네요. ㅎㅎ

Comet은 아직 초기단계이고 여러가지 이슈들을 가지고 있지만 Ajax가 처음 나왔을때 지금처럼 다양하게 활용하게 될 줄을 몰랐던 것 처럼 Comet도 점차 이슈들이 해결되고 중심기술로써 자리잡을 것이라고 생각하기에 Comet에 대한 준비도 필요하다고 생각하고 있습니다. HTML5에서 Web Socket이 도입됨으로써 차후 Push의 핵심기술로 자리잡을 듯하긴 하지만 각기 특성을 살려 발전하지 않을까 싶기도 합니다. 새로운 기술이라는 중압감(?)에 비해서는 비교적 쉽게 읽을 수 있는 책이었습니다.



[Book] 오픈 API를 활용한 매쉬업 가이드..

출처 : Outsider's Dev Story https://blog.outsider.ne.kr/

오픈 API를 활용한 매쉬업 가이드 - 8점
오창훈 지음/에이콘출판

OpenAPI라는 것이 출현한 이후로 많은 관심을 끌고 있는 Mashup에 대한 책입니다. 오픈API라는 것 자체가 각 서비스업체들에서 사용방법과 함께 제공하고 있기 때문에 특정한 기술이라고 할 수는 없습니다. 하지만 각 벤더마다 제공하는 방식이 많이 다르기 때문에 API찾아보고 서비스특성까지 파악하려면 처음에 접근할때 약간의 어려움이 있는 것은 사실입니다.(기술적 어려움이라기보다 익숙치 않음이 더 크다고 할 수 있습니다.)

책은 그다지 어렵지 않습니다. 책을 좀 오래보는 편인데 이책은 금새 보았네요. OpenAPI라는 것 자체가 Javascript를 어느정도 다룬다면 어렵지 않게 접근할 수 있는 부분이기 때문이기도 하고 책이 상당히 친절하기 때문에 설명을 세세하게 잘 해주고 있습니다. OpenAPI는 여러가지 언어로 사용할 수 있는데 여기서는 가장 범용적이라고 할만한 Javascript를 이용해서 모든 예제를 보여주고 있는데 누구나 소스를 이해할 수 있다는 점에서 괜찮은 선택인듯 합니다. 국내에서 매쉬업을 생각한다면 쉽게 생각해 볼만한 네이버나 다음부터 해서 구글, 플리커, 미투데이까지 찬찬히 설명해 주기 때문에 오픈API를 다루는데 막막하다면 꽤 도움이 될 듯 합니다.

위에 말했듯이 난이도가 높지는 않기 때문에 어느정도 OpenAPI를 사용할 줄 아는 사람이라면 크게 흥미로운 내용은 없을수도 있습니다. 책의 타겟 자체는 초심자용으로 맞춰진것 같습니다. 해외 서비스들은 API설명도 다 영어로 되어 있기 때문에 접근하기 약간 어려움이 있을수 있는데 호출방식이나 파라미터들에대해서 설명이 잘 되어 있기 때문에 그런부분에 대한 참고가 필요하다면 도움이 될듯 싶기도 합니다.

구성은 나쁘지 않습니다. 대부분의 설명에 대한 풀소스 예제를 보여주고 있습니다. 내부에서는 오창훈님이 만드신 AJIT라는 JS라이브러리를 사용하고 있는데 처음에는 범용적이지 않은 라이브러리라서 엥?했었지만 막상 예제를 보면 그다지 어렵지 않게 이해할 수 있는데다가 오픈API를 설명하기 위해서 Ajax에 대한 설명이나 파라미터핸들링, JSON 파싱같은 잡다한 것들에 대한 얘기가 없을수도 없는데 이러한 부부넹 지면을 빼앗기지 않고 해당부분은 AJIT에 대한 것으로 처리해버림으로써 오픈API에 대한 내용에 더 충실할 수 있었던 듯 합니다.(관심있는 사람은 AJIT열어보면 되고요.)

인증은 메쉬업에서 가장 복잡한 부분중 하나이기 때문에 이부분에 대한 설명도 자세히 나와있는 부분은 괜찮은듯 합니다. OAuth에 대한 부분은 기대보다는 좀 적은듯 해서 아쉬웠었는데 플리커나 미투데이(미투데이 인증쪽은 한번도 본적없지만)의 인증부분을 보면 꽤 헷갈릴만한 요소가 많은데(특히 플리커는 영어라 ㅡ..ㅡ) 그런 부분에 대한 설명은 잘 되어 있는듯 합니다. 오창훈님인 ACC이기 때문에 웹어플리케이션뿐만 아니라 AIR 어플리케이션에 대한 부분도 어느정도 지면을 할애해서 설명하고 있지만 Flash가 아닌 HTML+JS로만 설명하고 있기 때문에 AIR를 몰라도 별로 어렵지 않았습니다.

저도 보긴했지만 인증부분 외에 API사용에 대한 것은 책보다는 실제 서비스프로바이더가 제공하는 문서를 보는 것이 장기적으로 더 낫다고 생각합니다만 설명이 친절하기 때문에 오픈API에 대한 부분이나 Mashup에 대해서 좀 막막하게 느끼는 사람이라면 한번 보면 꽤 도움이 될 듯 합니다.