모던 웹을 위한 JavaScript + jQuery 입문 - 개정판, 자바스크립트에서 제이쿼리, 제이쿼리 모바일까지 한 권으로 끝낸다
윤인성 지음 / 한빛미디어 / 2013년 9월
평점 :
구판절판


JavaScript 서적의 베스트셀러가 되고 나서 다시 개정판을 냈다. 전에는 ASP.NET으로 서버설명을 해서 아쉬웠었는데, 이번엔 아예 몽땅 JavaScript가 되도록 Node.js로 변경했다.

JavaScript 하나로 Server Side와 Client Side 모두 구현하게 되었으니, 그야말로 One Language Multi Side가 되어버린 것이다.


저자의 특징은 매우 디테일하고 차근차근한 설명으로 진행해 나가려는 점이 특징이다.

이 방법은 학원에서 설명하는 접근 방식과 유사하다. 점진적으로 낮은 단계를 설명해 나가면서 거기에 코드를 더 추가해 가며 원하는 단계까지 점점 살을 붙여가는 방식이다.


소스 코드에서 A가 나오고, 그 다음에 B가 나오고, C가 나오고, ABC가 나오는 방식인 것이다.


이런 방식이 학원에서 직강을 통해서는 흐름이 빠르기 때문에 무리가 없는 방식일 것이다.

문제는 책으로 독학을 해야 하는 독자의 경우에는 이렇게 코드를 조각내 버리면 사실 전체의 흐름을 보지 못하게 되고, 설명이 코드 사이사이에 끼여있어 분산되어 버린다.


'모던 웹을 위한 JavaScript + jQuery 입문'의 설명 방식은


A

설명

B

설명

C

설명


총 코드

A

B

C


라면,


역시 같은 출판사에서 나왔던 '만들면서 배우는 CodeIgniter'의 경우에는


①A

②B

③C


①설명

②설명

③설명


식으로 되어 있다는 차이가 있다. CodeIgniter의 경우 한 곳에 설명과 코드가 모두 집중 되어 있어 산만하지 않고, 다시 복습하기에도 매우 편리했다.


그러나 이 책의 경우처럼(C까지 했지만, 실제로는 G나 H 이상으로 이어졌다.)에는 계속 이어 붙이는 방식이여서 분량이 더 많아지고, 중복부분도 많아지게 되면 다시 보는 것이 사실 쉽지 않다.


컨설팅 용어 중 MECE(Mutually Exclusive Collectively Exhaustive)라는 말이 있다. 서로 겹치지 않고, 각각의 합이 정확히 총합이 되도록 생략도 되지 않아야 한다는 것이다.


물론 이 용어를 학습서에 쓴다는 것이 무리가 있겠으나, 소스를 분석하고 해설을 보고 게다가 컴퓨터로 프로그래밍 연습까지 해야 한다는 부담감이 있는 학습자로서는 최대한 번복되는 일이 없고, 분량도 줄이는 것이 효율적인 학습이 될 것이다.


전반적으로 쉽고 상세한 설명이 이어졌지만, 분량을 줄일 수 있는 방법을 택했더라면 하는 아쉬움이 생긴다.



댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
모던 웹을 위한 HTML5 프로그래밍 - 한 권으로 끝내는 자바스크립트 프레임워크 Backbone.js, Angular.js, Knockout.js 활용
윤인성 지음 / 한빛미디어 / 2013년 8월
평점 :
절판


이 책의 제목은 


모던 웹을 위한 HTML5 프로그래밍

 : 한 권으로 끝내는 자바스크립트 프레임워크 Backbone.js, Angular.js, Knockout.js 활용


이다.
큰 제목과 부제가 사실 일치 되지 않는다. HTML5 프로그래밍이라면서 JavaScript Framework라니 말이다.

책의 내용은 반은 HTML5, 그리고 나머지 반은 JavaScript Framework이다.
최근 HTML5 이후와 맞물리면서 JavaScript가 전성기를 맞았다. 각 가지 Framework가 쏟아져 나오면서 Front Side에 머물러 있던 두 형제(?)는 Server Side도 점령해가고 있다.
Web에서 크게 성장하는 톱니바퀴인 것이다.

