웹프로그래밍

웹에 대한 기초사항

insight_knowledge 2017. 12. 12. 23:59
반응형

안녕하세요 위키드 스마트입니다. 


너무 다방면으로 관심이 많아, 다양한 주제를 다루느라 힘들지만, 저의 지적 호기심을 만족시키기 위해 

오늘부터 새로운 글 연재를 시작해봅니다. 


바로 웹 프로그래밍입니다. 


개발에 대해 얘기해보자면, 프론트엔드, 미들엔드, 백엔드 개발이 있는데, 

프론트엔드쪽의 진입장벽이 낮다보니, 이 쪽 개발을 굉장히 하찮은 것으로 치부하는 경향이 있었고, 그 기조는 지금도 여전하다고 생각합니다. 

그러나 프론트엔드 개발은 우리가 개발한 서비스를 사용자에게 선보이고, 연결시켜주어, 상호작용하게 하는, 영업쪽으로 얘기하자면 

최전선에 있는 굉장히 중요한 영역이라고 생각합니다. 


진입장벽이 낮다고 생각하여 아무나 뛰어들지만, 정말 잘하는 사람 찾기 힘든 것도 사실이죠. 

제가 잘한다는 소리는 아닙니다. 


여튼 이 글은 웹 프로그래밍에 처음 입문하는 분들을 대상으로 연재하오니, 고퀄의 글을 기대하는 분들은 다른 곳에서 정보를 찾아보시는 게 좋겠습니다 ^^;

이제 거두절미하고 먼저 웹에 대한 기본 지식부터 쌓아보겠습니다. 


웹 기초 지식

인터넷은 지금 우리에게 없어서는 안되는 너무나 중요한 존재죠. 우리가 하루종일 스마트폰을 손에서 놓지 못하는 이유도, 스마트폰이 인터넷에 연결되어 있기 때문이죠. 

우리가 부르는 웹 이라고 부르는 건 www(World Wide Web) 을 말하는데, 이렇게 지은 이유는 세계를 뒤덮는 거미줄처럼 모든 것이 연결되어 있다는 의미에서 지은 단어입니다. 

초기 인터넷은 텔넷, FTP, 전자메일, 유즈넷을 이용해 파일전송, 원격접속, 전자우편, 뉴스를 볼 수 있었는데, 지금과 다른 점은 그 때 당시에는 이 모든 것이 모두 문자로만 서비스가 되었다는 것입니다. 아주 재미도 없고 지루했겠죠? 


그래서 바로 www 이 개발되어 하이퍼텍스트라는 것을 통해 그림을 통해 모든 서비스를 이용할 수 있게 되었습니다. 그 때 당시의 모습을 생각한다면 아주 혁신적이죠? 

www의 동작 원리


www의 구조는 간단하게 위 그림과 같이 설명할 수 있는데요,  

먼저 html로 작성된 웹페이지가 웹 서버(네이버, 다음 등등)에 있는데, 

인터넷으로 연결된 수많은 클라이언트 컴퓨터(여러분의 노트북, 스마트폰, 태블릿 등)가 접속한 웹 서버에서 html 문서를 받아 

여러분의 웹 브라우저를 통해 화면에 웹 페이지를 표시하는 것입니다. 


웹 서버가 하는 일은 단순히 인터넷이 연결되어 있는채로 클라이언트 컴퓨터로부터 요청을 기다리는 것입니다. 

문서 뿐 아니라, 이미지, 사운드, 영상에 대한 여러가지 요청이 있을 수 있는데요, 

이러한 요청을 받으면 웹 서버는 이들 자원을 찾아서 클라이언트 컴퓨터로 보냅니다. 

이 때, 웹 서버와 클라이언트 컴퓨터는 서로 표준 언어를 통해 통신하는데, 이 때 바로 HTTP 라는 프로토콜을 사용합니다. 

인터넷 주소 앞에 항상 http:// 가 붙는 이유가 바로 이 이유죠. http 이라는 프로토콜을 사용해서 통신하라고 명령하는 거죠. 


http 프로토콜에서 가장 중요한 건 2가지가 있는데요, 바로

- 특정 파일을 요청하는 http request

- 찾은 파일을 돌려주는 http response 

입니다.  


웹 페이지는 기본적으로 HTML로 작성되는데, 이 외에도 자바스크립트 등 많은 신기술이 근래에는 추가되었습니다. 

허나, 아직도 기본은 HTML입니다. 최근에는 최신버전인 HTML5도 나왔죠. 


HTML에도 버전이 있다구요? 네. 있습니다. 최근 것이 HTML5입니다. 


HTML은 Hyper Text Markup Language 의 약자로서, 웹 페이지를 기술하기 위한 언어입니다. 

이름에서 알 수 있듯이 HTML은 마크업 언어의 일종인데, 마크업 언어는 텍스트에 태그를 붙여서 텍스트가 문서의 어디에 해당하는지를 기술한 것입니다. 



HTML 요소(Element)

HTML Element 는 시작태크(start tag 또는 opening tag 라고 부름)와 content 그리고 종료태그 (end tag 또는 closing tag 라고 부름) 이렇게 3개로 이루어져 있습니다. 태그는 요소 기술자(또는 편집용 코드)로서, 태크로 둘러싸인 부분이 문서의 어떤 부분에 해당하는지를 나타냅니다. 


웹 브라우저는 HTML 문서를 읽어서 눈에 보이는 웹 페이지를 만듭니다. HTML 문서에 있는 태그를 화면에 보여주진 않습니다. 

단지 페이지의 내용을 해석하는 용도로 사용합니다. 


HTML의 역사

HTML은 팀 버너스리가 개발하였는데, 이 분은 물리학자로서 CERN 연구소 소속이었습니다. 

팀 버너스리는 CERN의 연구자들이 문서를 공유할 수 있는 ENQUIRE 라는 시스템을 제안하고 프로토타입을 개발하였는데, 이게 최초의 인터넷 기반의 하이퍼텍스트 시스템이었습니다. 

1990년에 팀 버너스리는 HTML을 정의하여 브라우저를 작성했고, 서버 소프트웨어도 개발하여 지금의 모태가 되었습니다. 


현재 HTML에 대한 표준은 W3C (World Wide Web Consortium) 에서 만드는데, W3G는 1994년에 창립된 국제컨소시엄으로 

미국, 프랑스 등이 주도적으로 참여해 결성한 컨소시엄입니다. http://www.w3.org 에 가시면 자세히 보실 수 있습니다. 


앞서 얘기했듯이 HTML에도 버전이 있죠. 버전은 아래와 같습니다. 

그럼 HTML5는 왜 개발된걸까요? 

가장 큰 이유는 모바일 인터넷로의 확장성인데요, 

기존 HTML은 웹 브라우저가 서로 달라 브라우저별로 html 코드를 다시 써야 하는 굉장히 복잡한 상황이었는데요, 

HTML5는 이러한 단점을 극복하기 위해 공통적인 표현이 가능하도록 개발되었습니다. 



HTML5의 자세한 특징들은 다음 글에서 설명토록 하겠습니다. 


다음글 보기: http://sharingknowledge.tistory.com/155?category=685528

바이~ ^-^

반응형

'웹프로그래밍' 카테고리의 다른 글

웹 프로그래밍 공부하는 순서  (0) 2018.01.20
개발자 테크 트리  (0) 2017.12.21
HTML 기초  (0) 2017.12.19
HTML5  (0) 2017.12.16
웹 프로그래밍 공부 어떻게 접근하지?- 초심자 전용  (0) 2017.07.11