웹 프로그래밍/웹(Web)관련자료

[Web] 웹 기본 정리

Dannian 2018. 7. 14. 01:22
반응형

원래 만들고싶었던 게임관련 정보보다는 역시 현재 일하고 있는 웹 관련 정리가 먼저인 듯 해서 정리를 시작합니다...ㅠㅠㅠㅠㅠ(게임관련은 정리를 계속 하긴 합니다..ㅠㅠ)

HTML이나 CSS, JS, PHP등의 언어를 다루기 전에 먼저 웹이란 무엇인지 먼저 정리를 해보고자 합니다.

 

1. 웹이란?

많이들 아시다시피 웹(Web)이란 '월드 와이드 웹(World Wide Web)'의 줄임말입니다. 많이들 보시는 'WWW'죠. 

거미줄말고도 얽힌 것과 관련된 것이라면 많은 단어들이 있는데 왜 하필 웹(Web, 거미줄)일까요? 넷(Net, 그물)도있고 메쉬(Mesh,그물로 잡다, 망사)도 있는데 하필 직역하면 '세상의 크기만한 거미줄(?)'이라니...

(그래서 우리가 벗어나질 못하나봅니다;;)

 

웹 이전의 인터넷은 명령어 기반의 구조를 가지고 있었고 OS와 하드웨어마다 각각 다른 명령어를써야 했다고 합니다.

지금도 그렇지만 컴퓨터마다 다른 방식의 인터넷 사용방법을 이용해야했다면 매우 불편했을 겁니다. 심지어 명령어기반이니...

지금과 달리 웹은 정보저장의 역할을 주로 수행하였기에 인터넷 상에서 정보의 저장과 사용환경에 관한 연구로 웹에서는 서로 다른 종류의 컴퓨터를 이용하더라도 같은 종류의 표준 사용자 환경으로 조작이 가능하도록 했습니다.

그 배경 덕에 서로 다른 OS나 하드웨어에서도 같은 환경의 웹을 이용 할 수 있게 되었고, 다양한 기업에서 브라우저를 발전시키며 지금의 웹이 탄생했습니다.

더 많은 내용을 원하시면 검색을!(저보다 더 전문적인 분들이 많기 때문에...)

 

2. 웹의 구성요소

웹을 사용하기 위해 구성하는 것들이 있습니다

웹페이지를 출력해주는 '웹 브라우저(Web Browser)', 상호 통신을 원활하게 하기 위한 통신관련 규약인 프로토콜(Protocol, 데이터의 표현법), 그리고 응용프로그램(Web Application)이 있습니다.

 

먼저 웹(Web, WWW)은 위에서 설명한 것 처럼 '월드 와이드 웹(World Wide Web')의 약자로 인터넷 상에서 이루어지는 서비스 중의 하나입니다. 사실 인터넷과는 다른 의미라는 것이죠. 하지만 1993년 이래로 인터넷 구조의 절대적 위치를 차지한다고 합니다.

1항목에서 말한 것 처럼 정보의 저장 역할을 주로 수행하기 위해 만들어졌습니다. 이 웹은 HTTP(HyperText Transfer Protocol)이라는 통신 규약을 사용하고 웹 서버(Web Server)웹 브라우저(Web Browser)를 기반으로 이루어져 있습니다.

여기서 '웹 서버'란 우리가 흔히 아는 '서버'이고, '웹 브라우저'라 함은 '클라이언트'라 할 수 있습니다.

클라이언트와 서버의 요청과 응답

 

클라이언트는 우리가 웹을 들어갈때 보이는 페이지입니다. 다른말로 제가 가장 싫어하는 프론트-엔드라고 불립니다. (CSS 싫어...)

서버는 웹에 대한 요청을 받는 곳입니다. 클라이언트나 다른 요청에 대한 로직 및 DB(데이터베이스)와 자료의 교환(연동)을 하는 곳으로서 백-엔드라고 합니다.

(관련 상세는 나중에 다루도록 하겠습니다.)

 

웹을 봤으니 이제 웹 브라우저를 살펴보죠.

웹 브라우저란 사용자 - 위에서의 클라이언트에 해당합니다. - 가 서버에게 특정 요청을 보내고, 서버가 클라이언트에게 보낼 응답이 존재하는 경우, 요청을 보내고 응답받아 주는 소프트웨어라고 할 수 있습니다.(요청대신 메세지라고 배웠는데 저는 요청과 응답이라고 이해하는게 편해서 이렇게 적습니다. 자세한건 여러 자료를 살펴보시는걸 추천합니다.)

대표적으로 IE(Internet Explorer), 구글 크롬, 파이어폭스, 사파리 등이 웹 브라우저에 해당합니다.

 

다음은 HTTP입니다. HTTP는 HyperText Transfer Protocol의 약자로서 단말과 단말간의 통신을 위해 서로 약속 되어있는 통신 규약을 의미합니다. 이는 정보의 교환을 위해 사용하는 서로간의 약속이라고 보시면 됩니다.

다만 평문을 그대로 전송하는 탓에 스니핑(Sniffing)에 취약합니다.

 

마지막은 Application입니다.

웹 어플리케이션(Web Application)은 인터넷으로 연결된 웹환경에서 이용자들사이의 통신을 통하여 서비스를 제공받고 제공하는 어플리케이션을 의미합니다.

이용자(클라이언트)가 웹 브라우저의 주소창, 하이퍼링크 등을 통하여 서비스의 요청을 서버에게 보내면 해당 요청 정보를 서버측에서 처리하며 그 결과를 사용자의 웹 브라우저로 응답해줍니다. 응답은 HTML형태로 사용자에게 보내집니다.

웹 어플리케이션의 구성요소로는 클라이언트의 경우 웹 브라우저, JavaScript(JS), CSS, HTML 등이 있습니다. 서버측의 경우는 PHP, 데이터베이스 시스템(DBMS) 등이 있습니다.

 

Dannian의 블로그입니다.

 

 

본 포스팅은 학습을 목적으로 쓰인 글입니다.

내용중 틀린 것이 있다면 댓글로 알려주시면 감사하겠습니다!

반응형

'웹 프로그래밍 > 웹(Web)관련자료' 카테고리의 다른 글

[Web] 백 엔드와 프론트 엔드  (0) 2018.07.14