관리 메뉴

KorSA

DLL 모듈화 본문

Development Experience/Philosophy

DLL 모듈화

Praiv. 2020. 3. 2. 14:10
320x100

이전 Winform 프로젝트에서 C++로 구현된 기능을 사용해야 할 일이 있었다.

 

당시의 사용방법은 C++ 로 만들어진 dll을 C#으로 감싼 후, 이 wrapper 를 통해 필요한 기능을 수행하는 것이었다.

 

그럭저럭 프로젝트가 마무리되었고, 한동안 해당 코드를 건드릴 일이 없었다.

 

최근 WPF로 새로운 프로젝트를 시작하면서 예전에 만들어두었던 Wrapper 를 사용해야 할 일이 생겼다.

 

그냥 가져다 쓰면 되겠거니 했는데... 예전의 그 Wrapper는 Winform 프로젝트에 너무 종속되어 있었다.

Winform과 WPF의 차이라기 보다는, namespace가 예전 프로젝트와 너무 얽혀있는 게 문제였다.

애초에 Dll Wrapper를 만들 때 특정 프로젝트 내에서 만들지 말고 따로 빼내어서 구현했더라면 훨씬 모듈화가 잘 되어있었을 것이다. 

그리고 이렇게 독립된 Dll Wrapper를 C#에서 DllImport 등을 사용하여 불러오면 되었을 것이다.

 

프로그램을 만들 때 모듈화의 필요성을 다시금 느끼게 되는 사건이었다.

 

 

728x90
728x90
Comments