이 책에는 생산성을 증가시켜 준다고 이미 유명해진 Angular.js부터 CoffeeScript, Backbone.js, Knockout.js 를 볼 수 있다.


HTML5와 JavaScript Library는 동시에 있기 보다 분리되어 소개되는 것이 보편적이지만, 개발과정은 사실 전혀 그렇지 않고 오히려 매우 유기적이기 때문에 이러한 단 권에서 볼 수 있는 소개는 매우 반갑다.


무엇보다 단편적인 소개 이상으로 중요한 실전 적용인데, SNS을 실제로 여러 차례 만들어 봄으로써 프로그래밍을 익히는 과정을 담고 있다는 것이 인상적이다.


'백문이 불여일타'가 프로그래밍 세계의 진리 아니던가.


반가운 재료들의 조합과 각 가지 실습 파티는 신기술을 즐기는 프로그래머들에게 정말 단비같은 책이다


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
iOS와 OS X의 메모리 관리와 멀티스레딩 기법 - ARC, 블록, GCD를 활용한
가즈키 사카모토 & 도모히코 후루모토 지음, OSXDEV 옮김 / 지&선(지앤선) / 2013년 8월
평점 :
품절


이 책은 표지에 나온 대로 ARC(Auto Reference Counting), Block, GCD(Grand Centural Dispatch)를 이용한 메모리 관리 기법, 그리고 Multi-Thread 기법에 대한 책이다.


Object-C의 경우 처음 객체를 생성(alloc/new/copy/mutableCopy)한 뒤 객체를 이용하겠다는 소유권을 획득(retain)해야 이용하게 된다. 그리고 사용한 뒤엔 다시 소유권을 풀어주고(release), 소멸(dealloc)시키는 과정을 가지고 있다.


블록과 GCD는 주로 멀티스레드 기반 앱을 작성하는 데 사용되는데, iOS 4와 OS X 스노레퍼드에서 부터 나왔으며 ARC는 iOS5부터 나오기 시작했다.

현재 iOS7이 출시된 상황에서 다소 늦어보일지 모르지만, 애플리케이션의 메모리 관리는 항상 화두가 되는 문제이기에 꼭 학습해야 할 부분이다.


ARC는 메모리 관리는 Compiler가 직접 하게 된다. 그래서 앱이 더 바르게 동작하고 좋은 성능을 발휘하게 된다.

Block은 지역변수와 함께 동작하는 익명 함수이다.

GCD는 비동기적(Asynchronous)으로 작업을 실행하는 기술이다. 여기서 개발자가 할 것은 실행할 작업(task)를 정의한 뒤 dispatch queues에 추가만 하면 된다. 그렇게 되면 GCD는 필요한 스레드를 생성하고 각 스레드가 동작할 수 있도록 스케쥴을 처리해 준다.

마치 list에 할일을 넣으면 알아서 스케쥴을 짜 주는 것과 같다.


전반적인 메모리 관리와 멀티스레드의 디테일한 과정을 구조적으로 살펴볼 수 있었다.

다만 목차가 순서 없이 나열이 되는 바람에 책의 구조화가 되어 있지 않아 다소 산만해 보이지 않았나 싶다.

Chapter 1 식의 큰 제목만 있지 소제목 번호가 전혀 되어 있지 않고, 구성이 나열만 되어 있었기 때문이다.


메모리 관리라는 주제에서 중점적으로 볼 수 있는 기회인 것을 보면 참고해야 할 만한 책이다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
iOS Wow Factor - iOS 사용자 경험의 본질을 말하다
티모시 우드 지음, 이상훈.민경욱 옮김 / 지&선(지앤선) / 2013년 8월
평점 :
장바구니담기


"iOS 애플리케이션을 경험하는 순간 WOW하게 만드는 요인"


이 책의 주제는 이것이다. 이른바 WOW Factor이다. 


최신 기술과 세련된 디자인, 기획과 설계 모두 UX가 뒷받침되어야 하는데, 사용자로부터 WOW한 반응을 얻는 결정적인 요소가 이 책에서 말하고자 하는 것들이다.


