SMS처리 도우미
E-mail
  ldwin@naver.com
제목
  코딩 용어 정리 2탄 (라이브러리와 프레임워크는 뭐가 다른거지?) (From. 소스놀이터)


1. 라이브러리란, 기능 작성을 더 빨리 쉽게 수행하도록 미리 작성해 둔 클래스, 함수 등의 집합을 의미합니다.

동일한 기능을 만들때마다 처음부터 작성하지 않고 미리 작성해둔
함수로 이루어진 라이브러리를 통해 효율적으로 처리할 수 있는 거죠.
어떤 언어라도 다양한 라이브러리가 존재하며
따라서 어떤 라이브러리가 있는지 어떤 것들이 있는지 잘 알고 있으면
작업이 매우 쉬워집니다.
예를 들어, FTP 서비스를 이용해 타서버에 파일을 업로드한다고 가정했을 때
모든 내용을 직접 코딩하면 상당한 시간과 노력이 듭니다.
FTP 서비스를 이해해야 하고, 여러 알고리즘을 계획하고
예외사항에 대처해야 합니다.
하지만, 이런 기능을 제공하는 라이브러리가 존재하며
프로그래머는 그 라이브러리의 사용법만 익히면 되는 거죠.
또한 해당 라이브러리는 시간이 지남에 따라 업데이트되므로
FTP와 관련된 새로운 이슈에 대해 학습하지 않아도 됩니다.
마치 요리할 때 미리 준비된 양념 세트와도 비슷한데
양념 세트를 사용하면 여러 복잡한 양념들을 하나하나 준비하지
않고도 빠르고 쉽게 맛있는 요리를 만들 수 있는 것과 같죠.



2. 그럼 프레임워크란 무엇입니까?

간단히 골조, 틀이라고 할 수 있습니다.
코딩을 프레임워크 즉 틀 내에서 하라는 뜻입니다.
방을 정리할 때, 물건들을 분류해 기능별로 위치를
지정해 두면 물건을 찾을 때 편리합니다.
그처럼 전반적인 틀을 제공하는 것이 프레임워크입니다.
예를 들어, A라는 폴더에는 데이터베이스 관련 파일만 정리하고
B라는 폴더에는 서비스 단의 파일만 정리할 수 있습니다.
코딩할 때에도 특정한 형식을 따르게 함으로
전체 파일들이 잘 정리될 수 있죠.
이와 같은 것이 프레임워크입니다.
프로그래머는 이 "틀"안에서 필요한 기능과 컴포넌트를
더욱 효율적으로 구현할 수 있는 거죠.


 

그럼 라이브러리와 프레임워크의 실제 예를 들어보겠습니다.

A. "라이브러리"의 예:
1) NumPy: Python에서 수학적인 계산을 돕는 라이브러리입니다.
행렬 연산이나 통계 연산 등 복잡한 수학적 기능을 제공합니다.
2) jQuery: JavaScript 라이브러리로, 웹 페이지에서 DOM 조작이나 이벤트 핸들링 등을 간편하게 할 수 있게 돕습니다.
3) Pandas: Python에서 데이터 분석과 관련된 다양한 기능을 제공하는 라이브러리입니다. 데이터프레임이라는 데이터 구조를 제공하여 데이터를 효율적으로 관리할 수 있습니다.

B. "프레임워크"의 예:
1) Django: Python 웹 프레임워크로, 웹 애플리케이션 개발을 빠르고 쉽게 할 수 있도록 돕습니다. 이 프레임워크를 사용하면, 웹사이트의 기본 구조를 빠르게 설정할 수 있습니다.
2) Ruby on Rails (RoR): Ruby 언어를 위한 웹 애플리케이션 프레임워크입니다. MVC (Model-View-Controller) 패턴을 따르며, 웹 개발을 단순화하고 빠르게 해줍니다.
3) Spring: Java를 위한 프레임워크로, 엔터프라이즈 레벨의 애플리케이션을 개발할 때 사용됩니다. 다양한 도구와 기능들을 제공하여 개발 프로세스를 지원합니다.

분명, 이러한 라이브러리와 프레임워크를 잘 활용하면 코딩 레벨을 상당히 향상시킬 수 있습니다~

트위터, 페이스북 공유 부탁드립니다~!
트위터   페이스북


  • 패스워드
           
X