ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [jsp] 프로젝트로 배우는 웹프로그래밍 1장 개념, 실습
    Languages/jsp 2021. 10. 25. 21:12
    반응형

     

     

     

     

     

     

     

    1장 네트워크, 인터넷, 웹

     

     

     

    네트워크란?

     

    전선이나 혈관, 통로 등으로 이루어진 망형 조직

    방송사,네트워크, 인맥을 의미하는 휴면 네트워크(human network)

    IT분야 -> 컴퓨터와 컴퓨터를 연결해주는 망의 개념으로 컴퓨터 네트워크의 의미로 사용

     

     

    TCP /IP(transmission control protocol)

     

    컴퓨터 간에 통신할 수 있도록 만든 프로토콜

    접속 매체에 관계없이 동작할 수 있는 개방형 구조

     

     

    IP주소(IP address)

     

     

    TCP/IP로 연결된 네트워크에서 가각의 컴퓨터를 구분하려고 사용하는 주소

     

     

    인터넷(internet)

     

     

    전 세계가 하나로 연결된 네트워크를 의미하는 고유명사

     

     

    프로토콜

     

     

    네트워크에 연결된 컴퓨터를 간의 통신 규약

    인터넷 서비스들은 trp/ip 4계층 중 응용계층에 해당함

     

     

    포트

     

     

    네트워크 서비스를 접속하기위한 접점

    컴퓨터에서 여러 네트워크 서비스를 제공하는 경우 이를 구분하기 위한 용도로 사용

     

     

    도메인 네임 시스템 DNS(domain name system)

     

     

    인터넷에 연결된 컴퓨터 구분을 위해 사용하는 IP주소 대신 알기 쉬운

    이름 형태로 컴퓨터를 구분하기 위한 인터넷 서비스/시스템 중 하나

     

     

    웹(WEB)

     

     

    웹 = 인터넷라고 생각할 정도로 대표적인 인터넷 서비스

     

     

     

    웹 서비스의 동작 과정

     

     

    웹 서버 소프트웨어

     

     

    서버에서 웹 서버스를 제공하는 소프트웨어

    아파치, 마이크로소프트 IIS(internet information server) 가 대표적임

     

     

    클라이언트 소프트웨어

     

     

    웹 서비스를 이용하기 위한 클라이언트 소프트웨어 -> 웹 브라우저

    인터넷 익스플로러, 크롬, 파이어폭스, 애플 사파리

     

     

    웹 프로그램의 개요

     

     

    일반적인 프로그램

     

    컴퓨터에 설치 후 사용

    기본적으로 해당 디바이스에서 프로그램이 실행되고 경우에 따라 필요한 데이터는 서버로부터 수신함

     

    웹 프로그램

     

    별도의 설치 없이 서버에 접소하는 것만으로 필요한 기능/서비스를 이용

    프로그램은 서버에서 실행되고 실행결과만 컴퓨터의 브라우저를 통해 보여짐

    데이터 입력, 메뉴선택, 버튼 클릭 등 사용자와의 상호작용 처리를 위해 클라이언트에서 처리해야 되는

    프로그램적인 요소도 있음

    웹 프로그램은 서버와 클라이언트의 협력에 의해 구현됨

    웹 프로그램 개방을 위해서는 서버 프로그래밍 기술과 클라이언트 프로그래밍 기술을 모두 알아야함 

     

     

    웹 프로그래밍 언어와 주요 기술

     

    클라이언트 기술

     

    기본적으로 브라우저에 의해 처리되는 요소

    화면 구성, 스타일, 동적 이벤트처리 등 사용자 상호작용 담당

     

    서버 기술

     

    html파일은 파일 내용 을 수정하기 전까지는 내용이 변하지 않는 정적인 구조

    사용자 요청에 따라 다른 정보를 제공하거나 데이터베이스를 통한 서비스를 위해서는 별도의 프로그램 기술이 필요

     

     

     

     

     

     

     

    WOA(web oriented architecture)

     

     

    기존 pc 중심의 사용자 환경에서 스마트폰, 태블릿, 스마트tv, 스마트카 등 새로운 기기들이 출현

    한 사람이 여러 기기를 통해 동일한 서비스와 정보로의 접근이 필요해짐

    즉 여러기기 간의 끊어짐이 없는 서비스가 요구되면서 one source multi use 를 위한 n-screen

    혹은 n-device 서비스가 요구 증대

    이러한 요구사항 해결을 위해 다음과 같은 기술들이 급성장 하고 있음

    하드웨어 인프라적인 측면 : 클라우드라고 불리는 대규모의 공용 컴퓨팅의 서비스, 가상화 sw 포함.

    기존 SOAP(simple object access protocol)기반의 SOA(service oriented architecture)에서

    REST(representational state transfer) 기반의 경량 웹 서비스 모델 발전

    restful 웹 서비스는 jax-rs로 자바 규격에 공식적으로 포함됨

    WOA는 웹을 중심으로 전체 시스템 아키텍처를 설계해 나가는 기술임

     

     

     

    프레임워크(Freamework)

     

     

    일반적인 개발의 문제점

     

    프로그램의 규모 확대 -> 높은 생산성, 쉬운 유지 보수, 기능의 변경이 확장이 용이한 개발 기술 필요

    개발발법론, 소프트웨어 디자인 패턴, 리팩토링, 프레임워크 등 소프트웨어 공학적 기술 등장

    프레임워크는 무언가를 만들기 위한 틀

    소프트웨어적으로는 목적에 맞게 잘 설계된 구조와 미리 구현된 라이브러리가 포함된 소프트웨어 형태

    프레임워크를 사용하면 정해진 규격에 따라 프로그램 구조를 만들과어야 하며, 개발자가 신경쓰거나

    처리해야할 이벤트 관리는 프레임워크를 통해 처리

    여러 유틸리티 라이브러리도 제공하기 때문에 개발자는 비교적 적은 노력으로도 고품질의 소프트웨어 개발이

    가능해짐

    대표적인 프레임우크는 스프링프레임워크로 웹 개발을 포함해 대규모 시스템 개발에 적합한 기술 구조를 제공함.

     

     

     

    [연습문제]

     

    1. 프로토콜과 포트에 대해 간단히 설명하고 웹의 프로토콜이 무엇인지 설명하시오.

     

    프로토콜이란? 

    네트워크에 연결된 컴퓨터를 간의 통신 규약

    포트란?

    네트워크 서비스를 접속하기위한 접점

    웹의 프로토콜이란?

    웹은 HTTP 프로토콜을 사용

    그의 대표적으로 TCP /IP(transmission control protocol)를 사용하여 컴퓨터간의 통신을 만든다.

     

     

    2.웹 프로그래밍의 실행과 관련한 특징을 설명하고, 웹 프로그램을 실행하려면 어떤 소프트웨어가 필요한지 설명하시오.

     

    웹 프로그래밍은 서버에서 실행되고 실행결과만 컴퓨터의 브라우저를 통해 보여진다.

    상호작용 처리를 위해 클라이언트에서 처리해야하는 프로그램적 요소가 있다.

    웹프로그램을 실행하려면 html, java, css와 같은클라이언트 기술과 ASP, net, php, jsp 와 같은 서버 기술도 알아야 한다.

     

    3.웹프로그래밍 기술 중 대표적인 3가지 클라이언트 기술을 간단히 설명하시오.

     

    HTML(hypertext markup language) - 웹 서비스를 표현하기 위해 사용되는 언어

    JAVA(javascript) - 웹 클라이언트 개발 언어, 실제 자바와 관련 x, 정적 콘텐츠를 서버 연결 없이

                           동적으로 처리하기 위한 목적으로 만들어진 간단한 프로그램 언어

    CSS(cascading style sheet) - 화면 구성요소를 스타일로 미리 정의해놓고 필요할 때마다 가져다 사용하는 디자인 기술

     

    4. 스마트폰과 웹 프로그래밍이 밀접하게 연관된 이유를 설명하시오.

     

    현재 스마트폰 보급율이 높아짐에 따라 앱 개발의 중점을 두고 있는 회사가 급증,

    앱 개발은 프로그래밍 언어를 기반으로 하여 지기 때문에 스마트폰과 웹 프로그램은 밀접하게 연관되어 있다.

     

     

     

     

    반응형

    댓글

Designed by Tistory.