프레임워크
프레임워크란 프로그램을 만들 때 필요한 여러 기능을 쉽게 구현하도록 도와주는 도구입니다. 예를 들어 웹 프레임워크로는 로그인이나 댓글처럼 자주 쓰는 기능을 제공해 개발자가 웹 사이트를 쉽게 만들도록 도와줍니다.
대표적인 프레임워크
종류 | 설명 | 관련 사이트 |
노드제이에스(Node.js), 익스프레스(Express) |
노드제이에스는 서버에서 자바스크립트를 실행할 수 있는 환경, 즉 플랫폼이라고 생각하면 됩니다. | nodejs.org/ko,` expressjs.com |
자바(Java), 스프링(spring) |
자바는 오랫동안 백엔드 개발용으로 사랑받는 언어이고, 그만큼 관련 커뮤니티나 오픈 소스가 많습니다. 자바를 사용하면 안드로이드 앱을 개발할 수도 있고, 셋톱 박스나 하드웨어용 애플리케이션을 만들 수도 있습니다. 자바의 웹 개발 프레임워크로는 스프링을 많이 사용합니다. | spring.io |
파이썬(Python), 장고(Django) |
파이썬은 배우기도, 사용하기도 쉬워서 개발 입문자가 처음 공부할 때 선택하는 언어입니다. 특히 데이터를 많이 다뤄야 하는 분야에서는 파이썬이 훨씬 유리합니다. 백엔드 개발을 할 때 파이썬의 프레임워크로는 장고를 사용합니다. | djangoproject.com |
자바스크립트(JavaScript), 뷰(Vue) |
웹 애플리케이션의 사용자 인터페이스 를 만들기 위해 사용하는 오픈 소스 프로그레시브 자바스크립트 프레임워크 이다. | vuejs.org |
라이브러리
라이브러리는 사전에 만들어진 코드의 집합이라고 할 수 있다. 개발자는 필요시 공개된 라이브러리를 자신의 프로그램에 호출하여 사용할 수 있다. 쉽게 말해 재사용이 필요한 기능으로 반복적인 코드 작성을 없애기 위해 언제든지 필요한 곳에 호출하여 사용할 수 있도록 Class나 Function으로 만들어진 것입니다.
대표적인 라이브러리
종류 | 특징 | 관련 사이트 |
자바스크립트(JavaScript), 제이쿼리(jQuery) |
DOM을 활용해 웹 요소를 조작하기 쉽고 사용하기 편리한 라이브러리 도구입니다. | jquery.com |
자바스크립트(JavaScript), D3.js |
웹 브라우저에서 실시간으로 변하는 정보를 시각적으로 표시하기에 적합한 라이브러리 도구입니다. | d3js.org |
자바스크립트(JavaScript), 부트스트랩(Bootstrap) |
웹 사이트 디자인을 쉽게 만들어 주는 라이브버리 도구입니다. CSS로 PC 태블릿 PC, 휴대 전화 등에서 동작하는 반응형 디자인을 만들 수 있게 해줍니다. | getbootstrap.com |
파이썬(Python), 판다스(pandas) |
데이터 조작 및 분석을 위한 Python 프로그래밍 언어 용으로 작성된 소프트웨어 라이브러리입니다. | pandas.pydata.org |
라이브러리와 프레임워크의 차이점
라이브러리 도구(toolkit)와 프레임워크는 여러 가지 차이점이 있지만 가장 큰 차이는 개발 흐름의 주도권을 누가 가지고 있는가에 달렸습니다. 개발자가 코딩할 때 라이브러리는 자신에게 필요한 기능만 사용해도 됩니다. 즉, 개발 주도권이 개발자에게 있습니다. 반면에 프레임워크는 개발 주도권이 프레임워크에게 있습니다. 그래서 웹 개발을 시작하는 방법부터 기능을 구현하는 모든 것을 프레임워크에서 정해 놓은 대로 따라야 합니다.
'Programming > 지식' 카테고리의 다른 글
로그 (0) | 2022.10.19 |
---|---|
알고리즘 (0) | 2022.10.15 |
정렬 알고리즘 (0) | 2022.10.08 |
결합도와 응집도 (0) | 2022.10.06 |
OOP (0) | 2022.10.04 |