본문 바로가기

공부 하기

Library 와 framework의 차이점 5가지

다른 사람의 도움을 받아 소프트웨어를 만든다.

라이브러리(Libray)

- 내가 만들고자 하는 프로그램에 필요한 부품(소프트웨어)들을 잘 정리해 둔 (재사용하기 쉽도록) 소프트웨어 

프레임워크(Framewokr)

-  내가 만들고자 하는 프로그램을 모두 다 만들지 않도록 미리 만들어둔 소프트웨어 


GPT 3.5 의 라이브러리, 프레임워크 차이 답변

1. 제어 흐름:

라이브러리: 개발자가 필요할 때 라이브러리의 함수 또는 클래스를 호출하여 사용합니다. 개발자는 애플리케이션의 제어 흐름을 직접 관리합니다.
프레임워크: 개발자가 프레임워크가 제공하는 특정 구조 또는 디자인 패턴에 따라 코드를 작성합니다. 프레임워크가 애플리케이션의 제어 흐름을 관리하며, 개발자는 프레임워크의 규칙에 따라 코드를 작성합니다.

2. 제어의 소유권:

라이브러리: 개발자가 코드의 제어를 가지고 있습니다. 라이브러리는 필요할 때 호출되고, 호출한 코드에 의해 조작됩니다.
프레임워크: 제어가 프레임워크에 있습니다. 프레임워크는 개발자가 작성한 코드를 호출하고 실행합니다.

3. 추상화 수준:

라이브러리: 일반적으로 상대적으로 낮은 수준의 추상화를 제공합니다. 일반적인 작업을 수행하는데 도움이 되는 도구 모음입니다.
프레임워크: 보다 높은 수준의 추상화를 제공합니다. 애플리케이션의 구조와 흐름을 정의하고, 개발자가 그에 따라 코드를 작성하도록 유도합니다.

4. 유연성:

라이브러리: 상대적으로 자유롭고 유연한 사용 방식을 제공합니다. 개발자가 필요한 만큼 라이브러리를 선택하여 사용할 수 있습니다.
프레임워크: 보다 구조화된 방식으로 개발자가 코드를 작성하도록 유도합니다. 따라서 개발자가 프레임워크의 규칙과 구조를 따르지 않으면 사용하기 어려울 수 있습니다.

5. 목적:

라이브러리: 특정 작업 또는 기능을 수행하기 위한 도구 모음으로 사용됩니다.
프레임워크: 애플리케이션의 전체 구조와 흐름을 제공하며, 개발자가 애플리케이션의 세부적인 구현에 집중할 수 있도록 합니다.


jQuery: JavaScript 라이브러리

jQuery는 웹 개발에서 매우 인기 있는 도구 중 하나.
최근에는 네이티브 JavaScript의 발전과 함께 사용 감소

1. DOM 조작 및 이벤트 처리:

jQuery는 문서 객체 모델(DOM)을 쉽게 조작할 수 있는 강력한 기능을 제공합니다. 선택자를 사용하여 요소를 선택하고, CSS 스타일을 변경하거나 이벤트를 처리할 수 있습니다.

2. 크로스 브라우징:

jQuery는 다양한 웹 브라우저에서 일관된 동작을 보장하며, 크로스 브라우징 이슈를 해결하는 데 도움이 됩니다. 개발자가 웹 애플리케이션을 다양한 브라우저에서 동작시킬 때 일반적으로 발생하는 문제들을 해결하는 데 도움이 됩니다.

3. 애니메이션 및 AJAX 처리:

jQuery는 애니메이션 효과를 쉽게 추가할 수 있도록 지원합니다. 또한 AJAX 요청을 보내고 응답을 처리하는 기능을 제공하여 동적인 웹 애플리케이션을 구축하는 데 유용합니다.

4. 플러그인 생태계:

jQuery는 다양한 플러그인들을 포함한 풍부한 생태계를 가지고 있습니다. 이러한 플러그인들은 다양한 기능을 제공하며, 개발자가 더 많은 기능을 추가할 수 있도록 도와줍니다.

5. 단순한 문법:

jQuery는 JavaScript보다 간단한 문법을 제공하며, 일반적으로 코드를 더 간결하게 작성할 수 있도록 도와줍니다. 이는 개발자가 더 빠르게 작업할 수 있도록 도와줍니다.