◆ 무한한 가능성/& Programming

STL, ATL, WTL

치로로 2009. 6. 8. 11:46

STL은 Standarad Template Library, 즉 template 기법을 이용해 만들어진 표준화된 library라고 볼 수 있습니다.

자료구조론을 공부하다보면 배우게 되는 queue, list, hashmap, vector 등과 같은 container와 sort collection, generic 알고리즘과 같은 algorithim이 있고, string을 통한 문자열 접근, exception handling, auto_ptr의 스마트 포이터 등의 기능들을 표준화해 놓은 것입니다.

대부분의 C++ Compiler는 이 STL을 지원하고 있으면, 이는 linux, unix, windows, macos 등 플랫폼에 상관없이 지원되고 있습니다.


http://en.wikipedia.org/wiki/Standard_Template_Library

http://oopsla.snu.ac.kr/~sjjung/stl/

http://www.codeproject.com/vcpp/stl/stlintroduction.asp

http://www.codeproject.com/vcpp/stl/


ATL은 간단히 말하면 Active Template Library로 COM(Component Obejct Model)을 C++에서 구현하는데 좀더 쉽게 하기 위해 template을 이용해서 만든 일종의 wrapper library입니다.(참고로 COM은 Microsoft에서 지원하는 "binary 형태로 배포가능한 Component를 만들기 위한 규약"입니다.)


http://en.wikipedia.org/wiki/Active_Template_Library

http://en.wikipedia.org/wiki/Component_Object_Model

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmfc98/html/_atl_ATL_Article_Overview.asp

http://www.codeproject.com/atl/


WTL은 Windows Template Library의 약자로 쉽게 말해 GUI를 구성하기 위한 library를  template 기법을 이용하여 가볍고 쓰기 쉽게 만든 것입니다. 달리 얘기하면, WTL은 MFC(Microsoft Foundation Class Library)보다 가벼우면서 쉽게 GUI를 작성하기 위해 ATL을 이용하여 만든 library입니다. 쉽게 말해 ATL의 확장이라고 할수 있습니다.


http://en.wikipedia.org/wiki/Windows_Template_Library

http://www.codeproject.com/wtl/wtl4mfc1.asp

http://en.wikipedia.org/wiki/Microsoft_Foundation_Classes