'야후개발자'에 해당하는 글 1건






한빛리더스3기_로고

한빛리더스3기입니다.


본 도서는 한빛미디어에서 지원받은 책으로 작성한 리뷰이며, 자세한 내용은 아래 링크를 참조하시기 바랍니다.


웹표준, 웹2.0 기술이 널리 알려지기 시작한 이후, 오히려 브라우저의 웹페이지 로딩이 늦어지거나, 먹통이 되는 증상을 더 자주 발견하게 된다. 전문 웹개발자가 아니어도 짜증이 나기는 마찬가지며, ( 물론 정도의 차이는 있겠지만 ) 나름 전산계통에서 몇년 굴러먹은 수준으로 이 문제들에 대한 대처방안을 찾아보곤 했지만, 아무래도 한계를 느끼며 허탈해 하곤 했다.

" 자바스크립트 성능 최적화 " 라는 책제목을 보고 일단 " 성능 최적화 " 라는 말이 들었갔으면 구성과 동작원리에 대한 얘기가 나올 테고 이를 통해 브라우저 및 최근 어디나 사용하고 있다는(?) Ajax 얘기도 꽤 나올 것 같아 읽게 됐는데, 결론은 대만족이다. 물론 읽은 이의 수준을 고려해 정말 좋은 내용인지는 스스로 판단해 주길 바란다. ^^;;

책표지_20111002

적을 피하기 위해 죽은 척 하기도 한다는 짧은 귀 부엉이입니다.


 
지은이 블로그 : http://www.nczonline.net/about/

이 책의 목차는 자바 스크립트이 개발순서에 따라 구성되었고, 크게 자바 스크립트 로딩 ( 1 장 ), 코딩 테크닉 ( 2 장 ~ 8 장 ), 배포 ( 9 장 ), 테스트 ( 10 장 ) 으로 이뤄져 있다. 로딩부터 시작한다는 건 정말 체계적으로 시작한다는 뜻이다. 이 책은 자칭 중,고급자용이라고 하지만, 사용한 단어나 문장들이 크게 어렵지 않았다. 물론 각 브라우저별로 사용하는 테스트 툴들이나 야후에서 개발한 내용들이 생소하긴 하지만, 그 밖의 것들은 전산을 전공한 사람이라면 충분히 알아들을 만한 수준이었고, 표현이 너무 간결하면서도 단정적이라 배우는 사람의 입장에서는 오히려 편했다.

자바스크립트의 원래 목적은 웹 페이지에서 폼 입력 오류 등으로 인한 사용자의 시간 낭비를 줄이는 것이었습니다. 폽에 입력된 값이 유효한지 검사하는 등의 간단한 작업 위해 서버까지 갔다가 돌아오는 대신 이러한 기능을 자바스크립트가 페이지에서 직접 수행했습니다. 이렇게 해서 서버까지 왕복하는 시간을 줄일 수 있었습니다.
- 6쪽 발췌

왜 최적화가 필요한가
...
사실 인터넷 익스플로러 6이 느려진 것이 아니라 해야할 일이 늘어났을 뿐입니다.
...
그 단적인 예가 인터넷 익스플로러 6의 가비지 컬렉션 루틴입니다. 인터넷 익스플로러 6의 자바 스크립트 엔진은 메모리에 있는 객체가 일정 숫자까지 증가했는지 살펴서 가비지 컬렉션 시기를 결정합니다. 초기 웹 애플리케이션 개발자는 인터넷 익스플로러 6에서 정해 놓은 한계선을 넘기는 일이 드물었지만 자바스크립트 코드가 길어지면서 메모리에 남는 객체의 숫자도 늘어났고 복잡한 웹 애플리케이션은 이 한계선을 자주 넘깁니다. 문제가 무엇인지 분명해졌습니다. 자바스크립트 개발자와 웹 애플리케이션은 진화했지만, 자바스크립트 엔진은 그렇지 않기 때문입니다.
...
결과적으로 다른 언어에서는 컴파일러가 하는 최적화 작업을 자바스크립트에서는 개발자가 직접 할 수밖에 없습니다.
- 7 ~ 8 쪽 발췌
참고 : 차세대 자바스크립트 엔진이 등장했으며, 크롬은 코드 최적화 기능이 있는 자바스크립트 엔진을 탑재한 최초의 브라우저입니다.


다양한 브라우저들이 자바 스크립트 코드를 받아들이면서 어떻게 동작을 시작하며, 데이타의 송수신, DOM, 알고리즘 등등을 어떻게 활용해서 사용자 체험을 극대화할 수 있도록 성능을 높일 수 있는지 알려준다. 그냥 개념적으로 설명하는 것이 아니라 직접 테스트한 수치들과 그 근거들에 대해 탄탄한 이론을 바탕으로 알기 쉽게 정리하고 방향으로 잡아준다.

먼저 저자의 서문을 읽어보고, 각 챕터의 마지막 " 요약 " 부분을 읽으면서 몰랐던 내용이거나 납득이 간다면 선택해서 구체적인 이론을 습득해가야 할 것이다.


요즘에는 웹 개발자들도 시스템 엔지니어 쪽의 알고리즘이나 흐름제어에 상당히 영향을 받은 것으로 보여진다. 빌드와 배포를 최적화 하는 것도 그런 흐름이 아닐까 싶기도 하다. 어쨌거나 컴퓨터 프로그래밍을 공부하거나 웹 개발 분야를 전문적으로 파헤쳐 보려는 사람들에게는 아마 필수 서적이 되지 않을까 싶다.


책을 보고나니 아이러니하게도 요즘 벌어지는 브라우저 먹통 증상이나 하얀 화면, 오류메시지 창의 주요 원인이 이놈의 자바 스크립트 때문일 가능성이 높다는 생각이 절로 든다. 사실 그 자바스크립트를 짠 웹개발자나 아니면 무작정 개발팀을 압박하는 윗선의 문제일테지만..

정말 우리나라 웹개발자들이 이 책을 읽는다면 적어도 지금 우리가 접하는 불쾌한 사용자 체험이 많이 개선될 것 같다는 느낌은 든다. 물론, 이 책의 스타일을 모두 적용하려면 죽어날 것이라는 느낌도 팍팍 온다. ^^;;

WRITTEN BY
리컨
영화를 즐기는 취미를 기록한 블로그입니다.

,