[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월 21일 월요일

[Book] 한 권으로 끝내는 정규표현식..

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

한 권으로 끝내는 정규표현식
잰 고이바에르츠, 스티븐 리바이선 저
김지원 역
한빛미디어

책 제목은 잘 지었다고 생각하고 있습니다. 책을 처음 받고 약간 놀랐는데 자그만치 600페이지나 되는 두꺼운 책이었기 때문인데 정규표현식이 만만한다거나 쉬운거라고 생각하진 않지만 자그만치 600페이지라니 읽기도 전에 확실히 한권으로 끝나겠다는 생각을 들 정도였습니다.

이 책은 정규표현식의 모든 것을 다 다룬다고 할정도로 많은 내용을 다루고 있습니다만 정규표현식 자체가 좀 그러하듯이 각 문법에 대한 설명이 기본적으로 있고 책이 전체적인 구성이 정규표현식으로 해결할 어떤 문제를 주고 그 문제를 해결할 정규표현식을 보여주고 그에 대한 설명이 이어붙는 구성으로 처음부터 끝까지 이루어져 있습니다. 그렇다 보니 책을 읽으면서 오르고내리는 굴곡이 별로 없기 때문에 그냥 보기에는 상당히 지루하다고 할 수 있습니다. 딱히 정규표현식을 엄청나게 익혀야 한다거나 하는 등의 이유가 아니라면 이 책을 처음부터 차근차근 공부한 다른 것은 좀 어려운 일이 아닐까하는 생각이 들었습니다.

그보다는 이 책은 정규표현식에 대한 레퍼런스 북에 가깝습니다. 특히 이 책은 많은 언어별로 정규표현식을 설명하고 있습니다. C#, VB.NET, Java, JavaScript, PHP, Perl, Python, Ruby을 중심으로 각 언어별의 차이점을 일일이 짚어주고 있기 때문에 이 책을 차근차근 공부한다기 보다는 정규표현식이 필요할때 찾아보면서 사용중인 언어의 특징을 파악하면서 참고용으로 사용하는 것이 더 적합하다고 생각합니다. 단순히 정규표현식에 대한 사용법을 잘 모른다거나 좀 더 알고 싶어서 공부하려는 의도라면 이 책보다는 200페이지도 안되는 손에 잡히는 정규표현식이 더 적합한 책이라고 생각하고 있습니다.

각 언어별로 정규표현식의 차이가 있지만 일반적으로 이러한 부분을 외우고 있는 사람은 많지 않고 필요할때마다 검색하는 수밖에 없는데 HTML파싱, URL, 이메일, 전화번호 매칭 등의 실용적으로 쓰일 만한 예제들을 위주로 설명되어 있으며 중반부부터는 정규식 뿐만 아니라 각 언어에서 어떻게 사용해야 하는지 코드까지 담고 있기 때문에 틈틈히 참고하면서 보기에는 상당히 좋다고 생각합니다. 기초부터 차근차근 설명한다기 보다는 정규식의 특성 및 각 언어별의 차이점에 중점을 두고 있는 느낌이기에 정규표현식을 잘 모른다면 약간 어려울 수도 있습니다.


2016년 2월 24일 수요일

[Book] Ajax 디자인 패턴 for 웹 2.0..

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

Ajax 디자인 패턴 for 웹 2.0 - 8점
마이클 마헤모프 지음, 정석모.김지원 옮김, 김태영 감수/한빛미디어

Ajax를 신기술이라고 하기는 뭐하긴 하지만 아직은 일반적으로는 고급기술로 받아들여진다고 생각하기 때문에 초기에는 새기술을 접할려면 이게 먼지 어떻게 하는 것인지가 궁금하기는 하지만 어느정도 개념을 파악하면 얼마나 더 고급스럽게 사용할 수 있을까가 주된 관심사가 아닐까 생각한다.

그런 면에서 이 책은 Ajax와 관련된 디자인패턴을 대부분 다뤄주고 있다. Ajax가 웹2.0에서 상당히 주류기술이 된 뒤로 웹어플리케이션에서 다양하게 사용되고 있는데 여기서는 현재 사용되고 있는 거의 모든걸 다뤄주고 있다는 느낌이다. 그만큼 분량도 엄청나다. 800페이지 정도... ㄷㄷㄷㄷㄷ

Ajax를 사용하는 다양한 패턴에서 이책은 총 4가지 패턴으로 분류하고 있다. 제품에 대한 패턴인 기본기술패턴, 프로그래밍 패턴, 기능성과 가용성 패턴과 처리과정에 대한 패턴인 개발패턴으로 분류하여 각 디자인 패턴을 설명하고 있다. 위 패턴의 순서대로 설명을 해주고 있는데 내가 느끼기엔 뒤로 갈수록 좀 쉬운 느낌인데 아무래도 기능성과 가용성 패턴쪽이 내가 더 많이 다루어 보았기 때문인 것 같다. REST, 웹리모팅등 Ajax와 관련되 고급기술들이 많기 때문에 포괄적 지식이 없다면 상당히 어렵게 느껴지기도 한다.(아무래도 이 모든걸 일일이 다 설명해 주지는 않기 때문에...)

난 이 책을 처음 집었을대는 보안이나 성능 또는 Ajax개발을 하면서 고민하던 이슈들에 대해서 좀 해결해보고 싶었는데 이 책이 접근하는 건 좀 다르다. 세부코드의 구현방식에 집중한다기 보다는 약간은 더 포괄적으로 어떤 경우에 Ajax를 사용해야 하는가(꼭 들어맞는 말은 아닌것 같지만...)에 더 접근하고 있다. 그리고 워낙 많은 내용을 담으려고 하다보니까 책의 대부분을 개념설명으로 채우고 있다. 상황설명하고 방법적인 개념 설명하고  예상되는 문제점등에 대해서 얘기하고 비슷한 경우의 실제 서비스들에 대해서 소개한 후에 간단한 소스 설명을 한다.

이 소스설명이 상당히 간단하게 되어 있기 때문에 해당 디자인 패턴을 다 파악하는데는 솔직히 무리가 좀 있다고 생각하고 있다. 이런 부분은 좀 아쉽기는 한데 책의 예제 사이트에서 설명하고 있는 모든 예제의 소스와 데모를 제공하고 있다. 그리고 예제는 어떤 특정 서비스를 이용해서 패턴을 다양화 해서 보여주고 있기 때문에 소스파악을 하기에는 좀더 편하지 않을까 싶다. 책에 이 소스에 대한 좀 자세한 설명이 있었으면 좋겠지만 아쉽게도 디자인 패턴을 제대로 파악하려면 해당 데모사이트에서 소스를 직접 분석해서 파악해야 할 듯 싶다.

솔직히 난 이책의 내용을 제대로 다 파악하지는 못했다. 책을 볼 때는 내가 잘 몰라서 파악하기 어려운 경우가 있고 어렵게 설명을 해서 파악하기 어려운 경우가 있는데 내가 파악하지 못한 이유는 아무래도 내 기술적 지식이 적어서 그런게 아닌가 싶다. 처음에 볼때는 너무 어렵고 난해하게 설명이 되어 있는 것 같아서 좀 그랬지만 읽으면 읽을수록 너무나 다양한 패턴을 설명해 주고 있었기 때문에 Ajax를 개발한다면 필요할때마다 참고해서 보면 좋을 만한 책이다.