ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Framework & Library
    Thinking 2018. 3. 25. 02:46



    - Framework(프레임워크)



    Framework는 Application 개발시 코드의 품질, 필수적인 코드, 알고리즘, 암호화, 데이터베이스 연동 같은 기능들을 어느정도 구성이 되어있는 뼈대(구조)를 제공하도록 만들어진걸 Framework라고 한다.

    - Library(라이브러리)



    Library는 특정 기능에 대한 API(도구 / 함수)를 모은 집합을 Library라고 합니다.

    그 기능을 사용하기위해 불러와서 호출하는 방식을 생각하시면 쉬울듯 합니다





    - Framework와 Library의 차이



    Framework는 단지 미리 만들어 둔 반제품이나, 확장해서 사용할 수 있도록 준비된 추상 Library의 집합이 아니다.

    Framework가 어떤 것인지 이해하려면 Library와 Framework가 어떻게 다른지 알아야 한다.


    Library를 사용하는 애플리케이션 코드는 애플리케이션 흐름을 직접 제어한다. 

    단지 동작하는 중에 필요한 기능이 있을 때 능동적으로 Library를 사용할 뿐이다.


    반면에 Framework는 거꾸로 애플리케이션 코드가 Framework에 의해 사용된다.

    Framework에는 분명한 제어의 역전 개념이 적용되어 있다.

    애플리케이션 코드는 Framework가 짜놓은 틀에서 수동적으로 동작해야 한다.


    어플리케이션의 flow를 누가 제어하는냐가 Framework인지 Library인지 구분


    Framework는 전체적인 흐름을 스스로가 쥐고 있으며 사용자는 그 안에서 필요한 코드를 짜 넣으며 반면에  Library는 사용자가 전체적인 흐름을 만들며  Library를 가져다 쓰는 것이라고 할 수 있다.

    다시 말해,  Library는  Library를 가져다가 사용하고 호출하는 측에 전적으로 주도성이 있으며 Framework는 그 틀안에 이미 제어 흐름에 대한 주도성이 내재(내포)하고 있다.

    Framework는 가져다가 사용한다기보다는 거기에 들어가서 사용한다는 느낌/관점으로 접근할 수 있다.



    http://webclub.tistory.com/458
    http://web-front-end.tistory.com/63





    'Thinking' 카테고리의 다른 글

    Slack  (0) 2018.04.07
    Git 과 GitHub  (1) 2018.04.06
    URI & URL  (1) 2018.04.02
    CDN Server  (0) 2018.04.01
    Front end & Back end  (0) 2018.03.25
Designed by Tistory.