IT 도서 리뷰/개발자가 되기 위해 꼭 알아야 하는 IT 용어 43

[PART2] 네트워크/통신/데이터 - TERMS 7

[ TERMS 07 ] HTTP 1. HTTP(HyperText Transfer Protocol)의 정의  HTML은 우리가 보는 웹 페이지가 어떻게 구조화되어 있는지 브라우저로 하여금 알 수 있게 하는 마크업 언어이다. 클라이언트와 서버의 언어와 규칙이 서로 다르다면 제대로된 데이터의 전달이 불가능하다. 즉, 클라이언트와 서버가 리소스를 주고받기 위해 규칙이 있는 메시지를 전달해야 하고 이러한 규칙이 HTTP이다. 2. HTTP는 언제 접하게 될까? 어느 웹 페이지나 URI에서 'HTTP' 또는 'HTTPS'를 사용하는 것을 볼 수 있다. 최근 네트워크가 빠르게 성장하면서 다양한 정보가 교횐되는데, 이때 HTTP와 HTTPS가 중요한 역할을 수행한다. 3. HTTP 알아보기>  개념 웹은 기본적으로 H..

[PART2] 네트워크/통신/데이터 - TERMS 6

[ TERMS 06 ] IP/DNS1. IP (Internet Protocol) / DNS (Domain Name System) 의 정의 IP와 IP주소는 다르다는 점을 명확히 해야한다. IP는 인터넷에서 컴퓨터의 위치를 찾아서 데이터를 전송하기 위해 지켜야 하는 규약이고, IP주소는 데이터를 전송하기 위해 사용되는 컴퓨터의 주소이다. DNS는 도메인 이름과 IP 주소를 서로 변환하는 역할을 한다. 2. IP / DNS 는 어디서 접하게 될까? IP 주소는 컴퓨터의 주소로 사용되며 클라우드 서버 접속 등 다른 컴퓨터에 접속할 때 사용한다. DNS는 평소 인터넷을 이용할때 자연스럽게 사용하는 시스템이다. 3. IP / DNS 알아보기>  등장 배경IP IP 주소는 컴퓨터가 연결된 네트워크의 주소로, 사람의..

[PART2] 네트워크/통신/데이터 - TERMS 5

