본문 바로가기
프로그래밍

프레임 워크란??

by 지나팩 2021. 8. 15.

개발을 하며 많이 듣게될 단어인 프레임 워크에 대해서 알아보도록 하겠습니다. 어떠한 일을 함에 있어 일정한 틀이나 규칙없이 자유롭게 일을 할 수 있다면 그 나름대로의 장점은 있겠지만 만약 그 일을 누군가가 시행착오 끝에 해결할 수 있는 틀을 만들어놓았다면 굳이 처음부터 시행착오를 겪으며 일 처리를 할 필요가 없겠죠? 이렇게 어떠한 목적에 맞게끔 틀이나 규칙을 만들어 둔 것이 프레임 워크입니다. IT개발 쪽에서 프레임 워크라고 한다면 개발 목적에 맞는 라이브러리들을 모아둔 것이라고 볼 수 있습니다. 라이브러리 역시 따로 포스팅 하겠지만 특정 기능을 재사용하기 편하게 모아놓은 코드 집합이라고 보시면 되겠습니다.

게임 개발을 예로 들어 게임을 만들기에 적합한 프레임 워크를 사용한다면 개발 시간이 대폭 줄어들게 됩니다. 게임을 만듬에 있어 필요한 기본적인 구조와 반드시 필요한 시스템들을 프레임 워크가 제공을 하기에 개발이 한결 수월해집니다. 프레임 워크에서 지정해 둔 각종 규칙들을 지켜야한다는 단점이 있기는 하나 많은 시간이 절약된다는 것만으로도 프레임 워크를 사용해야 할 이유론 충분하겠죠. 물론 세상에 없는 새로운 걸 만든다면 직접 프레임 워크를 만들어야 할 수도 있겠지만....

 

조금 더 이해를 돕기위해 아래의 이미지처럼 RPG게임 프레임 워크가 있다고 생각해 봅시다.

만약 레이싱 게임을 개발한다고 하면 RPG 게임 프레임 워크는 틀부터가 레이싱 게임과 맞지가 않습니다. 물론 게임으로써 필요한 기본적인 시스템을 프레임 워크에서 가져다 쓸 순 있겠지만 레이싱 게임 맞게끔 수정을 하거나 새로이 만들어야 합니다. 더불어 프레임 워크 자체를 수정할 수 없다면 애초에 프레임 워크를 잘 못 쓴 것이죠. 하지만 RPG게임을 개발한다고 하면 RPG 게임 프레임 워크보다 좋은 선택지는 없을 것입니다.

 

 

보통 게임 개발에선 게임 개발에 특화된 엔진을 사용하는데 이 엔진과 프레임 워크의 차이점은 있지만 이 역시 프레임 워크라고도 볼 수 있습니다. 각 엔진의 규칙과 틀이 있고 사용자는 이 규칙과 틀 안에서 개발을 해야합니다. 물론 엔진은 더욱 목적에 맞게끔 제작된 것이긴 합니다. 이 차이점에 대해선 엔진에 대해 따로 포스팅을 하며 알아보도록 하겠습니다.

댓글