본문 바로가기

IT 기초/JavaScript

자바스크립트 관련 용어 정리(1) _ 자바스크립트, 객체, API

▶ 자바스크립트

- 웹 페이지에서 복잡한 기능을 구현할 수 있도록 하는 객체 기반의 스크립팅 언어 또는 프로그래밍 언어

- DOM API를 통해 HTML과 CSS로 구성된 웹 페이지를 동적으로 만들어준다.(사용자와 상호작용이 가능하거나 애니메이션 적용 등)

- 싱글 스레드 논 블록킹 언어로 한번에 하나의 작업만 할 수 있지만 요청이 완료될 때까지 기다리지 않고 동시에 다른 작업을 수행함으로써(비동기 처리) 문제를 해결한다.

 

 

▶ 객체

- 프로그래밍에서 데이터와 그 데이터에 관련된 동작을 모두 포함하는 개념

- 프로그램은 모두 객체로 이루어져 있고, 객체들 간의 메세지를 주고받는 상호작용으로 이루어진다.

 

▶ API (Application Programming Interface)

- 애플리케이션이나 디바이스와 같이 서로 다른 프로그램들이 서로 간에 연결하여 데이터(정보)를 주고받을 때 사용하는 인터페이스 및 규격

- 접근방식에 따라 분류하면 Private API, Public API, Partner API 등이 있다. Private API는 내부적으로만 사용, Public API는 누구나 사용, Partner API는 기업이 데이터 공유에 동의하는 특정인들만 사용할 수 있다.

- API에 연동할경우 개발자들이 애플리케이션 코드 작성 방법을 표준화해 간소화되고 빠른 프로세스 처리가 가능하다.

ex) 네이버 로그인 API를 통해 별도 가입 절차 없이 어떤 플랫폼에서도 간편하게 로그인

 

대부분의 서비스는 가장 접근이 쉬운 RESTful 방식을 많이 이용한다.

REST 원칙을 적용해 API를 설계한 것을 RESTful API라고 한다.

 

  ▶ REST(Representational State Transfer)

  - API 작동 방식에 대한 조건을 부과하는 소프트웨어 아키텍처

  - 대규모 고성능 통신을 안정적으로 지원, 쉽게 구현하고 수정할 수 있다.

  - HTTP URI를 통해 리소스를 명시하고 HTTP 메서드(GET, POST, DELETE, PUT)를 통해 처리한다.

 

  ▶ 리소스

  - 문서, 그림, DB, 이미지, 동영상, 해당 소프트웨어 자체 등의 웹에서 사용되는 모든 자료

  - 리소스에 접근할 수 있는 유일한 식별자가 URI(Uniform Resource Identifier)

  - 리소스 제공 시스템: 서버

 

  ▶아키텍처

  - 소프트웨어 시스템의 전체적인 구조와 구성 요소들 간의 관계를 정의하는 것

  - 시스템의 기능적 요구사항(시스템이 수행해야 하는 작업) + 비기능적 요구사항(성능, 안정성, 확장성 등 품질 속성) 만족시켜야 함