카테고리 없음

프레임워크(framework)와 라이브러리(Library), 아키텍처(Architecture) 개념

강발랄 2023. 6. 22. 16:00

프레임워크(Framework)의 정의 

프레임워크는 사전적 정의에 따르면 소프트웨어 어플리케이션이나 솔루션의 개발을 수월하게 하기 위해 소프트웨어의 구체적 기능들에 해당하는 부분의 설계와 구현을 재사용 가능하도록 협업화된 형태로 제공하는 소프트웨어 환경을 말함

 

개발 시 필수적인 코드, 알고리즘, 데이터베이스 연동 등과 같은 기능들을 위해 어느정도 뼈대(구조)를 제공해주는 것

틀 위에 프로그래머가 코드를 작성함

틀을 제공해 주기 때문에, 객체 지향 개발을 하면서 일관성 부족 등의 문제를 해결

 

개발을 좀 더 쉽게 하기 위해 소프트웨어의 기능들을 모아서 그 기능들을 편리하게 쓸 수 있게 제공하는 것이 프레임워크

클래스와 인터페이스의 집합 Spring, Node.js 등 있음

 

라이브러리(Library)

- 특정 기능에 대한 도구 or 함수들을 모은 집합

컴퓨터 프로그램이 사용하는 비휘발성 자원의 집합을 말함

내장함수가 라이브러리 예시 Math.abs()등 이렇게 단순하게 활용할 수 있는 것들을 말함

프로그래머가 개발하는데 필요한 것들을 모아둔 것이다.

개발을 하며 필요 시 라이브러리를 호출 (개발자 중심)

 

아키텍쳐(Architecture)

시스템 구정 및 동작 원리를 나타내는 것 

플랫폼에 맞는 설계

MVC(Model View Controller)가 시스템의 구성과 동작원리를 잘 보여주는 아키텍처의 예시 중 하나이다

 

 

 

프레임워크는 코드와 라이브러리에 대한 흐름을 모두 가지고 있고, 라이브러리는 반면 개발자가 부르고 흐름을 제어한다는 차이가 있다! 이것도 결국 어제 포스팅했던 제어의 반전(IoC)에 대한 이해가 있어야하는 개념이다! https://suzyalrahala.tistory.com/29

 

 

 

https://linsaeng.tistory.com/35

 

 

아키텍처(Architecture)란?

안녕하세요 린생입니다. 개발을 이제 막 시작한 입문 개발자인 제가 갑자기 Architecture(아키텍처)라는 것이 궁금해졌습니다. 다들 "Architecture(아키텍처)가 뭐야?" 라고 하면 잘 설명을 할 수 있나요

linsaeng.tistory.com