ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [PROGRAMMING] 라이브러리, 프레임워크 용어 간단 정리
    programming 2020. 7. 26. 18:50

    라이브러리

    컴퓨터 프로그램에서 자주 사용되는 부분 프로그램들을 모아 놓은 것

    재사용이 가능한 필요 기능으로 반복적인 코드 작성을 없애기 위해 언제든지 필요한 곳에서 호출하여 사용할 수 있도록 클래스나 함수로 만들어진 것

     

    장점

    1. 코드의 중복을 줄임 ( 가독성, 유지보수 향상 )

    2. 프로그래밍 시간 단축 ( 생산성 향상 )

     

    프레임워크

    어떤 프로그램을 만들기 위한 기본 틀

    소프트웨어의 구체적인 부분에 해당하는 설계와 구현을 재사용이 가능하게끔 일련의 협업화된 형태로 클래스들을 제공하는 것

     

    장점

    1. 프로그램을 편리하고 빠르게 만들 수 있음 ( 생산성 향상 )

    2. 코드가 체계적이어서 유지보수에 안정적

     

    단점

    1. 코드를 습득하고 이해하는데 오랜 시간이 걸린다.

    2. 이미 짜여진 틀이 있다보니 개발자가 자유롭고 유연하게 개발하는 데에는 한계가 있다.

     

     

    프레임워크 vs. 라이브러리

    1. 라이브러리는 개발자가 모든 개발의 흐름을 제어한다. 개발자가 주가 되어 필요한 기능을 호출, 능동적으로 사용하는 데에 반해 프레임워크는 개발자가 아닌 프로그램이 흐름을 제어한다는 데에 있다. 한 마디로 프로그램의 주도성이 누구에게 있는가의 차이.

    2. 프레임워크는 개발자가 개발을 하기 위해 지켜야하는 틀이고 라이브러리는 개발자가 개발을 하기위해 필요로 하는 미리 구현이 되어있는 대상을 뜻함

     

     

    모듈

    프로그램을 구성하는 구성 요소의 일부.

    관련된 데이터와 함수들이 묶여서 모듈을 형성하고 파일 단위로 나뉘는 것이 일반적.

    기능별로 나뉘어지는 프로그램을 가르켜 모듈이라 함

     

    SDK ( Software Development Kit )

    소프트웨어 개발 도구 모음

    SDK 안에는 개발에 도움이 될 개발 도구 프로그램, 디버깅 프로그램, 문서, API 등이 들어있음.

     

    API

    응용프로그램(개발자가 만든 서비스)에서 사용할 수 있도록 운영 체제나 프로그래밍 언어가 제공하는 기능(ex. 카카오에서 제공하는 api의 기능들, Naver에서 제공하는 api의 기능들)을 제어할 수 있게 만든 인터페이스

    프로그램과 또 다른 프로그램을 연결해주는 일종의 다리역할을 하는 것

    'programming' 카테고리의 다른 글

    [PROGRAMMING] RESTful API설계  (0) 2020.07.26
    [PROGRAMMING] Gradle  (0) 2020.07.25
    [PROGRAMMING] Maven  (0) 2020.07.25
    [PROGRAMMING] 빌드와 빌드 도구  (0) 2020.07.25
    [PROGRAMMING] 아파치와 톰캣, 드디어 이해했다.  (0) 2019.09.30
Designed by Tistory.