개발관련 개념정리

함수, 라이브러리, 엔진, 프레임워크 그리고 플랫폼

devMarco 2018. 9. 13. 22:38

프레임워크와 엔진 용어가 헷깔려서 용어 정의를 찾아보았다.

"함수, 라이브러리, 엔진, 프레임워크 그리고 플랫폼"
http://egloos.zum.com/adept/v/2329239

위 블로그에서 엔진과 프레임웍의 차이가 모호하여 자료를 더 찾아보았다.

엔진이 단순히 라이브러리의 집합이라고 보기는 어렵기 때문이다.
아래의 사이트에서 더 좋은 정의를 찾았다.

http://www.gamefromscratch.com/post/2015/06/13/GameDev-Glossary-Library-Vs-Framework-Vs-Engine.aspx


라이브러리

라이브러리는 나중에 재사용하기 위해 모아놓은 코드와 데이터 모음이다.

프레임워크

라이브러리와 툴들을 특정 목적에 사용하기 위해 모아놓은,
라이브러리의 모음이 프레임워크다.
개발자는 프레임워크의 규칙에 맞게 기능을 사용하고, 구현해야 한다.

엔진

엔진은 특정 목적의 개발에 특화된 프레임워크다. 프레임워크가 좀 범용적인 느낌이라면,
엔진은 정말 "난 이것에 특화돼 있어"라는 느낌을 준다. 
예를 들어, 게임 엔진에는 게임 개발에 필요한 프레임워크 뿐만 아니라 개발 환경, 
에셋 스토어 등이 포함된다. 게임 개발을 위한 플랫폼이라고도 볼 수 있다.
게임 계열에서 주로 엔진이란 말을 많이 쓰는 것 같다.