부분부분 이해는하지만....
갑자기 jqtouch가 나오고 갑자기 ajax가 나오고...
어떠한 설명도없이 뜬금없으니 초보에게는 비추천할만한 책입니다.
물론 그 문법이 높은 수준은 아니나,
기초공부정도는 해두어야할 듯합니다.
그런 선행과정이 된 후에는 이만한 책도 없다고 느껴지네요.
< 웹 표준으로 만드는 안드로이드 웹앱 : with HTML, CSS, 자바스크립트, 제이쿼리, 제이큐터치, 폰갭(개정판) >
이 책의 제목을 보면 굉장히 많은 것을 다루고 있으며 엄청 두꺼울 것 같은 느낌이 든다. 하지만 굉장히 앏은 책으로 놀라움을 선사한다.
깊이있게 다루고 있지는 않지만 웹앱을 만들기 위해 필요한 부분을 중심으로 소개하고 있다.
책을 읽으면 옆에서 이야기해주는 느낌이 든다. 첫장부터 순서대로 읽어 내려가기 편하다.
그리고 저자는 Note를 통해 상세부연설명을 덧붙여 주고 있으며, 프로그램 설치나 사용시 발생할 수 있는 문제들의 해결법도 가이드해주고 있다.
프로그래밍 책을 볼 때마다 그 두께에 마음이 먼저 무거워지던 나에게 이 책은 짧은 시간에 한권을 다 읽고 필요한 지식을 습득하는 기쁨을 줬다.
★★ 이런 분께 추천 ★★
어느 정도 웹프로그램에 기초지식이 있는 분이라면 충분히 따라 할 수 있다고 생각됩니다. 프로그래밍에 능숙한 전문가가 아니라도 충분히 이해할 수 있는 책이라고 생각됩니다.
대학교 1학년 정도 마치신 분이라면 충분히 따라할 수 있지 않을까 합니다.
안드로이드 프로그래밍을 시작하는 분들께 추천합니다.
★★ 장 점 ★★
1. 책의 분량이 많지 않고, 웹앱의 제작과 배포를 실습해 볼 수 있는 전반적인 내용이 담겨 있어 좋습니다.
2. Note를 통해 부연설명과 관련 지식을 더 찾아볼수 있는 사이트주소, 책 등을 저자가 직접 추천해 주는 것이 좋습니다.
3. 웹앱 제작을 진행하면서 부딪힐수 있는 문제에 대한 해법을 각각의 운영체제 환경에 맞춰 제공해 주는 것이 좋습니다.
4.책에서 사용한 소스에 대한 라인별 상세 설명을 제공해 줍니다.
★★ 아쉬운 점 ★★
번역서가 가지는 특징이 좀 아쉽습니다. 번역이 부드러운 편이긴 하지만 종종 몇몇 문장의 직역에 가까운 번역이 같은 줄을 여러 번 읽게 만듭니다.
* 본문에서 다루는 내용은 다음과 같습니다.
- 네이티브앱 vs 웹앱의 차이점.
- HTML, CSS, 자바스크립트를 서로 다른 파일로 분리하여 구성하는 방법.
- 데스크톱 버전과 안드로이드 버전의 스타일시트로의 구성.
- 본문에서 사용하게될 HTML,CSS, 자바스크립트, jQuery, jQTouch에 대한 간략한 설명.
- 서버가 아닌 클라이언트측에 데이터를 저장하기 위한 웹 스토리지(로컬스토리지, 세션스토리지)와 웹 SQL 데이터베이스의 사용 방법.
- 오프라인에서 동작하기 위한 캐시 Manifest 설정방법.
- 디버깅을 위한 자바스크립트 콘솔로깅.
- 웹앱의 제약사항인 모바일 기기에의 제어를 가능케해주는 오픈소스 개발 도구인 폰갭.
- 안드로이드 마켓에 등록하기 위한 배포 준비과정 등을 개발에 꼭 필요한 내용만 선정하여 설명합니다.
* 전반적인 평가를 내려봅니다.
안드로이드용 웹앱에 대한 개념을 잡는 데에는 좋은 서적같습니다. 다소 어렵지만 안드로이드 웹앱에 대한 입문서로는 추천할 만 합니다. 특히 Java언어를 잘 몰라도 웹 기술과 폰갭으로 배포가능한 안드로이드 앱을 만들 수 있다는 점이 흥미롭습니다. 각 장에서 다루는 내용의 분량이 적은편이어서 이해하는데 부담은 적은것 같습니다.
* 장점으로 생각되는 사항들 입니다.
본문에서는 칼로리 계산을 위한 Kilo 프로젝트를 진행하고 전반적으로 필요한 기술들을 꼭 필요한 내용만 제시합니다. 소스코드 기술 시 오른쪽에 번호를 매겨주고 이를 분석하여 정말 자세하게 설명해줍니다. 번역본 임에도 필체가 부드럽고 적합한 용어선정과 의미전달이 매끄러우워서 문맥적으로 그 의미가 어색하거나 한 점은 없습니다. 오탈자가 매우 적은 편입니다.
* 아쉬운 점
본문의 흐름에 따라 실습을 하는데, 답답한 점이 있었습니다. 일련의 기능 구현을 위해 소스코드의 일부분을 계속 변경하고 추가하는 방식인데, 정확히 어느부분을 어떻게 바꾸어야 하는지 중반부까지는 전체소스를 수록하고 있지 않는 경우가 종종 있어서 따라하기 쉽지 않았습니다. 또한 실행화면이나 기타 첨부화면이 다른 도서에 비해 상대적으로 적은 편입니다. 기 완성된 예제(다운로드 받은 예제소스)와의 실행화면에도 좀 차이가 있는것 같구요. 이 때문인지 따라하기가 쉽지는 않았습니다. 초보자에게는 다소 어렵게 느껴질 것 같습니다.
* 다만 본문에서 다루는 웹 기술인 HTML, CSS, 자바스크립트, 제이쿼리, 제이큐터치, 폰갭은 어느 하나라도 제대로 익히려면 오랜시간과 이해력이 필요할 것 입니다. 책 한권씩은 되는 분량이니까요. 본문에서는 짧막한 활용법을 제시하면서 Kilo라는 프로젝트를 진행합니다. 위에서 언급한 기술들에 대해서는 정말 필요한 내용만을 다루므로 이런것이 있구나 정도로 이해하시고, 관련 기술에 대해서는 해당 분야의 전문서적을 참고하시는게 좋을 듯 합니다.
이 책의 장점은 이 책 소개하는 페이지의 그림만 봐도 알 수 있듯이 모바일스럽게 변해가는걸 쉽게 할 수 있다는 점이고, 저는 주로 단점 위주로 적었습니다.
첫번째 챕터
웹앱과 네이티브앱의 비교가 나옵니다. 웹앱을 만들려고 이 책을 보시려는 분은 미리 웹앱의 단점(제약사항)을 읽어보셔야 할 거 같습니다.
자신이 만들고픈 앱이 카메라나 스피커등 주변장치등을 이용해야하는 거라면 웹앱으로는 불가능하니까요. (음 후반부에 이렇게 만든 웹앱을 폰갭을 통해
안드로이드 앱으로 만들어버리는군요. 따라서 가속도계나 카메라 마이크 스피커등을 이용할 수 있게 되네요. )
HTML과 css, javascript 를 간략하게 소개하면서 각각이 어떤 역할을 하는지를 소개합니다.
HTML소개 block 과 inline 에 대한 설명과 a(anchor) tag에 대한 설명정도, 그리고 js는 버튼 눌렀을때 클릭이벤트정도가 소개됩니다.
짧으니까 개념정리한번 하고 시작한다는 느낌으로 보시면 될 듯 합니다.
후리미엄 모델, 블록태그, 문서준비함수 등의 한글표기등이 나오는데 익숙하지 않아 좀 어색한 면이 있네요 ^^
2장에서는 html에 점점 css를 적용하면서 웹페이지가 모바일처럼 변해가도록 하는게 신기하네요.
가장 모바일답게 보이는 css가 정해져있다보니 자율성 다르게 꾸미기 어렵다는...
그냥 이거쓰면 모바일처럼 보여 그냥 써 이렇게 말하는 느낌이랄까.
마치 스타크래프트 잘나가던 시절 최대한 스타크래프트처럼 보이게 만들어라 라고 하던거처럼
윈도우환경의 웹서버 구축설명이 IIS를 대상으로 해서 좀 아쉽고, php 아 난 자바개발자인데 웹쪽하려면 php는 필수인가봐요 ㅠㅠ)
2장 읽으면서 기본적인 css에 대한 설명이 부족한게 아닐까 생각했는데 뒤에 나오는 챕터에서는 좀 더 자세히 설명해주네요.
읽다보니 첫인상(첫표지에 html,css, javascript, jquery, jqtouch, phonegap 등 잔뜩 써있는거에 비해 책두께가 상당히 얇기에 불안했는데)과 달리 생각외로 군더더기없이 설명이 깔끔하네요
chapter3부터의 예제는 ajax를 사용하는 예제들이라 웹서버의 url호출이 아닌 로컬html을 열었을때는 동작하지 않네요.(주의 표시가 있었으면 하는..)
비단 웹앱을 만들때뿐 아니라 웹작업에 필요한 유용한 css관련 코드 스니펫들이 많이 들어있어서 좋네요.
4장엔 jqtouch를 이용해 UI꾸미는 부분이 시작되는데 jqtouch 뭔가 버전업 되면서 책의 예제랑 경로등이 안 맞는듯. 으 문서화도 별루고
UI에 대한 것은 설명을 보고 만들겠는데 실제 form에 action등을 설정하여 처리하는 예제등이 부족 ( 아 나중에 나오는군요)
5장에서는 데이타를 저장할 웹스토리지와 웹SQL데이타베이스에 대한 설명이 나옵니다.
이 책의 예제는 거의 모든것이 다 클라이언트단에서 이루어지네요. 로컬의 웹페이지 로컬의 폼 submit 하면 로컬의 스토리지 혹은 db 에 데이타저장하고 등등등
그리고 트위터같은 외부API에 접근해서 정보를 받아 보여주는 형태의 예제등이 포함되었으면 더 좋겠다 하는 생각이 듭니다.
폰갭 설치부분의 설명은 이클립스부터 안드로이드 설치 플러그인 설치등 합치면 수십가지 절차를 단지 text로만 설명해놓아서 버전이 바뀌거나 문제가 발생했을때 도움을 받기 어렵지 않을까 하는 생각이 드네요.
이 책은 UI개발 과 캐싱 디버깅, 마켓에 앱등록 등 다양한 부분을 적은분량이지만 알차게 대부분 다룬다는 점에서 좋지만
다루는 예제가 킬로 라는 (별로 매력적이지 않은) 칼로리 계산 앱 하나라서 다른종류의 웹앱을 만들땐 어떤것(기법)등이 필요한지 알 수 없다는 ...좀 다양성이 부족하다는게 아쉽네요.