웹 브라우저에 URL을 입력하면.. 웹 브라우저에 URL을 가리키면 브라우저는 인터넷에서 사이트를 호스팅하는 서버를 파악합니다. 이때 우리가 사용하는 URL은 보통 도메인으로 이는 도메인 네임 서버를 통해서 고유한 주소인 IP 주소를 받아서 돌려 줍니다. 우리가 IP 주소를 직접 사용하지 않는 이유는 IP 주소가 다음과 같은 숫자로 이루어져 있어서 기억하기 어렵기 때문입니다. (127.0.0.1 과 같은 형태를 가지고 있습니다.) 우리가 휴대폰에 다른 사람의 이름으로 전화번호를 검색하듯이 우리는 도메인 이름을 통해서 웹사이트를 받아옵니다. 도메인의 IP주소 조회 우리가 웹브라우저에 URL을 입력하면 브라우저는 그에 맞는 DNS(Domain Name Server)에서 IP주소를 찾아옵니다. DNS는 웹브라..
IP란? 지정한 IP 주소에 패킷단위로 데이터를 전달하는 인터넷 규칙입니다. 클라이언트는 전송데이터를 보내기 전에 출발 IP와 목적 IP를 지정해야하고 데이터를 패킷이라는 통신단위를 통해 서버에게 전달합니다. 반대로 서버는 패킷을 잘 전달 받았다는 응답을 출발 IP와 목적 IP를 반대로 지정해서 클라이언트에게 서버 패킷을 통해 전달합니다. 단점 비연결성 - 대상 서버의 상태를 확인할 수 없지만 클라이언트는 패킷을 전송합니다. 서버는 패킷을 받을 수 없지만 클라이언트에서는 알 방법이 없습니다. 패킷을 전달 받는 대상이 없을때도 여전히 클라이언트는 패킷을 전달할 수 있습니다. 비신뢰성 - 클라이언트에서 서버로 패킷이 전달되는 과정 중에서 패킷은 소실될 수 있고 혹은 여러개의 패킷을 한번에 보낸다면 전달 순서..
LiveReload란? LiveReload는 개발자가 소스를 수정하면 브라우저에 자동으로 반영해주는 오픈소스 툴입니다. 기존의 스프링으로 개발을 할때 새로운 정적인 페이지를 넣는다던지 의존관계 수정을 하면 일일이 어플리케이션을 수동으로 껐다가 켜야했습니다. 하지만 LiveReload는 그 귀찮은 과정을 매번 파일이 수정될때마다 어플리케이션 전체를 다시 로딩하여 개발자가 수정한 파일이 브라우저에서 바로 확인할 수 있게 도와줍니다. 1. build.gradle 설정 dependencies { developmentOnly 'org.springframework.boot:spring-boot-devtools' } build.gradle에 의존성을 추가합니다. 2. application.properties 설정 s..
목차 기본적인 ArrayListArrayList는 잘 알려져있듯이 java.util에 들어 있는 class 중의 하나다. 배열과 다르게 크기를 조절할 수 있고 RandomAccess 인터페이스를 상속해서 내부 요소에 대한 O(1) (상수시간)에 가까운 탐색이 가능하다. 하지만 요소를 추가하거나 삭제할 때는 O(n)이 걸리기 때문에 많은 요소를 삭제해야 한다면 LinkedList와 같은 자료 구조를 사용하자. 다음과 같이 제네릭을 사용해 보통 새로운 ArrayList를 생성한다.import java.util.ArrayList;class Main { private static ArrayList orders = new ArrayList(); public static void main(String[..
목차https://school.programmers.co.kr/learn/courses/30/lessons/92335 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr서론오늘 알아 볼 것은 자바와 파이썬에서 각각에서의 진수 변환을 어떻게 하는지, 그리고 그 내용을 토대로 이 문제를 풀어볼 것이다 자바에서의 진수 변환먼저 자바에서는 10진수에서 다른 진수로의 변환을 기본 Integer 클래스에서 toString() 메소드를 통해서 스트링 형태의 진수로 반환한다. 다음과 같이 10진수의 숫자 883438을 3진수로 변환시킨다면 아래와 같다.class Main { ..
목차 서론 PS 세상에서 난 행복할 수 없는걸까... https://www.acmicpc.net/problem/7662 7662번: 이중 우선순위 큐 입력 데이터는 표준입력을 사용한다. 입력은 T개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 입력 데이터의 수를 나타내는 정수 T가 주어진다. 각 테스트 데이터의 첫째 줄에는 Q에 적 www.acmicpc.net 한달 전에 풀었었지만 오늘 프로그래머스에서 동일한 문제를 풀다가 생각이나서 Java로 다시 풀어봤다! https://school.programmers.co.kr/learn/courses/30/lessons/42628 참고로 프로그래머스에 있는 문제와 백준에 올라와 있는 문제는 동일하다. 같은 로직을 써서 정답을 받을 수 있지만 프로그래머스의..