전자정부 프레임워크를 알기 앞서 스프링 프레임 워크에 대해서 알아야 한다. 비전공자들도 쉽게 이해할 수 있도록 예시와 비유를 들어 설명하도록 하겠다. 먼저 프레임워크에 대해서 이해해야한다.
프레임워크 = 작업대
프레임워크는 작업대라고 생각하면 된다. 알기쉽게 자동차 생산공정과 비교해보자
자동차는 여러 부품들의 집합으로 이루어져있다. 소나타 라는 차량을 만들기 위해도어, 타이어, 핸들 등 조립해야할 부품이 수천만가지가 될텐데 내게 십자 드라이버 밖에 없다면 많은 노력과 시간이 걸릴것이다.
반면에 현대자동차의 공장같은 설비를 가지고 있다면 도어 장착로봇팔, 용접로봇팔, 도색로봇팔 등 여러 도구들이 작업을 할것이다. 물론 이런 설비를 사용하면 시간과 노력은 대폭 단축된다.
위처럼 드라이버 하나로 만드느냐, 로봇과 같은 대규모 설비를 이용하느냐는 바로 작업대(=프레임워크)의 차이가 주는 영향이 크다. 이로써 얻는 장점은 그랜저라는 다른 차량을 생산한다고 했을때 기존의 설비들을 이용할 수 있다는 장점이 있다.
소프트웨어 개발도 위에서 언급한 자동차 생산공정과 매우 유사하다. 어떤 대규모(기업에서 사용하는/Enterprise)프로그램을 만들기위해서 세부 기능들이 있을텐데, 그걸 그냥 무식하게 손코딩으로 쭈르륵 개발하는 방법도 있다. 하지만 로그인, 로그처리 등 같은기능이나, 유사한 기능에대해서 중복해서 구현해야하는 단점과 다른 프로젝트에서도 또 비슷한 기능들을 또 구현하고 있고 이런 노가다성이 발생한다. 마치 위 자동차 예시에서 나온 드라이버 하나로 자동차를 조립하는 느낌.
이런 느낌?
하지만 프레임워크를 쓰면 자동차 예시에서 나왔던 최신식 공장설비를 도입해서 만드는것과 같다. 소프트웨어 개발에도 쉽게 개발할 수 있도록 도와주는 설비인 일명 프레임워크가 있다.
프레임워크를 이용하면 프로그램을 만드는데(보통 기관/기업에서 사용하는) 필요한 대부분의 기능이 이미 구현이 되어있어 내가 필요한 기능만 따와서 몇줄 적으면 기능이 구현된다. 드라이버로 처음부터 끝까지 만들필요가 없다는 말이다.
프레임워크 = 소프트웨어 개발을 쉽개 해주는 작업대
#스프링 #Spring #프레임워크 #Framework #전자정부프레임워크 #프레임워크란 #정의 #입문 #강좌 #예제