[C#, 유니티] 동적 라이브러리 (feat. dll)
2022. 11. 16. 19:36ㆍ코딩 2막 <C#개념편>
728x90
DLL(동적 링크 라이브러리)?
소프트웨어 개발에서 자주 쓰고 기초적인 함수들을 중복 개발하는 것을 피하기 위해 표준화된 함수 및 데이터 타입을 만들어서 모아 놓은 것. 즉, 자주 사용되는 표준적인 함수를 매번 직접 작성해서 사용하는 것은 지나치게 시간 소모적이므로 표준화할 수 있는 함수를 미리 만들어서 모아 놓은 것.

실행 파일에서 해당 라이브러리의 기능을 사용 시에만,
라이브러리 파일을 참조하여(혹은 다운로드받아) 기능을 호출
Dll의 장점 | 내용 |
손쉬운 배포와 설치 | - DLL 내의 함수를 업데이트하거나 수정해야 하는 경우 DLL을 배포하고 설치할 때 프로그램을 DLL과 다시 연결하지 않아도 된다. - 여러 프로그램이 같은 DLL을 사용하는 경우에는 모든 프로그램에 업데이트나 수정 내용이 적용된다. |
프로그래머들의 분담 작업이 용이하며 재사용성도 뛰어남 | 코드의 양이 적어지므로 디버깅도 용이 |
더 적은 리소스 사용 | 한 코드를 여러 프로그램이 동시에 사용하기 때문에 메모리가 절약된다. 그리고 사용되는 디스크 공간을 줄일 수 있다. |
모듈식 아키텍처 활용 | DLL을 사용하면 모듈식 프로그램을 효율적으로 개발할 수 있다. 또한 여러 언어 버전이 필요한 큰 프로그램이나 모듈식 아키텍처가 필요한 프로그램을 개발할 수 있다. |
클래스 라이브러리 생성
클래스를 만들면 다음과 같이 나온다
생성한 프로젝트 ClassLibrary1에 UnityEngine에 대한 dll을 가져와야 쓸 수 있다
Dll 사용시 유의사항 |
가끔 어떤 프로그램 사용시 특정 DLL 파일을 어느 위치에 저장시키라고 하는 경우가 있는데 해당 프로그램을 신뢰할 수 있는지 확인해 보아야 한다. 해로운 DLL 파일일 수 있기 때문이다. |
DLL 파일을 함부로 이동시키면 프로그램이 정상적으로 작동하지 않을 수 있다. |
공감해주셔서 감사합니다
728x90
'코딩 2막 <C#개념편>' 카테고리의 다른 글
[C#, 유니티] Unity LifeCycle(생명주기) (4) | 2022.11.20 |
---|---|
[C#, 유니티] factoryMethod와 AbstractFactory의 차이 (2) | 2022.11.03 |
[C#, 유니티] 리플렉션(Reflection) (0) | 2022.10.11 |
[C#, 유니티] 클래스 다이어그램 <UML> (0) | 2022.09.26 |
[C#, 유니티] Unity_Git (버전 관리 시스템) (0) | 2022.09.05 |