프로그래밍 언어, 라이브러리, 프레임워크, 플랫폼 차이를 아시나요?

거친코딩·2021년 3월 13일
0

프로그래밍언어

목록 보기
1/1
post-thumbnail

프로그래밍 언어란?

  • 특징

    • 미리 기획 및 설계된 계획을 특정 로직을 가지고 있는 알고리즘으로 구현하고 구체적인 결과물을 만들어내는 과정 속에서 사용되는 컴퓨터 의사소통 방식을 의미
  • 사용 예시
    - 로봇 청소기의 경우, 먼저 로봇이 쓰레기와 일반 사물을 구별해야 하고 쓰레기로 구별된 물체는 흡입을 하도록 만들어야 한다. 이러한 계획을 구체적인 결과물로 산출하기 위해서는 프로그래밍의 개념적 원리 즉, 해당 로직의 일련 과정을 알고리즘으로 만들고 로봇 내에 적용하여야 하는데, 이때 컴퓨터와 의사소통을 하기 위해 프로그래밍 언어가 필요.

라이브러리란?

  • 특징
    - 재사용이 필요하거나 반복적으로 사용할 때, 클래스 혹은 함수 형태로 모듈화시켜 저장하여 수시로 사용할 수 있게끔 하는 것.

  • 사용 예시
    - 파이썬에서 데이터베이스와 기본 연동 시 구현해야 할 ORM을 클래스 형태로 모듈화시켜 간편하게 사용하는 경우.

프레임워크란?

  • 특징
    - 특정 기능 및 구현에 최적화 및 특화를 위해 위에서 설명한 라이브러리들을 집약적으로 포함하고 있고, 각 프레임워크마다 지양하고 있는 가치 및 규칙을 잘 파악한다면 더욱 뛰어난 수행을 할 수 있음.

  • 사용 예시
    - 많은 API Server 중 Django의 경우, 파이썬 기반으로 라이브러리들이 갖추어져 있고 Client쪽과 통신하여 다양한 로직을 수행하면서 전반적인 Backend 개발에 특화되어 있는 프레임워크임.

플랫폼이란?

  • 특징
    - 사용자가 원하는 방향의 서비스 혹은 프로그램이 구현되고 실행되는 환경과 기획 및 목적에 따라 다양한 형태로 발전될 수 있는 공간을 의미함.

  • 사용 예시
    - 네이버의 경우 사용자가 원하는 정보를 제공하고, 정보의 형태에 따라 서비스 방식이 달라지고, 기획 및 목적에 따라 수시로 변화하면서 발전되는 플랫폼임.

위 4가지 용어의 차이점?

"4가지의 용어를 쉽게 차이를 두고 분리해서 말한다면 아주 계층적이다라고 말할 수 있겠다"

  • 쉽게 말해서 사용자가 원하는 정보 및 서비스를 제공해주는 플랫폼을 구현하기 위해서는 집중적이면서 집약적인 기능을 모아놓은 프레임워크를 사용할 수 있겠고, 해당 프레임워크를 구현하기 위해서 수시로 사용되는 다양한 라이브러리들의 집합이 필요할 것이고, 마지막으로 이러한 일련의 과정을 가능하게 하는 것이 바로 프로그래밍 언어라고 표현할 수 있겠다.

세상은 넓고 배워야 할 것은 많다. 이러한 생각은 다시 희열을 느끼게 한다.

profile
데이터 분석 유튜버 "거친코딩"입니다.

0개의 댓글