[ TERMS 05 ] URI1. URI(Uniform Resources Identifier)의 정의 URI는 인터넷에 있는 많은 자원들을 구분하기 위한 문자열로, 흔히 웹 사이트의 주소로 정의된다. URI를 활용하면 원하는 웹사이트에 접근하거나 자원들을 식별 가능하다. 2. URI는 어디서 접하게 될까? 웹 사이트에 접근할 때 URI를 활용한다. URI는 웹 사이트에서 요구되는 기본조건으로 모든 웹 사이트가 가지고 있다.3. URI 알아보기>  등장 배경 웹 사이트마다 고유의 IP가 존재하지만, 사용자가 모든 IP 주소를 기억하기에는 어렵기 때문에 문자열로 된 URI를 활용하기 시작했다. >  개념 URI는 자원이 어디 있는지 식별하는 통합된 방법이다. URL(통합 자원 위치로 네트워크상에서 자원이 어..

[PART2] 네트워크/통신/데이터 - TERMS 4

[ TERMS 04 ] 포트   1. 포트(Port)의 정의 소프트웨어적 포트 : 네트워크 통신의 종단점으로서 용도별로 앱을 구분 짓는 논리적 통로[e.g. 하나의 IP주소가 연결된 기기에 통신을 필요로 하는 여러 프로그램이 구동중이거나 IP 주소에 공유기로 연결된 여러 기기가 물려있을경우 이를 구분하는 개념] 2. 포트는 어디서 접하게 될까? 웹 개발을 하면서 서버와 클라이언트를 다룰 때 사용하는 포트 포워딩(Port Forwarding)을 사용할 때 접하는 개념이다. 포트 개념을 이해하면 한 IP 안에 연결된 수많은 기기와 프로그램을 구분해서 통신할 수 있다.3. 포트 알아보기>  개념 웹 브라우저가 웹 페이지를 요청하는 과정을 살펴보면 주소창에 'www.naver.com'을 입력하면 DNS 서버에 ..

[PART2] 네트워크/통신/데이터 - TERMS 3

[ TERMS 03 ] 프로토콜 1. 프로토콜(Protocol)의 정의 프로토콜은 컴퓨터, 통신장비 간의 원활한 소통을 위한 약속이다. 본래 프로토콜은 외교상의 의례나 약속을 의미했지만, 인터넷의 발달로 그 의미가 확대되었다.2. 프로토콜은 어디서 접하게 될까?>  TCP / IP TCP와 IP는 인터넷에서 가장 중요한 역할을 하는 프로토콜이다. 과거 냉전 시절, 미국에서 서킷 통신의 단점을 보완하고자 패킷 통신을 고안하였다.  서킷 통신은 일대일로 연결되는 방식이며, 선이 연결되어있어야 하고 교환원을 통해서 연결을 해야한다. 반면 패킷 통신은 데이터를 보낼 때 잘게 쪼개서 보낸다. 데이터를 쪼개서 보내면 도착할 때는 순서나 데이터가 달라질 수 있다. 이를 보완하기 위해서 TCP / IP가 등장한다.  ..

[PART2] 네트워크/통신/데이터 - TERMS 2

[ TERMS 02 ] TCP / UDP1. TCP / UDP의 정의 TCP와  UDP는 '수신 측에 데이터를 전달한다'는 목표를 갖고 있지만 성질이 다른 트랜스포트 층의 프로토콜이다. 2. TCP / UDP는 어디서 접하게 될까? TCP/UDP는 눈에 보이지 않지만 웹 사이트 접속, 모바일 게임, 이미지 다운로드, 영상 재생, 이메일 등 일상에서 자주 사용되고 있다. TCP/UDP를 설명하기 전에 먼저 알아야 할 배경지식에 대해서 소개하겠다. >  네트워크 '네트워크'라고 하면 컴퓨터 용어 또는 시민단체나 동아리 등 일반적인 의미가 떠오른다. 네트워크는 한 단어이지만 '통신망', '관계', 방송'등 다양한 뜻을 가진다. 사전을 찾아보면 네트워크에는 '망'이라는 의미가 있다. 앞서 언급한 의미와 연결하여..

[PART2] 네트워크/통신/데이터 - TERMS 1

[ TERMS 01 ] OSI 계층1. OSI( Open Systems Interconnection ) 7계층의 정의 OSI는 개방형 시스템 간의 상호 연결을 의미한다. 국제 표준화 기구인 ISO에서 개발한 모델로 컴퓨터 네트워크의 프로토콜 디자인과 통신을 계층으로 나누어 설명한 것이다. 간단하게 네트워크에서 통신이 일어나는 과정을 7단계로 나눠서 설명한 모델이다. 2. OSI 7계층은 어디서 접하게 될까? OSI 7계층은 컴퓨터 과학 분야인 네트워크/통신과 정보처리기사 시험 등을 준비하면 접하게 되는 개념이다. 통신이란 2개 이상의 컴퓨터가 데이터를 주고 받는것을 의미한다. 이때 각 컴퓨터를 '호스트'라고 부르고 송신하는 호스트에서 OSI 7계층을 이용하여 수신하는 호스트로 데이터를 전달한다. 3. O..

[PART1] 웹/디자인 - TERMS 16

[ TERMS 16 ]  PWA1. PWA( Progressive Web App )의 정의 PWA는 구글 크롬 엔지니어 알렉스 러셀과 디자이너 프랜시스 베리만이 소개한 웹의 새로운 개념으로 네이티브 앱( Native App ) 수준으로 웹 기술이 발전해 나갈 수 있게 방향성을 제시하는 최신 웹 개발 방법이다. 궁극적으로는 웹에서 네이티브 앱 수준의 사용자 경험을 제공하는 것이 목적이다. 2. PWA는 어떻게 접하게 될까? 웹 사이트에 접속했는데 앱을 설치하겠냐고 물어보며 팝업창을 띠우고, 클릭시 스토어를 거치지 않고 설치된다면 PWA이다. 대표적으로는 스타벅스가 PWA로 만들어진 웹 앱을 서비스하고 있다. PWA는 웹 앱의 화면과 동일하지만 주소창이 사라지고 네이티브 앱처럼 더 쾌적하게 사용할 수 있다...

[PART1] 웹/디자인 - TERMS 15

[ TERMS 15 ]  SPA1. SPA(Single Page Application)의 정의 SPA는 웹 사이트의 전체 페이지를 하나의 페이지로 구현하고, 새로운 콘텐츠를 요구할 때마다 하나의 페이지 안에서 필요한 부분만 동적으로 처리하는 개발 방법이다. 2. SPA는 어떻게 접하게 될까? 초기의 웹 사이트는 단순한 문서 작성 용도로 활용되었기에 웹 페이지를 이동할 때마다 서버로부터 새로운 페이지를 받아와도 큰 문제가 없었다. 하지만 최근 웹 사이트가 고도화 됨에 따라 한 페이지가 처리해야 하는 데이터의 크기 및 복잡도가 점점 증가하여 기존의 웹 개발 방식으로는 사용자 경험을 만족시킬수가 없어졌다. SPA는 웹에서도 모바일과 같은 사용자 경험을 제공하기 위해 등장했다. 3. SPA 알아보기>  개념 S..

[PART1] 웹/디자인 - TERMS 14

[ TERMS 14 ]  MVC 1. MVC(Model-View-Controller)의 정의 앱 개발을 세 개의 영역으로 분할하고 각 요소에 고유의 역할을 부여하는 방식이다. MVC 패턴은 M(Model)은 데이터 영역, V(View)는 사용자에게 보여지는 UI영역, C(Controller)는 비즈니스 로직 처리 영역으로 분리해서 개발을 진행한다. MVC패턴을 도입하면 UI 영역과 도메인(비즈니스) 처리 영역이 분리되므로 서로 영향을 주지 않고 유지 보수 할 수 있다. MVC는 소프트웨어 디자인 패턴 중 하나이다. (디자인 패턴을 잘 활용하면 가독성과 간결성을 갖출 뿐만 아니라 설계적 측면에서도 이점이 있다. 즉, 확장과 유지 보수가 용이하여 효율적인 소스 코드를 작성할 수 있다.) 2. MVC는 어떻게..