상세 컨텐츠

본문 제목

[WEB] 웹 기반 프로그래밍의 발전과정

Backend/서버프로그래밍

by 사랑짱 2021. 6. 17. 17:53

본문

 

현재 대부분은 웹 프로그램을 기반으로 이루어져있다.

 

그렇다면 웹 기반 프로그래밍이 생겨나기까지 어떠한 과정이 있었으며

각 과정에 따른 문제점과 그 문제를 어떻게 보완해 나갔는지 알아보자.

 

 

step1. 사용자 PC 기반 프로그램

- 프로그램을 이용할 때 사용자가 컴퓨터를 직접 이용하여 소프트웨어가 동작

 

우리가 예전에 게임CD를 돈 주고 구매하여 게임했던 경험을 떠올려보자. 

그 CD에 담긴 프로그램이 클라이언트 PC 기반 프로그램의 예가 된다.

게임 프로그램은 클라이언트 PC에서 실행하면서 모든 기능을 수행한다.

하지만 업데이트에 한계가 있다는 단점이 있다.

 

<문제점>

1. 프로그램이 변경될 때마다 다시 설치(변화에 대한 실시간 반영이 어려움)
2. 데이터베이스 접속 정보가 쉽게 노출될 수 있어 보안에 취약

 


 

step2. CS (클라이언트/ 서버) 기반 프로그램

- CS 기반 프로그램은 네트워크/인터넷을 이용하여 서버와 통신을 주고 받으며

  서버에 있는 자원이 클라이언트 프로그램의 모든 기능을 수시로 업데이트한다. 

 

(1) 클라이언트 프로그램(like 본사) : 데이터를 요청하는 프로그램

(2) 서버 프로그램(like 생산지, 지점) : 데이터가 만들어지고 관리/제공되는 프로그램

 

 

클라이언트 PC 기반 프로그램에 비해 기능적인 업데이트가 보완되었으나

사용자에 관련된 화면 기능이 바뀌면 클라이언트 프로그램도 수정하여

다시 설치해야 하는 단점이 여전히 존재한다.

 

<문제점>

1. 클라이언트/서버 프로그램 간 동기화로 인한 문제 
-> 사용자에 관련된 화면 기능은 서버에서 처리할 수 없는 한계가 존재
-> 이에 따라 설치-재설치를 반복해야하므로 다른 프로그램에 대한 영향 & 재배포에 대한 부담이 존재

2. 데이터 전송 구현에 대한 문제
-> 클라이언트 프로그램의 데이터 요청에 따라 소켓, RPC 등을 이용해 
    직접 포멧팅, 전달, 유효성 검사 등을 진행하였으나, 여전히 업무적인 불편함이 발생

 


 

step3. 웹 기반 프로그램

- 웹기반 프로그램은 화면과 데이터 처리 모두 서버에서 수행하며

  데이터가 아닌 문서를 전달하는 웹을 사용한다.

 

(1) 웹 클라이언트 : 브라우저를 통해 요청을 입력

(2) 웹 서버 : 요청에 대한 응답을 page 형태로 제공

 

 

기술과 컴퓨터 성능의 발전으로 서버의 성능도 비약적으로 발전하게 되었다.

이에 따라 이제 웹 기반 프로그램은 화면과 데이터 처리 모두가 서버에서 처리 가능하다.

 

 

<웹 기반 프로그램의 특징>

1. 화면과 로직(기능)을 서버에서 처리하므로 클라이언트가 특별히 수행할 작업이 없다.
2. 모든 기능이 서버에서 처리되므로 보안 면에서 우수하다.

 

 

위와 같은 과정을 통하여 지금의 웹 기반 프로그램이 자리잡게 되었다.

다음에는 웹 기반 프로그래밍에 대해 더 자세히 알아봐야겠다.

 

 

관련글 더보기