ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Module, Library, Framework, SDK, API 간단 용어 정리
    웹/기본 2016. 11. 11. 13:11

    이 글로 알 수 있는 것

    • 모듈, 라이브러리, 프레임워크, Software Development Kit(SDK), Application Programming Interpace(API)에 대해 정확히 알 수 있다.

    Module

    • 모듈
      • 컴포넌트(component), 구성요소, 부품, 성분
      • 프로그램을 구성하는 한 부분으로 볼 수 있다.

    Library

    • 라이브러리
      • 컴퓨터 프로그램에서 자주 사용되는 부분 프로그램들을 모아놓은 것이다.
    • 라이브러리 분류
      • 정적 라이브러리
      • 동적 라이브러리
        • 동적 링크 라이브러리
        • 동적 로드 라이브러리
    • 정적 라이브러리
      • 컴파일러가 소스파일을 컴파일할 때 참조되는 프로그램 모듈
      • 빌드 시에 라이브러리가 제공하는 코드를 실행파일에 넣는 라이브러리
      • 시스템환경이 변해도 앱에는 아무 영향 없으며, 완성된 앱을 안정적으로 사용 가능하다.
      • 사용하는 모든 오브젝트 코드를 실행파일에 내장하므로, 메모리에 로드되는 앱 코드가 많아진다.
    • 동적 라이브러리
      • 프로그램 수행 도중 해당 모듈이 필요할 때 호출해 사용하는 프로그램 모듈
      • 앱을 빌드할 때 존재하지 않던 라이브러리도 사용 가능하다.
      • 플러그인 형식으로 경로를 설정해야 하며, 설치가 따로 필요하다.
    • 동적 링크 라이브러리
      • 실행파일과 관련된 라이브러리코드를 모두 메모리에 읽어들여 호출관계를 조정한 다음 앱이 실행된다.
    • 동적 로드 라이브러리
      • 실행파일 실행 시 읽어 들이지 않은 라이브러리를 추가적으로 이용하는 라이브러리

    Framework

    • 프레임워크
      • 문제를 풀기 위한 추상적 설계를 구체화한 클래스의 집합.
      • 설계, 구현을 재사용하게끔 협업화된 형태로 클래스를 제공하는 것.
      • 라이브러리와 달리 앱의 틀과 구조를 결정하며, 그 위에 개발된 개발자의 코드를 제어한다.
      • 구체적이고, 확장 가능한 기반 코드를 보유한다.
      • 설계자가 의도하는 여러 디자인 패턴의 집합으로 구성돼있다.

    API

    • API, Application Programming Interface
      • 앱을 개발하기 위한 규칙.
      • 앱에서 사용할 수 있도록, 운영체제나 프로그래밍언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스.
      • 개발자를 위한 인터페이스.
      • 앱 간에 연동의 개념이 많아지자 서로 다른 앱 간 기능을 공유할 수 있도록 개발한다.
      • SDK와 거의 같은 뜻으로 쓰인다.

    SDK

    • SDK, Software Development Kit
      • 소프트웨어 개발 도구 모음
      • SDK 안에는 개발에 도움이 될 개발 도구 프로그램, 디버깅 프로그램, 문서, API 등이 있다.

    Framework와 Library의 차이점은?


Designed by Tistory.