그렇다면 WOW한 요소들이 무엇인가?

디자인은 User의 즉각적인 반응을 유도하는 '효과의 즉시성'이 있어야 하며, 적어도 기존의 경험과는 다르다는 것을 인식하게 하는 참신성이 있어야 한다. 또, 잠재적으로 문제가 나타나는 경험에 대한 충격을 완화시켜주는 Solution 고유의 매력이 있어야 한다.

이 세 가지 요소가 갖춰졌을 때 사용자는 감성적 기준점을 뛰어넘어 WOW 반응을 보이는 것이다.


iPhone과 iPad는 단지 스크린의 차이가 아니라, 사용자의 사용 행태에서 크게 갈린다.

iPhone - 사용 빈도 높음. 지속성 짧음.

iPad - 사용 빈도 낮음. 지속성 높음.

다시 말해 단발적으로 메시지, 지도, 교통앱 등 무엇인가를 계속 확인하게 되는 디바이스가 iPhone인 반면, iPad는 게임, 영화, 서핑 등 멀티미디어를 즐기기 위한 환경이라는 것이다. 

이렇게 되면 휴대성의 개념이 간섭된다. iPad는 돌아다니면서 하기 보다 앉아서 책상 위에나 들고 이용하게 될 것이다.


디바이스의 물리적인 특성 뿐 아니라 사용자의 사용 특성을 고려해야 거기에 맞는 애플리케이션이 탄생할 수 있다.


기존의 개발론에서 벗어나, 아니 어쩌면 우리가 몰랐던 개발에 깊게 관여되는 요소를 이 책을 통해서 발견하게 되는 느낌이다. 다만 책의 전체 내용이 단계적으로 잘 정돈되지 않아 내용을 파악하는데 산발적인 느낌이 들었던 것이 다소 아쉽다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
만들면서 배우는 안드로이드 게임 프로그래밍 - 개정판 만들면서 배우는 시리즈
황동윤 / 한빛미디어 / 2013년 7월
평점 :
절판


나는 처음 책을 볼 때 5초만 훑어 봐도 이 책을 가지고 공부할 때 어떤 느낌이 들지 예측이 된다.

한 눈에 파악되지 않는 복잡한 편집이나 지루한 글만 계속 되는 전문서는 사실 끝까지 가기 매우 힘들다.


그런데 이 책은 최근에 본 프로그래밍 전문서 중 가장 깔끔하고 정제된 편집을 펼쳐 보이고 있다.

특히나 전문서들은 대체로 책의 판형이 큰데, 이 책은 그 책들에 비해 축소시켜 더욱 깔끔하고 부담이 덜 해 보인다.


펼쳐보아도 그 느낌이 계속 된다. 마치 직접 Eclipse를 통해 보는 느낌으로 소스에 색깔이 입혀져 있고, Font도 내가 즐겨 쓰는 나눔 고딕 코딩과 유사해 가독성도 매우 좋다.


내용과 편집이 다른 문제라고 여길 수 있지만, 이런 편집의 느낌은 지속적으로 학습을 이어 나가는데 큰 역할을 하기 때문에 상당히 중요하다고 여긴다.



책 내용에 실린 내용은 이미지 처리, 사운드 처리, 터치 인식, 센서 동작, 진동 동작, Java Design Pattern 등을 실었다.


사실 이런 멀티미디어적인 구현은 굳이 게임이 아니여도 많은 앱에서 사용하는 기본적인 내용들이다. 따라서 게임 제작이 아니여도 안드로이드 자체를 배우고자 하는 사람이라면 아는 것이 필수적인 기본 구현기이다.


하지만 이 책이 Android를 배운다기 보다 게임을 제작하는 입장에서 접근한다면 다소 게임이라고 하기엔 부족함이 느껴질 수 있다. 기초적인 구현에서 그쳤기 때문에 이렇다할 게임의 전문성을 갖추기엔 빈칸이 많이 때문이다.


차라리 게임이라는 소재를 통해 Android를 배운다고 접근하는 기획이였다면 훨씬 그 취지에 적절하지 않았나 싶다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo