Delphi 패키지 개발방식과 DLL개발방식의 차이와 장단점
2018.05.02 17:51
수정이 빈번이 일어나는 화면이나 공통 모듈 개발시 패키지로 개발할 것인지 DLL로 개발 할 것인지 고민하고 질문하시는
경우가 종종 있습니다.
패키지(Package)도 미리 컴파일된 모듈 일종의 DLL입니다.
패키지 작성 방법은 아래 링크를 참조하시기 바랍니다.
http://edn.embarcadero.com/article/27178
아래의 표는 패키지와 DLL 방식의 장단점을 정리해본 표입니다. 둘 중 어느 방식으로 개발하는가는 업무 상황에 따라
그때 그때 달라집니다.
고려해야할 사항 | DLL | Package |
호출방법/메모리 사용 |
LoadLibrary (동적로드인 경우) |
LoadPackage (내부적으로 LoadLibrary를 호출합니다. 때문에 메모리 사용면에서는 별 차이가 없습니다.) |
라이브러리 안에서의 사용범위 | Function이나 Procedure만 호출 가능 |
type 절에 선언된 것들을 외부에서 사용할 수 있다는 장점이 있습니다. (예:화면클래스 등) |
타 언어간의 호환 |
다른 언어 다른 툴에서 만들어진 DLL을 호출 할 수 있습니다 |
볼랜드제품(델파이 C++빌더)에서만 사용 가능합니다. |
델파이/C++ 버전 |
새 버전으로부터 독립적 (수정이 없는 경우) |
새로운 버전에서 재 컴파일 해야합니다. |
배포의 용이성 |
여러개의 라이브러리를 하나로 묶을 수 없습니다. |
여러개의 패키지를 하나로 묶어서 배포할 수 있습니다. (배포가 용이) |