1. 프레임워크(Framwork)
- 원하는 기능 구현에 집중하여 개발 할 수 있도록 일정한 형태와 필요한 기능을 갖추고 있는 골격, 뼈대
- 사용자는 이러한 프레임워크 위에 코드를 작성해 애플리케이션 개발
- 소프트웨어의 구체적인 부분에 해당하는 설꼐와 구현을 재사용 가능하도록 협업화된 클래스들을 제공
- 종류 및 예시)
Java 서버 개발에 사용되는 Spring
Python 서버 개발에 사용되는 Django, Flask
안드로이드 앱 개발에 사용되는 Android
아이폰 앱 개발에 사용되는 Cocoa Touch
웹 개발에 사용되는 Angular, Vue.js 등
자바 기반의 JSP를 위한 프레임 워크 Struts
루비로 작성된 MVC패턴을 이용하는 Ruby on Rails
1-1. 프레임워크의 장점
- 획일화
- 확장성 우수, 높은 완성도
- 안정적 유지보수
- 높은 재사용성
1-2. 프레임워크의 단점
- 코드습득을 위한 학습시간이 필요
- 유연한 개발이 어려움
- 프로젝트 용량 증가
2. 라이브러리(Library)
- 소프트웨어를 개발할때 컴퓨터 프로그램이 사용하는 비휘발성 자원의 모임.
▶ 특정 기능을 모아둔 코드, 함수들의 집합이며, 코드 작성시 활용 가능한 도구들을 의미 - 예시)
Python pip로 설치한 패키지/모듈(tensorflow, padas, beautiFulsoup 등)
C++의 표준 템플릿 라이브러리(STL)
Node.js에서 npm으로 설치한 모듈
HTML의 클라이언트 사이드 조작을 단순화하는 JQuery
웹에서 사용한 인터페이스 개발에 사용되는 React.js
JAVA : java.lang, java.util, java.io 등등
JavaScript : JQuery, DOM, AJAX, Date 등
3. 프레임워크 vs 라이브러리
프레임워크 | 라이브러리 | |
공통점 | 개발속도 향상 | |
차이점 | 프레임워크가 제어(제어의 반전) | 개발자에게 제어권 |
한 프로젝트에서 하나만 사용가능 | 한 프로젝트에서 여러개 사용가능 |
참고)
[개발상식] #8. 프레임워크 vs 라이브러리 :: 개발일기🌷 (tistory.com)
[개발상식] #8. 프레임워크 vs 라이브러리
1. 프레임워크(Framework) 원하는 기능 구현에 집중해 개발할 수 있도록 일정한 형태와 필요한 기능을 갖추고 있는 골격을 의미 소프트웨어의 구체적인 부분에 해당하는 설계와 구현을 재사용 가능
beatitudo31.tistory.com
[개발상식] 프레임워크(Framework) 와 라이브러리(Library)의 차이 :: 코딩 공부 일지 (tistory.com)
[개발상식] 프레임워크(Framework) 와 라이브러리(Library)의 차이
🚀 "프레임워크와 라이브러리의 차이를 아시나요?"" "음... 프레임워크는 뼈대이고 라이브러리는 모듈 같은 것이고....😰" "그럼 최근에 사용하신 프레임워크와 라이브러리를 알려주세요." "... ex
cocoon1787.tistory.com
'CS지식 > 개발 상식' 카테고리의 다른 글
[CS지식 - 개발상식]devops란? (0) | 2023.01.25 |
---|---|
[CS지식 - 개발상식] HTTP 메소드 (0) | 2023.01.23 |
[CS지식 - 개발 상식] 메모리 구조 (0) | 2023.01.15 |
[CS 지식 - 개발 상식] Ajax & axios & fetch (0) | 2023.01.12 |
[CS 지식 - 개발 상식] Web Server와 WAS의 차이 (0) | 2023.01.12 |