Visual-SLAM-1장

예비 지식

Posted by Gihoon on April 23, 2024

인터넷과 웹의 개요

인터넷
• 컴퓨터가 서로 연결되어 TCP/IP라는 통신 프로토콜을 이용하여 정보를 주고받는
전 세계의 컴퓨터 네트워크

• 인터넷에 연결된 컴퓨터들을 통해 사람들이 정보를 공유할 수 있는 정보 공간
• 월드 와이드 웹(world wide web)의 줄임말
웹의 동작 원리
▪ 웹은 기본적으로 클라이언트/서버 방식으로 동작
가장 널리 쓰이는 웹 서버
• 아파치(Apache)
• 톰캣(Tomcat)
• IIS(Internet Information Server)**
Back-End 중심 개발
▪ 전통적인 방식
▪ 대부분의 작업은 서버에서 수행
• 결과 화면을 클라이언트가 가져옴 (JSP는 클라이언트에서 수행)
▪ (교재) Servlet/JSP 중심
-> Spring Framework 등 사용 가능
Front-End 중심 개발
▪ 보통 클라이언트가 HTML 등 기본 화면 구성 갖고 있음 (또는 처음에 가져옴)
▪ 서버로부터 화면 갱신을 위한 데이터 (JSON 등)를 가져옴
• 클라이언트 쪽에서 조합하여 화면 생성
• CSR(Client Side Rendering)

정적 웹 페이지와 동적 웹 페이지**

정적 웹 페이지
• 컴퓨터에 저장된 텍스트 파일을 그대로 보는 것
• HTML(HyperText Markup Language)
동적 웹 페이지

[##_Image kage@bzj0Lv/btr2Njv9jVR/XDKQcD1zATghKI4QR8l8Vk/img.png CDM 1.3 {“originWidth”:638,”originHeight”:606,”style”:”alignCenter”}_##]

• 저장된 내용을 다른 변수로 가공 처리하여 보는 것
• PHP(Personal Home Page), ASP(Active Server Page), JSP

웹 프로그래밍과 JSP

웹 프로그래밍 언어
• 클라이언트 측 실행 언어와 서버 측 실행 언어로 구분
• 자바를 기반으로 하는 JSP는 서버 측 웹 프로그래밍 언어 중 하나
JSP의 특징
• JSP는 서블릿 기술의 확장
• JSP는 유지 관리가 용이
• JSP는 빠른 개발이 가능
• JSP로 개발하면 코드 길이를 줄일 수 있음
JSP 페이지의 처리 과정

[##_Image kage@ctb2FI/btr2FfH1Xk0/k0tFK9o9gCROcolzrZs6K1/img.png CDM 1.3 {“originWidth”:655,”originHeight”:231,”style”:”alignCenter”}_##]

JSP 생명주기
▪ JSP 컨테이너가 관리

[##_Image kage@nxhFA/btr2CvdTkZy/prMkj4Xmr07LeLK29et5x0/img.png CDM 1.3 {“originWidth”:643,”originHeight”:377,”style”:”alignCenter”}_##]

XML(eXtensible Markup Language)

□ 구조화된 문서를 네트워크 환경에서 전송 및 활용 가능하도록 설계된 표준 마크업 언어
□ ISO SGML의 서브셋(subset)
□ 1998년 2월 XML 1.0이 W3C에 의해 표준안으로 확정
○ “모든 document는 XML 형식으로” (web, 전자결재, pptx, android, 악보 등 사례)
□ 장점
○ 호환성 : 국제 표준 규약
○ 독립성
✓ HW, OS, 프로그래밍 언어에 독립
✓ 서로 다른 네트워크 환경에서 유용
○ 구조화
✓ 문서의 구조(XML Schema, DTD), 내용(XML Document), 표현(XSL, CSS)을 분리
○ 확장성
✓ 사용자가 필요한 tag 및 문서 구조 정의
○ 활용성
✓ 문서 구조 정의를 표준화하여 다양한 포맷간 상호 변경 및 재활용 가능
○ 분석 성능
✓ 논리적 구조 정의로 분석 및 검색 효율
✓ XML Parser 및 표준화된 API (DOM, SAX 등)

XML 문서의 예

[##_Image kage@y6C4J/btr2D297Co7/BUaG4NCkHVWXOryG68jHM0/img.png CDM 1.3 {“originWidth”:610,”originHeight”:372,”style”:”alignCenter”}_##]

HTML (HyperText Markup Language)

국제표준의 문서 양식인 XML을 이용하여 정의
▪ 시작 태그, 종료 태그, 속성 …
인터넷 상의 문서를 작성하는 표준 텍스트 문서
▪ hypertext를 통해 타 문서로 이동 가능
▪ HTTP 프로토콜 사용
클라이언트 프로그램인 웹브라우저를 통해 해석, 그래픽으로 출력

Javascript

객체 기반의 script 언어 (Java와는 무관)
원래는 서버가 HTML에 포함시켜 클라이언트로 전송하면, 클라이언트 프로그램인 브라우저가 실행하는 목적
▪ 웹브라우저는 대부분 지원
최근에는 Node.js와 같은 런타임 환경을 이용하면 서버 프로그램 작성에도 사용 가능
XML의 DOM API 사용
▪ XML 문서를 트리 구조로, 다양한 트리 함수 제공