[JAVA] Collection(컬렉션) 이란?

Collection Java Collection 에는 List, Map, Set 인터페이스를 기준으로 여러 구현체가 존재한다. 이에 더해 Stack과 Queue 인터페이스도 존재한다. 왜 이러한 Collection 을 사용하는 것일까? 그것은 다수의 Data 를 다루는데 표준화된 클래스들을 제공해주기 때문에 편하게 DataStructure 를 직접 구현하지 않고 사용할 수 있는 것이며, 배열과는 다르게 객체를 보관하기 위한 공간을 미리 정하지 않아도 되므로, 상황에 따라 객체의 수를 동적으로 정할 수 있음으로서 프로그램의 … 더 읽기

[JAVA] 클래스, 변수명 네이밍 규칙

자바의 식별자 자바의 식별자는 변수나 상수, 메서드, 사용자가 정의하는 클래스 등을 구분할 수 있는 이름입니다. 자바 식별자 규칙 일반적 관례 올바른 예 잘못된 예 명칭 정하는 관례 적절하게 정의된 명칭의 예 예약어 기능이 이미 정해져 있는 키워드를 의미자바 예약어는 모두 소문자로 약 50여 개로 이루어져 있음 자바의 예약어 abstract assert boolean break byte case catch … 더 읽기

[JAVA] 객체 지향 프로그래밍이란?

 객체 지향 프로그래밍 이전의 프로그래밍 패러다임을 살펴보면, 중심이 컴퓨터에 있었다. 컴퓨터가 사고하는대로 프로그래밍을 하는 것이다. 하지만 객체지향 프로그래밍이란 인간 중심적 프로그래밍 패러다임이라고 할 수 있다. 즉, 현실 세계를 프로그래밍으로 옮겨와 프로그래밍하는 것을 말한다. 현실 세계의 사물들을 객체라고 보고 그 객체로부터 개발하고자 하는 애플리케이션에 필요한 특징들을 뽑아와 프로그래밍 하는 것이다. 이것을 추상화라한다.  OOP 로 코드를 작성하면 … 더 읽기

[Network] 웹 통신의 큰 흐름 ( 브라우저 주소창에 URL 입력 시 과정 )

웹 통신의 큰 흐름 우리가 Chrome 을 실행시켜 주소창에 특정 URL 값을 입력시키면 어떤 일이 일어나는가? in 브라우저 이 때 전송하는 과정은 브라우저가 직접하는 것이 아니라 위에서 설명한 운반 구조에 의뢰하여 메시지를 전달한다. 우리가 택배를 보낼 때 직접 보내는게 아니라, 이미 서비스가 이루어지고 있는 택배 시스템(택배 회사)을 이용하여 보내는 것과 같은 이치이다. in 프로토콜 스택, … 더 읽기

[Network] HTTP vs HTTPs

HTTP 와 HTTPS HTTP 의 문제점 위 세 가지는 다른 암호화하지 않은 프로토콜에도 공통되는 문제점들이다. TCP/IP 는 도청 가능한 네트워크이다. TCP/IP 구조의 통신은 전부 통신 경로 상에서 엿볼 수 있다. 패킷을 수집하는 것만으로 도청할 수 있다. 평문으로 통신을 할 경우 메시지의 의미를 파악할 수 있기 때문에 암호화하여 통신해야 한다. 보안 방법 통신 상대를 확인하지 않기 … 더 읽기

[Network] TCP vs UDP

UDP UDP(User Datagram Protocol, 사용자 데이터그램 프로토콜)는 비연결형 프로토콜 이다. IP 데이터그램을 캡슐화하여 보내는 방법과 연결 설정을 하지 않고 보내는 방법을 제공한다. UDP는 흐름제어, 오류제어 또는 손상된 세그먼트의 수신에 대한 재전송을 하지 않는다. 이 모두가 사용자 프로세스의 몫이다. UDP가 행하는 것은 포트들을 사용하여 IP 프로토콜에 인터페이스를 제공하는 것이다. 종종 클라이언트는 서버로 짧은 요청을 보내고, 짧은 응답을 기대한다. 만약 요청 또는 응답이 … 더 읽기

Network 3-way-handshake & 4-way-handshake

연결 성립(Connection Establishment) 1) 클라이언트는 서버에 접속을 요청하는 SYN(a) 패킷을 보낸다.2) 서버는 클라이언트의 요청인 SYN(a)을 받고 클라이언트에게 요청을 수락한다는 ACK(a+1)와 SYN(b)이 설정된 패킷을 발송한다.3) 클라이언트는 서버의 수락 응답인 ACK(a+1)와 SYN(b) 패킷을 받고 ACK(b+1)를 서버로 보내면 연결이 성립(establish)된다. 연결 해제(Connection Termination) 1) 클라이언트가 연결을 종료하겠다는 FIN플래그를 전송한다. 2) 서버는 클라이언트의 요청(FIN)을 받고 알겠다는 확인 메세지로 ACK를 보낸다. 2-1) 그리고나서는 데이터를 모두 보낼 때까지 잠깐 TIME_OUT이 된다. 3) 데이터를 모두 보내고 … 더 읽기

[Network] GET vs POST 방식

HTTP 의 GET 과 POST 비교 둘 다 HTTP 프로토콜을 이용해서 서버에 무엇인가를 요청할 때 사용하는 방식이다. 하지만 둘의 특징을 제대로 이해하여 기술의 목적에 맞게 알맞은 용도에 사용해야한다. GET 우선 GET 방식은 요청하는 데이터가 HTTP Request Message의 Header 부분의 url 에 담겨서 전송된다. 때문에 url 상에 ? 뒤에 데이터가 붙어 request 를 보내게 되는 것이다. 이러한 방식은 url … 더 읽기