Learning DCOM

책 리뷰 2017. 8. 31. 14:20 Posted by 정직한 UnHa Kim

https://www.amazon.com/Learning-DCOM-Thuan-L-Thai-ebook/dp/B005011IR8

 

 


COM : Component Object Model


C언어의 한계를 느낀 MS가 C++언어로 옮겨갈려고 할 때, 

C++ 모듈 간에 호출 표준이 없어서 상호 호환성이 떨어지는 문제가 있었고,

이를 해결하려고 만든 호출 표준이 COM이다.

RPC에 Component개념을 입혀서 만든 것 아닌가 싶다.

COM을 이용하면 MS윈도우 내에서는 프로그래밍 언어에 무관하게 상호 호출이 가능해진다.

 

리눅스에서는 COM과 같은 호출 표준이 없어서,

- SWIG과 같은 래퍼 자동 생성기

- DBUS 같은 IPC

- 컴파일러마다 호출 방식이 제각각인 C++을 배제하고, 호출 표준이 정해진 C언어로 구현.

등의 방법으로 해결하고 있으며,

C++의 호출 표준이 없는 문제를 해결한 윈도우에서는 C언어가 박물관에 들어간 언어로 취급되지만,

해당 문제를 아직도 해결하지 못한 리눅스에서는 여전히 C언어가 C++보다 더 많이 사용되는 데 일정부분 영향을 끼친 것으로 보인다.


 

그간 증권사 API를 DLL방식으로만 사용했으나,

키움증권등 최근 API들은 COM방식으로'만' 제공되는 경향이 있고,

Xing API는 DLL방식 이외에 COM방식도 지원하기에

COM에 대한 배경지식을 습득할 필요가 있을 듯 하여 구입한 서적이다.


아마존의 독자 리뷰에서 좋은 평가를 받았길래 믿고 구입했다. 


DCOM은 COM의 분산형 버전이지만, 

결국에는 COM에 기반을 두고 있기 때문에, 

DCOM서적임에도 불구하고 COM에 대한 내용이 상당히 잘 되어 있다.


이 책을 읽고 나면, 

예전에는 암호문 같아보이던 go-ole 예제 소스코드가 술술 읽어지는 마법을 경험했다.

 

기본 지식을 익힌 상태에서 다음 링크의 글을 추가로 읽으니 쉽게 읽어진다.

https://www.codeproject.com/Articles/13601/COM-in-plain-C


추가>

COM 이벤트 처리는 결국 C++을 통해서 처리하는 방식을 사용해야만 했다.

https://www.codeproject.com/Articles/338268/COM-in-C


다음 링크의 event_handler.cpp, event_handler.hpp, event_handler.h 파일을 참고.

https://github.com/ghts/xing_COM32 



'책 리뷰' 카테고리의 다른 글

할 수 있다! 퀀트 투자  (0) 2019.08.28
R for Data Science  (0) 2019.07.30
월스트리트 퀀트 투자의 법칙  (0) 2019.07.27
Wicket in Action  (0) 2018.06.07
Learning DCOM  (0) 2017.08.31
파이썬으로 배우는 알고리즘 트레이딩  (0) 2017.08.24

댓글을 달아 주세요