본문 바로가기
BackEnd

웹 서비스란? 웹 서비스의 역사와 발전

by SoriKim 2023. 7. 31.
반응형

1.  Internet 

인터넷이란 여러 통신망을 하나로 연결한다는 Inter + Netwrok를 의미합니다. 

전 세계로 연결되는 하나의 거대한 컴퓨터 통신망으로 컴퓨터 네트워크를 의미합니다. 

 

1-1.  인터넷의 탄생 

1950년 모뎀(Modem)이라는 디지털 데이터를 전화선이 활용할 수 있는 아날로그 신호로 바꿔 이미 광범위 하게 설치되어 있는

전화선을 통해 컴퓨터 통신이 가능하게 만든 장치를 미 국방부가 방공망 시스템 구축을 위해 개발했습니다. 

초기 모뎀은 전화선을 통해 데이터 전송을 위해 사용했지만 개인이 통신망에 접속하는 것이 비용측면의 문제로 전화망을 통해 

개인 컴퓨터와 서버와의 통신을 하게 되었습니다. 

 

1969년 아르파넷(ARPAnet)이 시작되었으며 현재 인터넷의 원형으로 알려져 있습니다. 

2차 세계 대전 종료 후 강력한 컴퓨터 통신 시스템 설계의 필요성을 알게 되며 1950년 탄생한 모뎀의 대안책으로 탄생하게 되었습니다. 

당시 회로 스위칭을 많이 사용했지만 아파넷의 발견 이후로 패킷 스위칭(한 메세지를 여러 조각_패킷으로 분할하는 것으로 적의 공격에 의한 데이터 손상의 경우도 전체 데이터가 아닌 해당 부분만 보내는 것이 가능)이 데이터와 음성을 주고 받는데 널리 사용되고 있습니다. 

 

1983년 네트워크 기술 관심의 증가로 다양한 네트워크가 등장하기 시작하면서 TCP/IP와 인터넷이 탄생되었습니다. 

TCP/IP란 인터넷 프로토콜 스위트이며 인터넷과 이와 유사한 컴퓨터 네트워크 사이에서 정보를 주고 받는데 이용하는 통신 프로토콜의 모음입니다. 

 

또한 인터넷이란 여러 통신망을 하나로 연결한다는 의미이며 이제는 전 세계 컴퓨터를 하나로 연결하는 컴퓨터 통신망을 의미합니다. 

 

2.  웹 서비스란? 

웹이란 인터넷에 연결된 사용자들이 서로의 정보를 공유 가능한 공간으로 웹으로 많이 불려집니다. 

인터넷 등장 후 1990년인 30년 후에 컴퓨터 과학자 팀 버너스리가 인터넷 기반 하이퍼텍스트 시스템인 세계 최고의 웹 브라우저 World Wide Web이라는 프로그램을 개발했습니다.

웹 출현 이후로 대중적으로 인터넷 통시이 사용되기 시작하며  인터넷에서 웹으로 발전하기 시작하였습니다. 

웹은 Hypertext(연결된 순서에 관계없이 사용자들이 원하는 정보에 접근할 수 있도록 제공되는 텍스트)를 통해서 정보를 전달했고 이를 가능하게 하기 위해서는 HTML과 HTTP를 개발했습니다. 

Hypertext는 HTML로 작성했으며 HTTP를 통해 주고 받을 수 있게 되었습니다. 

웹 서버라는 프로그램을 만들어 프로그램이 설치된 컴퓨터에 주소를 부여하였고 이러한 웹의 등장으로 인터넷의 대중화가 시작되었습니다. 

 

 

3.  웹 구조 역사와 발전 

1세대의 웹은 정적인 웹으로 서버가 HTML 페이지 전체를 클라이언트에게 전송하는 방식으로 

단순한 정보를 제공하였습니다. 

 

2세대의 웹은 동적인 웹으로 자바스크립트의 출현으로 서버와 클라이언트가 HTML페이지와 JS(자바스크립트)로직을 통해 필요한 데이터를 주고 받을 수 있게 되었지만 동일한 서버에 모든 데이터가 클라이언트로 전송되는 형태였습니다. 

 

3세대의 웹은 SPA의 등장으로 최초 통신에 JS(자바스크립트)코드를 송수신 하며 서버와 실시간으로 데이터를 주고 받으며 

화면을 동적으로 구성하게 되었습니다. 또한 3세대의 웹부터 프론트엔드와 백엔드 개발이 분리가 되었습니다. 

 

현대 웹은 복잡성과 중요도가 증가하여 여러가지 업무가 세분화 되기 시작하며 다양한 직군의 필요하게 되었습니다. 

 

4. 웹 개발에 대한 다양한 직군 

1.) 기획자 (Product manager) 

개발하고자 하는 서비스를 정의하며 기획하는 역할 

 

2.) 디자이너

UI/UX라고 불리는 이 직군은 사용자가 사용하는 서비스를 보기 좋고 사용하기 편리하게 디자인 하는 역할로 

UI는 사용자 인터페이스이며 사람과 컴퓨터시스템 사이 의사소통을 하게 해주며 예를 들어 마우스, 키보드 등을 생각하면 됩니다. UX는 조금 더 포괄적인 개념으로 제품과 서비스 그리고 시스템을 사용하며 전반적 사용자 경험을 개선하기 위한 설계 영역입니다. 

 

3.) 테스터(Tester) 

QA: 개발 작업활동 등 항목을 검수하고 소프트웨어 요구사항 명세를 준수하도록 하는 프로세스로 이런 프로세스를 따라 품질을 보증하는 인력을 QA라고 부릅니다. 

 

4.) Frontend 

사용자가 가장 먼저 볼 수 있는 앞쪽의 시스템들을 개발하는 직군으로 사용자와 가장 밀접하게 연결되어 있습니다. 

 

5.) Backend

시스템의 뒤 쪽 부분 API, 데이터 등을 담당하는 개발자로 사용자에게 보여지지 않는 뒤쪽 부분을 개발하는 직군입니ㅏ. 

 

6.) Full Stack 

해당 개발직군은 프론트엔드와 백엔드를 모두 개발하는 개발자입니다. 

 

반응형

'BackEnd' 카테고리의 다른 글

Wecode 2st Project 회고록  (0) 2023.09.03
Wecode 1차 프로젝트 회고록  (0) 2023.08.20
Database  (0) 2023.08.15
Linux & Terminal  (0) 2023.08.02
API에 대해 알아보기  (0) 2023.08.02

댓글