Outsider's Dev Story

Stay Hungry. Stay Foolish. Don't Be Satisfied.

[Book] 실전 Ajax

실전 Ajax

실전 Ajax - 8점
저스틴 게틀랜드.벤 갤브레스 지음, 황인석.강승우.송인철 옮김/인사이트


이 책은 처음엔 그닥 낸 눈에 들지는 않았다. 원래는 실천에 투입되니 자바스크립트에 한계를 많이 느껴서 자바스크립트 레퍼런스로 볼 수 있는 책을 찾다가 WROX책을 하나 사긴 했는데 좀 오래된 책이기도 하고 너무 두꺼운 책이라 쉽게 열게 되지 않았다.

그러다가 다른 책 보고 이런저런 짓 하면서 시간이 보내던 가운데 자바스크립트 지식도 약간 늘었고 AJAX가 필요해 졌기 때문에 회사에 있던 이 책을 집어 들었다. 큰 기대감도 없이 일단 AJAX를 하긴 해야겠으니 있는 책 먼저보고 다른거 보자는 생각으로 집었다.

근데 이 책 꽤 괜찮다.

보통은 당연한 수순대로 AJAX설명하면서 Web 2.0 얘기 나오고 XMLHttpRequest설명하면서 주~욱 나가는게 일반적인데 이건 왠걸 시작부터 Google Maps가 나오면서 구글 맵스식의 타일방식의 지도를 구현하는 AJAX얘제가 나온다. 관심이 있던 부분이라 열심히 따라해 보긴 했는데 약간 의외였다.

이 책은 단순히 AJAX의 사용법에만 국한한다기 보다 좀더 크게 보고 있다는 느낌이 드는 책이다. 구체적인 예시를 들면서 어떤 때에 AJAX가 필요한 지 또 AJAX를 잘못 사용하면 어떻게 되는지에 대해서 설명을 하고 있고 AJAX에 약간 관심을 갖고 있고 아주 약간은 기본 지식도 있던 나로써는 상당한 도움이 되었다. 기본적인 클라이언트 사이드 개발에 대한 마인드적인 부분까지...

그리고 AJAX는 Web 2.0의 대표 선수격이면서 XMLHttpRequest로 대변되기는 하지만 사실상은 특정 기술이라기 보다는 구현방식(?)이라고 보는게 더 맞기 때문에 어찌 보면 사용법보다 이런 부분이 더 중요하다고 할 수 있다.

또한 AJAX라 하면 말그대로 비동기로 서버랑 통신을 하는 거다. 이렇기 때문에 설명하는게 생각보다 까다롭다. AJAX는 일단 자바스크립트로 비동기로 요청을 하는 부분을 설명하고 예시를 보여주는 것은 당연한 거지만 완전한 설명을 하려면 Response를 하는 서버측에 대한 부분도 있어야 하는데 서버측은 어떤 녀석이 올지 알수 없기 때문이다. ASP, 닷넷, JSP, PHP등을 모두 다 설명할 수도 없는 노릇이고 그렇다고 독자가 어느걸 사용할 줄 아는지 알수도 없는데 하나만 가지고 설명하기도 참 어렵다.

하지만 이 책은 그 중간을 잘 조율했다는 느낌이 강하다. 너무 클라이언트부분만 설명하지도 않았고 어찌보면 좀 불필요한 서버언어에 대한 설명에 지면을 낭비하지 않고 개념자체를 이해할 수 있도록 상당히 신경을 썼다는 느낌이다.

그리고 AJAX를 쓰면 거의 필수적이라고 개인적으로 내가 생각하는 자바 스크립트 프레임워크에도 꽤 많은 지면을 할애해서 전체적으로 고르게 학습할 수 있도록 했다. 물론 프레임워크를 써도 기본적인걸 알아야 하지만....( 난 아직 프레임워크로만 쓰지만.. ㅡ..ㅡ ) 편리하게 쓸수 있게 하는 제공된 프레임워크가 널려있는데 안쓸 이유는 전혀 없다고 생각한다.

AJAX 관련해서 다양한 개발기법등을(JSON, XMLHttpRequet...) 배우려는 의도라면 오히려 실망할 지도 모르겠지만 AJAX를 어떻게 적용해야 될지가 고민이라면 많은 도움이 될 책이라고 생각된다.
2008/02/27 00:05 2008/02/27 00:05

새롭게 맡은 프로젝트...

요즘은 계속 자바스크립트를 가지고 놀고(?) 있다. 파견이후에 어느정도 JAVA도 손에 익었고 JAVA쪽으로 다시 집중을 해보려고 생각하고 있었지만 예정되었던 내부프로젝트로 자바스크립트에 집중하게 되었다. 말그대로 순수 자바스크립트로만 이루어진 프로젝트....

