나27 2017. 11. 8. 10:00
반응형

DLL 이란?


dynamic-link library, DLL)는 마이크로소프트 윈도우에서 구현된 동적 라이브러리


내부에는 다른 프로그램이 불러서 쓸 수 있는 다양한 함수들을 가지고 있는데확장DLL인 경우 클래스를 가지고 있기도 한다


windows 에서 사용되는 공유 라이브러리

 

여러 프로그램을 만들어 배포할떄 자신이 만든 함수를 배포할떄마다 함수를 직접넣을 필요없이 dll에 함수를 저장하여 공유하면 된다

 

한 프로그램이라해도 여러 프로그램으로 나누어서 배포 해야하는 경우도 있는데 그때 같은 함수가 사용된다면 dll로 배포할수 있다

 

프로그램의 용량을 줄이기 위해서도 사용


예로 메모장이나 그림판, 한글워드 등 다양한 윈도우용 프로그램을 보면 파일열기 기능이 있는데, 동일한 창이 뜨는것을 보실수 있습니다.


동일한 파일열기 창이 뜨는것은 각 프로그램들이 윈도우에서 제공하는 시스템 라이브러리를 사용하기 때문


각 프로그램(.exe)에서 필요한 기능을 그때그때 윈도우에서 찾아서 사용하게 되는데


이 시스템 라이브러리 파일이 .DLL 형태로 윈도우 상에 존재하게 된다


실행파일인 (.exe) 파일에 모든 기능을 넣지 않고별도의 DLL파일로 저장할 수 있다

 

정보 또는 함수의 라이브러리


때로는 수백 개의 함수를 저장하고 있고, 프로그램이 연결해서 필요에 따라 함수의 일부 또는 전체를 사용할 수 있는 방식으로


동적으로 연결됨


이러한 방식의 이점은 프로그램이 자신의 파일에 함수 하나하나를 포함할 필요가 없으며, 대신 공유된 DLL을 이용함으로써 


프로그램 크기를 줄일 수 있다는 것

 

프로그램 자신의 파일에 모든 함수를 넣는게 아니라 이미 만들어져있거나 공유될 수 있는 DLL 파일에 함수를 넣어 사용하면


해당 프로그램의 소스를 줄일 수 있으며 다른 프로그램에서도 DLL을 공유해서 사용하게되면 윈도우 전체의 용량을 줄일 수 


있다

 

프로그램들이 가져다 쓸수있는 유용한 함수들의 집합


정적 링크는, 코드를 실행파일에 복사하기 때문에 그냥 단독으로 실행가능하다.

 

다만 동적 링크는 실행시에 라이브러리가 실행파일에 연결되기 때문에 DLL파일이 꼭 있어야 한다.

 

.dll은 Winform이나 WPF들을 전부 포함할 수 있다


참조

https://ko.wikipedia.org/wiki/%EB%8F%99%EC%A0%81_%EB%A7%81%ED%81%AC_%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%9F%AC%EB%A6%AC

 

반응형
댓글수0