본문 바로가기

개발/Framework

[Framework] 프레임워크 / 특징 / 장단점 / 종류

 

< 프레임워크 >


- 개발자가 보다 편리한 환경에서 개발할 수 있도록 제공하는 뼈대, 틀
- 소프트웨어 개발의 입장에서는 공통으로 사용하는 라이브러리 / 개발도구 / 인터페이스 등등..

 


< 프레임워크 필요성 >

 

예전) EJB -> 기술이 어렵고 할 게 많았음, 권고안 - 회사마다 지키는 방법이 달랐음


- 웹프로그램의 규모가 커짐 => 거대하고 복잡도가 높은 프로젝트를 완성시키기 위해 많은 사람들이 필요함
=> 개발자들이 "통일성"있게 "빠르고", "안정적"으로 개발하기 위한 한가지 방법으로 프레임워크를 사용
=> 생산성 향상에 큰!! 도움이 된다.

 



< 프레임워크의 특징 >


- 자유롭게 설계하고 코드를 짜는 것이 아니라 프레임워크가 제공하는 가이드대로 설계하고 코드를 짜야함
- 개발할 수 있는 범위가 정해져있음
- 개발자를 위한 다양한 도구 / 플러그인들이 지원됨

 

 


< 프레임워크의 장단점 >


- 장점 : 개발 시간을 줄일 수 있음
             오류로부터 자유로워질 수 있음
- 단점 : 너무 의존하다보면 개발능력이 떨어져서 프레임워크 없이 개발하는것이 어려워짐
              습득하는데까지 시간이 오래걸릴 수 있음

 

 

< 프레임워크 종류 >


- 영속성 : 데이터 관련한 (CRUD)기능들을 편리하게 작업 할 수 있도록 하는 프레임워크

    ex) MyBatis, Hibernate...

- 자바 : 웹 어플리케이션에 초점을 맞춰 필요한 요소들을 모듈화해서 제공하는 프레임워크

    ex) Spring, struts...
- 화면구현 : Front-end를 보다 쉽게 구현할 수 있게 틀을 제공해주는 프레임워크

    ex) Bootstrap...
- 기능 및 지원 : 특정 기능이나 업무수행에 도움을 주는 기능을 제공해주는 프레임워크

    ex) Log4j, JUnit...