겨우 다시 만지게 된 JAVA를 다시 놓치는 것 같아서 약간 불안감이 있기도 하지만 이건 나한테는 상당히 매력적인 프로젝트이기 때문에 요즘 거의 내 머릿속에는 이 프로젝트가 가득하다. 어떻게 구성해야 할지... 이 생각 저생각... 물론 당연히 저것만 하는건 아니다. 계속 수시로 다른 것들이 끼어들고 있지만 잽싸게 또는 비중고려해서 끝내고 프로젝트에 계속 관심을 두고 있다.

일단 자바스크립트라는 녀석은 상당히 재미있다. html이나 자바스크립트가 흡사 아무나 하는것 정도로 인식되던 예전에 비하여 웹표준이 강화되고 AJAX라는 녀석에 UX라는 개념까지 등장하면서 자바스크립트의 입지는 강해졌고 이젠 자바스크립트로 못하는것 빼고는 다 할 수 있다. 개발을 시작한 뒤로는 웹표준이나 자바스크립트의 이런 강세에 대해서 상당히 관심이 늘어났기 때문에 아예 맘편히 만질 수 있는 이런 기회는 상당히 맘에 든다.

자바스크립트는 Language라고 부르는 다른 것들과는 상당히 다르고 아주 유연한 구조가 재미있게 만드는 것 같다. 그리고 AJAX이후 수많은 프레임워크와 라이브러리의 지원으로 많은 지식이 없어서 수많은 것들을 구현해 볼수 있고 바로바로 가시적으로 그 결과를 볼 수 있다. 상당히 단순한 것 같으면서도 파면 팔수록 묘한 매력이 나온다.

그리고 자바스크립트는 클라이언트 사이드다. JSP나 ASP등처럼 서버사이드가 아니란 얘기다. 요즘은 이제 ECMAScript4나 Javascript 2의 등장으로 조만간 한번 큰 변화가 있을듯 하지만 당장 벌어질 일은 아니고 서버사이드가 ASP에서 PHP, JSP, ASP.NET등 수많은 변화를 하고 있는 가운데 html과 Javascript는 사용하는 추세는 달라지었을 지언정 그 본질은 그대로이다. 이건 한번 어느정도 투자해두면 두고두고 써먹을 수 있다는 얘기다.

그리고 이게 나한텐 가장 좋은 점인데 상당히 비중있다고 생각되는 프로젝트임에도 아직 신입티도 못벗은 우리에게 거의 위임이 되었다. 팀장님께 간단한 보고 외에는 설계부터 구현까지 완젼히 내맘대로다. 물론 내 동기랑 같이 하고 있지만 누구 눈치를 볼게 없다는 거다. 여태 하면서 설계도 없이 주먹구구식으로 진행되고 전체적인 그림도 전혀 없고 그냥 나오는 이슈를 처리만 하면서 전체구조자체가 망가지는 게 큰 불만이었고 이렇다할 의사결정이 안이루어지고 중간에 끼어서 아무것도 못하는게 좀 힘들었는데 이번에는 그렇지 않다. (신입 둘이 이걸 완젼히 맡았다는게 어찌보면 우리 회사의 구조적 결함이 반영된다랄 수도 있지만.....)

이것저것 내가 평소에 생각하던 것들과 이번 프로젝트에서 반영해야 할 것들.... 아는 건 별로 없지만 열심히 생각해서 기능분석서도 나왔고 일정도 대충은 잡고 기본적인 클래스 구조도 잡았다. 이것저것 어려운 부분도 있었지만 어찌어찌 하다보니 우리가 구상한 전체 구조의 틀은 나온 상태이다. 초반이라 좀 여유부리고 있긴 하지만 솔직히 어떤 문제가 돌출될지 혹 우리가 잘못 생각하고 있는게 있을지 전혀 감이 없으니 불안하긴 하지만 현재까진 제법 잘 오고 있다.

일단 맘껏 할 수 있으니까 좋다.... SVN도 하다가 치워버리곤 했는데 이번엔 프로젝트에 완젼히 물렸고 아마 끝까지 가지 않을까싶다. 설계라고 하긴 조촐하지만 구조도 잡아봤고 내가 좋아하는 prototype.js도 단순히 $만 쓰는게 아니라 이것저것 맘껏 사용해 보고 있다. 원래는 이슈트래커로 TRAC도 써볼까 했었는데 쉬운 녀석이 아니라 그것까지는 좀 무리일것 같아서 일단 보류했다.

이것저것 좀 피곤한 다른 일들이 있긴 하지만 이 프로젝트만은 지금 나한텐 충분한 만족감을 준다. 제발 무사히 완료되기를.....

2008/02/27 00:03 2008/02/27 00:03