Programming
-
[Web] Client - Server의 TCP/IP 통신Programming/Web 2020. 1. 14. 12:05
OSI 참조모델은 컴퓨터와 컴퓨터 사이의 데이터 전송을 기능별로 7가지의 계층으로 분류한 모델이다. 하위 계층들은 하드웨어로, 상위 계층들은 소프트웨어로 구현된다. TCP/IP 모델은 무엇일까? 우리가 인터넷상에서 범용으로 사용하는 TCP 프로토콜과 IP 프로토콜을 OSI 7계층 형식에 맞추어 더 추상화 시킨 모델이다. TCP/IP 모델을 통해서 클라이언트와 서버가 통신하는 과정을 살펴보자. 1. 애플리케이션 계층 (Client) 사용자가 웹 브라우저(클라이언트)에 도메인(naver.com)을 입력하면 클라이언트는 DNS 서버를 통해서 IP 주소(127.0.0.1)를 알 수 있다. 클라이언트는 HTTP 메시지를 작성하여 전송 계층으로 전달한다. 2. 전송 계층 (Client) HTTP 메시지를 패킷으로 ..
-
[Web] 토막글Programming/Web 2020. 1. 13. 16:19
W3C(World Wide Web Consortium) W3를 위한 표준을 개발하고 장려하기 위한 조직 팀 버너스 리 웹의 아버지, 팀 버너스 리는 하이퍼텍스트 기반 문서를 생산하고 공유할 수 있는 규약과 도구를 발명하였고, 중앙에서 누구에게 소유되거나 관리되지 안고 움직이는 철학을 제시했다. 또한 웹에 대한 특허를 포함한 소유권을 주장하지 않고 모두가 자유롭게 사용할 수 있도록 공개하였다. 그를 인터넷의 발명자, 인터넷의 아버지라고 칭하는 이유는 여기에 있다. 서킷(Circuit) 통신 한 팀이 이동을 할 때 같은 차를 타고 목적지 까지 이동하는 것과 같다. 처음부터 끝까지 같은 경로를 이용하는 것이다. 이 통신방식은 양 쪽이 일대일로 연결되어 연결이 된 상태에서는 해당 회선을 완전히 점유한다. 이와 ..
-
[Web] NodeList vs ArrayProgramming/Web 2020. 1. 12. 22:06
NodeList와 Array 차이점 1. NodeList와 Array의 가장 큰 차이점은 NodeList는 JavaScript API가 아닌 browser가 제공하는 API라는 것이다. DOM을 조작하기 위해 자주 사용하는 querySelectorAll()이나 getElementByTagName() 메서드는 JavaScript 메서드가 아닌 browser 메서드였다.. (그러나 JavaScript에서도 사용 가능하다. 이는 다른 스크립트 언어에서도 사용하다는 의미 !) 그리고 또 다른 의미에서도 Array와의 차이점이 있다. 2. childNodes의 NodeList는 라이브 컬렉션(동적 리스트)으로서 DOM의 변경사항을 실시간으로 반영한다. 즉, 요소를 제거하거나 DOM에 추가하면 목록이 자동으로 업데..
-
[Java] Hash, HashMapProgramming/Java 2019. 12. 31. 16:51
Hash의 개요 설명에 앞서 배열은 인덱스를 이용하여 자료의 검색이 한 번에 이루어지기 때문에 빠른 검색 속도를 가지는 장점이 있지만, data의 추가/삭제에 있어서는 데이터가 이동해야 하기 때문에 많은 시간이 소요된다. 연결리스트는 데이터의 추가/삭제시 노드의 참조값만 수정해 줌으로써 빠른 처리가 가능하다. 그러나 데이터를 검색할 때는 해당 노드를 찾기 위하여 일일이 탐색을 해야하기 때문에 데이터의 수가 많아질수록 효율이 떨어지는 구조이다. 이러한 한계를 극복하기 위하여 제시된 방법이 바로 Hash이다. Hash의 기본 개념 Hash는 내부적으로 배열을 사용하기 때문에 배열의 장점인 빠른 검색 속도를 갖는다. 또한 데이터의 추가/삭제시 이루어지는 비효율적인 이동을 극복할 수 있도록 특별한 알고리즘을 이..
-
-
[Java] String 함수Programming/Java 2019. 11. 15. 17:02
substring(int start) 지정한 문자열에서 start부터 문자열 끝까지만 유지한다. substring(int start, int end) 지정한 문자열에서 start부터 end 앞까지만 유지한다. replace(String target, String replcament) 지정한 문자열에서 taret과 같은 문자를 찾아 replcement로 치환하는 함수 replaceAll(String regex, String replcament), replaceFirst(String regex, String replcament) replace() 함수와 다르게 첫번째 인자값으로 정규식이 들어간다. replaceAll은 특수문자로 치환이 어렵다. split(String st) 지정한 문자를 st를 기준으로 문..