'GoogleURL'에 해당되는 글 1건

  1. 2009.01.05 구글 크롬에 사용된 third-pary libraries (1)


Neozest입니다.

개발자에게 많은 지적 자극을 주는 부분은 바로 다른 사람의 코드를 읽는 순간이 아닐까 생각됩니다. 그 사람이 자신보다 실력이 뛰어나다면 가슴에서 우러러 나오는 존경심 + 더 공부해야겠다는 열정이 나올 것이고, 그 사람이 못하다면 자신이 배운 지식을 동원해서 다시 한번 정리할 수 있는 기회가 됩니다.

어제는 구글이 만든 오픈소스 브라우저인 크롬이 베타를 떼고 정식버전으로 출시되었습니다. (먼저 구글 크롬팀에 축하를...)
브라우저는 아주 많은 모듈들로 이루어져 있기 때문에 쉽게 전체적인 코드를 한눈에 보기는
불편하죠. 사실 웹킷코드를 리뷰한 적이 있는 저로써는 웹킷이외에 뭐가 사용되었을까가 더 궁금하기도 했죠. 그래서 구글 크롬에 사용된 third-party library들과 그들의 역할이 뭔지를 살펴보도록 하지요.(이미 구글과 같은 큰 조직에서 충분히 안정성이나 견고성을 검증했기 때문에 이런 모듈은 국내에서도 목적에 맞다면 사용해 보는 것도 좋겠죠.)


1. Google BreakPad (http://code.google.com/p/google-breakpad/)
프로그램을 개발하다보면 어쩔 수 없이 crash가 발생하게 됩니다. 그런데 이 crash에 대한 정보를 최대한 수집하여 분석할 수 있다면 해당 crash가 발생한 정황을 알 수 있겠죠. 마치 윈도우의 Dr.watson처럼 말이죠. 구글에서 만든 BreakPad는 멀티플랫폼에서 동작하는 crash report 시스템입니다. 이 글을 적고 있는 현재 Revision이 304이군요.

2. Google URL (http://code.google.com/p/google-url/)
크롬이 브라우저인 관계로 URL을 다룰 일이 많죠. 그 부분을 처리하는 작은 모듈입니다. 그런데 개인적으로는 이런 모듈이 이미 많은 언어에 foundation library에 포함되는 추세이기 때문에 코드 읽기 차원에서 볼 수는 있겠지만, 유용성은 떨어지지 않나 생각되네요.

3. ICU38(http://www.icu-project.org/)
유니코드는 이제는 익숙한 용어가 되었습니다. VC 최신 버전에서는 프로젝트를 생성할 때 기본으로 유니코드 기반으로 만들어지지요. 그렇지만 아직까지도 유닉스나 기존 레거시코드들에서 유니코드를 사용하기 위해서는 코드 페이지 변환등의 작업을 담당할 라이브러리가 필요하지요. 이 역할을 맡고 있는 것이 IBM에서 만든 ICU38입니다. (코드 변환 이외에도 정규표현식이나 형식화(formatting) 등의 작업을 제공하는군요.)


흠. 겨우 3개를 봤을 뿐인데...시간이 많이 걸리는군요.
나머지는 계속해서 다음 포스트에 정리해 보겠습니다.
Posted by NeoZest