상세 컨텐츠

본문 제목

이론공부_ web, http, api

이론공부

by 비오스터딩 2020. 11. 29. 23:46

본문

리액트를 사용해서 어느정도까지 직접 웹어플리케이션을 만들수는 있지만, 뭔가 부족한게 느껴졌다.

만들기는 하지만 뭔가 붕- 떠있는 기분. 중심에 대한 이해가 부족한 느낌이었다.

그래서 다시 시작하는 이론공부. (feat. 생활코딩)

1. WEB

웹어플리케이션을 만드는 입장이니, 웹이랑 인터넷을 구분해보자.

- 인터넷: 전세계에 있는 컴퓨터들이 연결되어 있는 네트워크. 이 네트워크를 통해 컴퓨터들이 파일을 주고받을 수 있다.

- 웹: 인터넷을 활용해서 HTML언어로 만든 웹페이지를 컴퓨터가 주고 받을 수 있도록 고안된 서비스.

웹이 제일 유명한 인터넷서비스여서 웹과 인터넷을 혼용하여 많이 사용하지만, 인터넷은 웹보다 더 큰 개념이다.

인터넷 안에 Web, FTP, email 등등 여러 서비스들이 있다.

2. HTTP

웹이 어떻게 웹페이지를 가져오는 것일까?

하이퍼텍스트 전송 프로토콜(Hyper Text Transfer Protocol)은 하이퍼미디어 문서를 전송하기 위한 어플리케이션 레이어 프로토콜이다.

쉽게말해 인터넷으로 문서를 주고받을 때 사용하는 통신규약이다.

웹페이지 주소는 'http' 혹은 'https'로 시작하는데 이는 웹이 HTTP를 따르고 있다는 것을 나타낸다.

HTTP는 클라이언트가 요청을 생성하기 위한 연결을 연 다음 응답 받을 때까지 대기하는 전통적인 클라이언트-서버 모델을 따른다.

HTTP는 제대로 공부하려고 하면 더 깊게 들어가야하니, 일단은 여기까지.

다른거 더 공부하고나서 필요가 느껴질 때 다시 공부하러 오겠습니다.

3. 클라이언트, 서버.

컴퓨터가 웹을 주고 받기위해 작동하는 컴퓨터의 역할에 따라 클라이언트와 서버로 나뉜다.

- 클라이언트 : 정보를 요청(request)하는 컴퓨터.

- 서버 : 정보를 응답(response)하는 컴퓨터.

예를 들어, 웹브라우저를 열어 네이버 사이트를 연다고 하자.

이 웹브라우저가 있는 컴퓨터를 클라이언트라고 한다. 클라이언트에서 인터넷을 통해 웹서버가 있는 서버컴퓨터에게 네이버웹페이지를 요청한다. 서버에서는 이 요청을 받아 웹페이지를 클라이언트에게 응답하고, 클라이언트는 이 웹페이지를 받아 브라우저에 보여준다.

4. UI vs API

갑자기 흐름이 없어졌지만...ㅎㅎㅎㅎㅎ 자주 듣는 말인데 개념이 그동안 모호했었다.

예전부터 계속 Dom 메서드들을 왜 Dom API라고도 부르는가...?에 대한 의문이 있었다.

API가 정확히 뭔지는 모르겠지만, 가져다 쓸수있는 라이브러리같은거라는거 알겠어, 그런데 왜 DOM API라고해???

이게 이 개념을 공부하면서 명쾌해졌다!!!! ㅠㅠ

- UI (User Interface) : 장치와 장치가 서로 소통하기 위한 접점.

- API (Application Programing Interface) : Application을 프로그래밍 하기 위한 접점.

이렇게 생각하면 더 쉽다.

예를 들어 비밀번호를 입력해주세요 라는 창이 있다고하자.

이 창에는 비밀번호를 입력할 수 있는 입력창과 확인 취소 버튼이 있다.

이 창에 사용자가 직접 비밀번호를 입력하거나, 확인, 취소 등의 버튼을 누를 수 있다.

이 창이 일종의 UI이다. 즉 UI는 사용자가 직접 조작할 수 있는 접점이다.

이 UI를 만들기 위해서는 prompt('비밀번호를 입력하세요.'); 라는 Dom Method 사용한다.

이 UI에서 '비밀번호를 입력하세요.' 이외의 것들(확인이나 취소 버튼 같은 것들)은 웹브라우저가 미리 만들어 놓은 코드를 실행하는 것이다.

그런 의미에서 Dom Method들도 일종의 interface인 셈이다.

내가 만든 UI가 다른 누군가에게 API가 될수 있다는 뜻.

대충 알고 지나갔던 것들, 혹은 다시 짚어봐야할 개념들 정리해봐야겠다.

반응형

관련글 더보기

댓글 영역