모바일 프레임워크(Framework)
- 개발자는 iOS 애플리케이션을 개발할 때 프레임워크(만들어놓은 코드)를 이용하여 개발함
애플은 왜 프레임워크를 만들고 제공할까?
- 앱스토어에 좋은 앱이 올라오길 바람
- 좋은 앱이 많으면 이 앱을 이용하기 위해 아이폰을 사게됨
- 거대 IT 회사들은 개발자들을 위해 자사의 애플리케이션을 쉽게 개발할 수 있도록 프레임워크 제공
왜 여러 프레임워크가 존재할까?
- 애플은 기기가 많기 때문에 기기별로 프레임워크들이 존재
- 애플은 프레임워크 사용법을 웹 페이지로 제공함 -> 개발자에게 사전 같은 페이지
- AppKit
- 맥OS에 올라가는 애플리케이션 개발을 위한 프레임워크
- UIkit
- iOS or tvOS에 올라가는 애플리케이션 개발을 위한 프레임워크
- 애플에서 이 프레임워크들을 통치해서 코코아(Cocoa) 프레임워크라고 함
- iOS, MacOS, WatchOS 등의 애플의 애플리케이션을 개발하기 위해
Swift or Objective-C 언어 + 코코아로 개발
- 안드로이드도 JAVA or Kotlin 언어 + 안드로이드 프레임워크를 활용하면 쉽게 애플리케이션 만듬
웹 프레임워크
- 앱과 다르게 웹은 특정회사의 소유가 아님
- 웹 프레임워크 및 라이브러리는 여러 사람이 만듬
- 웹 프론트엔드 프레임워크 및 라이브러리 삼대장
- Angular.js -> 구글에서 운영
- React.js -> 페이스북에서 만듬
- Vue.j -> Evan You라는 중국사람이 만듬
- 웹 프레임워크 및 라이브러리는 회사가 만들기도 개인이 만들기도 함
언어별 유명한 프레임워크
- 자바(Java) : 스프링(Spring) 프레임워크
- 파이썬(Python) : 장고(Django) 프레임워크
- 루비(Ruby) : 레일스(Rails)
- 자바스크립트(JavaScript) : 익스프레스(Express.js)
프레임워크와 라이브러리의 차이
- 프레임워크가 라이브러리보다 큰 개념
- 각종 라이브러리와 코드들이 모여 프레임워크가 됨
- 프레임워크는 한 프로젝트에 하나만 사용 가능
- 라이브러리는 한 프로젝트에 여러 개 사용 가능
프레임워크와 라이브러리 사용법
- 만든 주체가 모두 다르므로 사용 전에 반드시 설명을 봐야함
- 사용료를 받는 경우
- 출처를 남기면 무료인 경우
- 조건없이 무료인 경우
reference
비전공자를 위한 이해할 수 있는 IT 지식