용어 정리

라이브러리(Library)와 프레임워크(FrameWork)의 차이?

라이브러리는 특정 기능을 수행하는 코드, 함수들의 집합이다.
프레임워크는 프로그래밍에서 특정 운영체제를 위한 응용 프로그램 표준 구조를 구현하는 클래스와 라이브러리의 집합이다.

둘의 공통점은 프로젝트를 위해 다른 코드를 가져다가 쓴다는 점이다. 반대로 둘의 차이점은 코딩을 제어하는 주체가 다르다는 것이다. 라이브러리는 내가 주체이다. 내 필요에 의해 호출하고 내가 코딩해나간다. 하지만 프레임워크는 다르다. 프레임워크가 주체이며, 프레임워크가 나를 호출(나의 코드를 호출=제어역전)하는 것이다. 프레임워크가 정한 규칙(코드구조)을 따라야한다. 내가 코드의 규칙을 결정하는 입장이 아니기 때문이다.
예를들어 어떤 프로젝트를 빌드하기 위한 라이브러리는 내가 필요하기 때문에 호출하는 것이다. 반대로 프로젝트를 빌드하기 위한 프레임워크라면 이건 규칙과 문서가 따라오는 것이며, 내가 적극 수용해야한다.

참고
노마드코더

스프링(Spring) 이란?

엔터프라이즈용 Java 애플리케이션 개발을 편하게 할 수 있게 해주는 오픈소스 경량급 애플리케이션 프레임워크

엔터프라이즈용 -> 비즈니스 로직의 구현에 도움을 주는
오픈소스 -> 무료의
경량급 -> 불필요한 코드를 제거하여 단순화 한
프레임워크 -> 애플리케이션 기본구조

즉, 무료로 제공되며 필요한 코드만 모아 애플리케이션 개발에 도움을 제공하는 기본구조(뼈대)라고 생각하면 된다.

참고
코드스테이트 블로그

스프링부트(Spring Boot) 란?

스프링으로 애플리케이션을 만들 때 필요한 설정을 간편하게 처리해주는 별도의 프레임워크이다.
스프링 프레임워크를 도와주는 또다른 프레임워크라 생각하면 된다.

참고
코드스테이트 블로그

HTML(HyperText Markup Language) 이란?

하이퍼텍스트 -> 사용자가 기존 문서에서 다른 문서로 이동할 수 있게 해주는 텍스트를 뜻한다. 웹은 하이퍼텍스트로 구성된 콘텐츠 간의 연결을 통해 이루어진다.
마크업 -> 태그(tag)를 사용해 콘텐츠나 문서 구조를 표시하는 형식

즉, 하이퍼텍스트를 비롯한 다양한 콘텐츠를 태그로 표현하는 언어이다.

참고
위키독스-입문자를위한HTML5