· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
케인



케인


관심 분야

C++ 용 범용 라이브러리

J2EE, .NET CLR과 같이 C++에서도 거의 표준적으로 사용할 수 있는 오픈 소스 라이브러리가 필요하다. STL은 너무 알고리즘에만 한정되어 있고 바이너리 호환성이 정의되어 있지 않아서 문제가 있다. STL 보다는 시스템에 더 많이 접근할 수 있어야 하고 플랫폼 독립적이야 한다. C가 아닌 C++이어야 하는 것은 코드를 단순화하기 좋기 때문이다.

유명한 오픈소스 프로젝트에서 사용하는 범용 라이브러리는 대개 C 기반이다.

  • NSPR(Netscape Porable Runtime): 클라이언트 용으로 좋은 라이브러리이지만, 너무 복잡한 쓰레드 모델과 그에 따라 엄청나게 복잡한 I/O 구현을 만들었다. 누구나 가져다 쓰기에는 너무 거대하다.
  • APR(Apache Portable Runtime): 가볍고 좋지만 서버 운영체제에 한정되어 있다는 단점이 있다. (WinNT급 이상을 대상으로 한다.) NSPR에 너무 복잡하고 불필요한 기능이 많아서 따로 개발했다고 한다.
  • Common C++: 유닉스 유형의 운영체제에서 C++의 저변을 늘리기 위해서 시작된 GNU 프로젝트. 개발도 다소 지지부진하고 설계도 좀 조잡해서 범용 라이브러리로서는 납득하기 어렵다.
  • boost: 너무 기능이 많아서 다소 부담스러움.

다른 데스크탑이나 운영체제 프로젝트에서도 범용 라이브러리를 제공하고 있다. 이런 경우에는 대개 프레임웍화 되어 있어서 모든 사람이 받아들이기에는 무리가 있다.

  • glib: GTK+ 및 Gnome에서 채택하는 라이브러리 gobject, gmodule같은 부분까지 붙어 있어서 다소 규모가 크다. 플랫폼 독립적이기는 하지만 다소 유연성이 떨어지는 느낌이다. (gettext, iconv에 의존하는 것이 다소 불만)
  • CoreFoundation(Darwin): 애플의 Mac OS X와 Darwin 프로젝트에서 사용하는 범용 라이브러리. VC++에서 빌드가 안 된다.

그 밖에 OpenOffice.org같이 큰 프로젝트도 여럿 있지만 가져다 쓰기 편한 건 별로 없는 것 같다.

XUL 기반 GUI 툴 킷

XUL의 레이아웃 모델만을 빌려서 C++에서 사용할 수 있는 가벼운 플랫폼 독립적인 GUI 툴 킷을 개발하기

KLDP에서 하고 있는 일


SubversionBook 번역 (번역 프로젝트: SubversionBookRemake)

  • 번역하는 거 첨 해보는데 무지 오래걸리는군요. ㅜ.ㅜ






ID
Password
Join
"It seems strange to meet computer geeks who're still primarily running Windows... as if they were still cooking on a wood stove or something." - mbp


sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2004-12-04 22:36:40
Processing time 0.0039 sec