티스토리 뷰

기록/독서

C++ Network Programming

JOHNPARK82 2006. 8. 16. 05:21

C++ Network Programming

간만에 컴관련 서적을 또 읽었다. In Depth 시리즈가 보통 그렇듯이 이 책도 그렇게 쉽지 많은 않은 책이다. 이 시리즈에서 내가 끝까지 본책은 Accelerated C++ 뿐인데.... 그만큼 책의 난이도가 결코 쉽지가 않은 책들이다.

이 네트워크 프로그래밍 책이라고 불리는 이 책역시도 쉽지많은 않다. C++ 관련 네트워크 라이브러리인 ACE(Adaptive Communication Environment)라는 라이브러리를 중심으로 C++을 이용한 프로그래밍을 설명한다.

이 책을 보면서 처음으로 네트워크 프로그래밍에 ACE라는 것을 써보았는데.... 솔직히 굉장히 방대하고 어렵다. 왜 ACE 라는 이름이 붙었는지도 그제서야 알게되었다. 이 라이브러리가 표방하는 바는 Adaptive Communication Environment.... 말그래도 플랫폼에 제한받지 않는 소스레벨 프로그래밍 환경의 구축을 목표로한다. 덕분에 당연히 OS 위에 레이어를 하나 씌우고 네트워크 프로그래밍을 하면서 행하는 대부분의 것들(쓰레드 관리와 같은...)을 라이브러리안에서 래핑을 통해서 제공하는 구조이다.

덕분에 완전한 ACE를 이용해 프로그램을 작성하면 포팅에 대한 압박에서 많은 부분 벗어날 수 있고, 구조적으로 잘 짜여진 덕분에 프로그래머가 행하는 상당한 부분의 행위 (데이터 마샬링 같은....)를 프레임웍이 껴안은 구조라고 생각했다.

문제는 결코 쉽지 않다는 점이고... 특정 플랫폼 중심으로 개발을 하는 사람들에게는 이 라이버러리는 그다지 매력적이지 않다는 점이다. 본래 네트워크 프로그래머는 플랫폼에 종속되어서는 안된다고 배우기는 하지만... 어디 그게 말처럼 되나... -_-;;;

뭐 하여간 책을 읽으면서 느낀건 그런것 같다. DP 교재 프레임워크로 쓰면 아주 좋겠다는 뭐 그런거랄까?? -_-ㅋㅋ