목차
- framework
1-1. framework 특징
1-2. framework 장단점
1-3. framework 종류
1. framework
라이브러리(library)의 경우는 개발자가 원하는 곳에, 의미한 대로 가져다 쓴다. 반대로 프레임워크(framework)는 제어의 역전에 해당한다. 코드들이 프레임워크에 의해 미리 지정된 위치로 배치 받는다.
- 프레임워크(framework)는 일련의 클래스 묶음, 뼈대, 틀을 제공하는 라이브러리를 구현해 놓은 것으로 개발자로 하여금 소프트웨어 개발 코드를 구현하는 데 있어 시간을 단축하는 것은 물론 코드의 재사용성을 증가시키도록 돕는다.
1-1. framework 특징
- ①. 개발자가 따라야 하는 가이드를 제공한다. 개발자는 가이드에 맞춰서 개발하게끔 되어 있다.
- ②. 개발할 수 있는 범위가 정해져 있다. 프레임워크 안에서 개발하도록 한다.
- ③. 개발자를 위한 다양한 도구 및 플러그인을 지원한다.
1-2. framework 장단점
프레임워크 장점
- 정형화돼 있기에 일정 수준 이상의 품질 기대할 수 있다. 개발자가 처음부터 직접 작성한 코드보다는 오류 발생 가능성이 확률적으로 적다.
- 개발 시간 단축이 가능하다. 구조적인 부분들 역시 개발자가 직접 구현하지 않고 필요한 비즈니스 로직에 맞게끔 고쳐가는 것이기 때문이다.
- 유지 보수에 유리하다. 이미 정해져 있는 틀이기에 어떤 의도로 작성된 코드인지 누구나 유추 가능하며, 모듈화 돼 있기에 수정 역시 쉽게 마련이다.
프레임워크 단점
- 습득에 오랜 시간이 소요된다. 워낙 방대한 양이기에 짧은 시간 동안 마스터 할 수 있는 대상은 아니다. 프레임워크 학습에 있어서도 가이드를 점차 익혀가겠다는 접근 방식을 택하는 것이 적절하다.
- 지나친 의존으로 복사, 붙여넣기 통해 기능을 구현하는 데 그친다면 자칫 개발자 스스로의 역량 발전에는 장애물로 작용할 수 있다. 이는 반대로 프레임워크를 깊이 있게 이해하고 활용해간다면 충분히 개인의 실력 향상으로 이어질 수 있는 점이기도 하다.
1-3. framework 종류
구분 | 종류 | 설명 |
영속성 프레임워크 |
MyBatis Hibernate |
데이터 저장, 조회, 변경, 삭제를 다루는 클래스 및 설정 파일들을 라이브러리화하여 구현한 프레임워크 |
자바 프레임워크 |
Spring Framework 전자정부표준 Spring Struts |
Java EE 통한 웹 애플리케이션 개발에 초점을 맞춰 필요한 요소들을 모듈화하여 제공하는 프레임워크 |
화면 구현 프레임워크 |
Bootstrap Foundation MDL |
front-end를 보다 쉽게 구현할 수 있도록 틀을 제공하는 프레임워크 |
기능 및 지원 프레임워크 |
Log4j JUnit 5 ANT |
특정 기능이나 업무 수행에 도움되는 기능을 제공하는 프레임워크 |
- 영속성 프레임워크(persistence framework, 퍼시스턴스 프레임워크)는 말 그대로 계속 된다는 의미를 담고 있다. 데이터의 저장, 조회, 변경, 삭제를 다루는 클래스 및 설정 파일들을 구현한 것으로 그 특성상 DB와 연동될 수 있는 프레임워크이다. 대표적인 예로 마이바티스(MyBatis)가 있다.
❗ 또 다른 영속성 프레임워크인 Hibernate는 JPA에 해당한다. 사용 비중이 점점 커져가고 있는 추세로, 학습을 더 해보고 싶다면 배워보는 것이 좋다. 해외에서는 상대적으로 JPA가 많이 쓰이며, 아시아 지역에서는 MyBatis가 쓰이고 있다.
'Database' 카테고리의 다른 글
[Oracle/SQLDeveloper] 스크립트 내보내기(export) (0) | 2023.08.13 |
---|---|
[MyBatis] xml | config | mapper | SqlSession (0) | 2022.03.14 |
[UML] 유스케이스 다이어그램 실습 (0) | 2022.03.02 |
[UML] 유스케이스 다이어그램 | 액터 | 포함 관계 | 확장 관계 (0) | 2022.03.02 |
[DB 모델링] 3차 정규화 실습 | 데이터 논리 모델링 (0) | 2022.03.02 |