반응형

분류 전체보기 368

[HTTP 웹 기본 지식] 08. HTTP 헤더 2 - 캐시와 조건부 요청

캐시 기본 동작 캐시가 없을 때 데이터가 변경되지 않아도 계속 네트워크를 통해서 데이터를 다운로드 받아야 한다. 인터넷 네트워크는 매우 느리고 비싸다. 브라우저 로딩 속도가 느리다. 느린 사용자 경험 캐시 적용 캐시 덕분에 캐시 가능 시간동안 네트워크를 사용하지 않아도 된다. 비싼 네트워크 사용량을 줄일 수 있다. 브라우저 로딩 속도가 매우 빠른다. 빠른 사용자 경험 캐시 시간 초과 캐시 유효 시간이 초과하면, 서버를 통해 데이터를 다시 조회하고, 캐시를 갱신한다. 이때 다시 네트워크 다운로드가 발생한다. 검증 헤더와 조건부 요청 캐시 시간 초과 캐시 유효 시간이 초과해서 서버에 다시 요청하면 다음 두 가지 상황이 나타난다. 서버에서 기존 데이터를 변경함 서버에서 기존 데이터를 변경하지 않음 캐시 만료 ..

Back-end/HTTP 2021.03.09

[자바 중급 개념] 03. 인터페이스와 추상 클래스

카드 정렬 Collections 클래스와 Comparable 인터페이스를 이용해 Card 리스트를 작은 순서로 정렬해봅시다. 룰은 다음과 같습니다: 슈트(suitNumber)가 높은 카드가 '더 크다'. 수트가 같은 경우, 랭크(rankNumber)가 더 높은 카드가 '더 크다'. package Ex0309; public class Card implements Comparable { public final int suitNumber; public final int rankNumber; public Card(int suitNumber, int rankNumber) { this.suitNumber = suitNumber; this.rankNumber = rankNumber; } public String ge..

Languages/Java 2021.03.09

[자바 중급 개념] 03. 인터페이스와 추상 클래스

그림판 어플 Circle, Square, Rectangle 등 몇 가지 도형 클래스를 만들었고, 각 클래스는 추상 클래스 AbstractShape의 자식입니다. 이 중 Square와 Rectangle은 콘솔에 출력도 가능하게 만들고 싶습니다. 예를 들어서 가로 길이가 4이고 세로 길이가 3인 Rectangle 인스턴스는 아래와 같은 모양을 출력합니다. 출력 기능 계약서인 Printable 인터페이스를 작성합시다. 쉽게 말해서, implements Printable을 하는 클래스는 콘솔에 모양을 그려주는 print 메소드를 꼭 구현해야 합니다. package Ex0307; public interface Printable { void print(); } package Ex0307; public class R..

Languages/Java 2021.03.09

[자바 중급 개념] 03. 인터페이스와 추상 클래스

동물 공원 일단은 아이들이 가장 좋아하는 '고양이', '개', '돼지' 클래스를 만들텐데요. 공통적인 요소들을 모아주는 부모 클래스 AbstractAnimal을 먼저 작성하도록 하겠습니다. AbstractAnimal 클래스에는 동물의 울음 소리를 출력하는 cry 메소드가 있는데, 동물마다 다르게 울기 때문에 추상 메소드로 선언해야 합니다. 따라서 AbstractAnimal은 일반 클래스가 아닌 추상 클래스이어야겠죠? AbstractAnimal 추상 클래스 name 변수 동물의 이름을 담는 String 변수입니다. public final으로 설정해주세요. 생성자 생성자는 파라미터로 이름을 받고 name 변수에 지정해줍니다. cry 메소드 동물의 울음 소리를 출력하는 추상 메소드입니다. 리턴타입은 void로..

Languages/Java 2021.03.09

[자바 중급 개념] 02. 캐스팅과 제네릭

블랙잭 pt. 3 'Generic'을 사용해서 Deck 클래스와 BlackjackHand 클래스를 고쳐봅시다. Deck 클래스 BlackjackCard를 Deck 또는 BlackjackHand에 넣고 꺼내 쓸 때는 캐스팅이 필요합니다. 왜냐하면 Deck 클래스의 cards 리스트가 Card의 인스턴스를 담기 때문이죠. Generic 클래스로 바꾸기 유연성과 확장성을 위해 Deck을 generic 클래스로 바꿔주겠습니다. cards 리스트가 Card를 상속받는 클래스의 인스턴스를 담을 수 있도록 바꿔주세요. 강의에서 본 것처럼 'generic' 개념을 이용하면 캐스팅 없이 카드를 꺼낼 수 있겠죠? BlackjackHand 클래스 Deck가 Generic 클래스로 변경되었기 때문에 자식 클래스인 Blackj..

Languages/Java 2021.03.09

[서포터즈 1기] 코뮤니티는 처음이라

안녕하세요. ENTP 코린이(시리)입니다. 운이 좋게 코뮤니티 서포터즈 1기에 참여할 수 있게 되었던 것이 벌써 4주 전이라니 시간이 정말 빠르게 지나갔습니다. 코뮤니티를 통해 혼자 어떻게 코딩 공부를 해야 하는지 알게 되어 참 뜻깊고 고마운 활동이었습니다. 서포터즈 신청하기 정말 잘했다고 생각이 듭니다. 코뮤 서포터즈 장점 첫 번째, 알고리즘 문제를 직접 출제하기! 처음 문제를 만들었을 때는 정말 하찮게 보이고 재미없게 느껴졌지만, "우리는 모두 코린이다."라는 생각을 가지고 만들기 시작했습니다. 문제를 만들면서 구글링 실력도 향상한 것도 함정....ㅎㅎ 코뮤 회원분들이 제 문제를 풀어주실 때마다 뿌듯! 그리고 다른 서포터즈 분들이 올리신 문제를 풀 때 많은 것을 배웠습니다. 두 번째, 코딩하는 습관!..

[TIL] 2021.03.09

Java ☕ [자바 중급 개념] 02. 캐스팅과 제네릭 04. 제네릭 (Generic) 05. 제네릭 (Generic) wjdfl 06. 제네릭 extends 07. 제네릭 extends 정리 08. 블랙잭 3 [자바 중급 개념] 03. 인터페이스와 추상 클래스 01. 인터페이스 소개 02. 인터페이스 작성 03. 추상 클래스 소개 04. 추상 클래스 작성 05. 동물 공원 06. 익명 클래스 07. 그림판 어플 08. Comparable 인터페이스 09. 카드 정렬 HTTP🔗 [모든 개발자를 위한 HTTP 웹 기본 지식] 08. HTTP 헤더 2 - 캐시와 조건부 요청 01. 캐시 기본 동작 02. 검증 헤더와 조건부 요청 1 03. 검증 헤더와 조건부 요청 2 04. 캐시와 조건부 요청 헤더 05. ..

CodeSiri/TIL 2021.03.08

[자바 중급 개념] 02. 캐스팅과 제네릭

블랙잭 pt. 2 기본 룰 블랙잭의 아주 간략화된 룰을 설명하겠습니다. 딜러와 플레이어가 카드를 두 장씩 받습니다. 처음 받은 두 장의 합이 21이면 '블랙잭'입니다. 자동으로 승리합니다. 딜러와 플레이어 중 핸드 가치(카드 가치의 합)가 더 높은 사람이 이깁니다. 하지만 핸드 가치가 21이 넘어가면 패배합니다. 카드를 더 받을 수 있습니다. Ace는 일반적으로 11의 가치를 갖지만, 핸드 가치(카드 가치의 합)가 21이 넘어간 경우 1의 가치를 갖습니다. BlackJackHand '카드 셔플러' 과제에서 만들었던 Deck를 상속받아, 카드를 쥘 BlackjackHand 클래스를 구현해봅시다. 캐스팅 BlackjackHand를 구현하는데 주의해야 할 것이 있습니다. Deck 클래스에서 선언된 ArrayL..

Languages/Java 2021.03.08

[HTTP 웹 기본 지식] 07. HTTP 헤더 1 - 일반 헤더

HTTP 헤더 개요 HTTP 헤더 header-field = field-name ":" OWS field-value OWS (OWS: 띄어쓰기 허용) field-name은 대소문자 구분 없음 용도 HTTP 전송에 필요한 모든 부가정보 메시지 바디의 내용, 메시지 바디의 크기, 압축, 인증, 요청 클라이언트, 서버 정보, 캐시 관리 정보... 표준 헤더가 너무 많음 필요시 임의의 헤더 추가 가능 (helloworld: hihi) HTTP - RFC2616 (과거) 헤더 General 헤더: 메시지 전체에 적용되는 정보 (Connection: close) Request 헤더: 요청 정보 (User-Agent: Mozilla/5.0) Response 헤더: 응답 정보 (Server: Apache) Entitl..

Back-end/HTTP 2021.03.08

[TIL] 2021.03.08

Java ☕ [자바 중급 개념] 02. 캐스팅과 제네릭 01. 캐스팅 02. 캐스팅 정리 03. 블랙잭 2 HTTP🔗 [모든 개발자를 위한 HTTP 웹 기본 지식] 07. HTTP 헤더 1 - 일반 헤더 01. HTTP 헤더 개요 02. 표현 03. 콘텐츠 협상 04. 전송 방식 05. 일반 정보 06. 특별한 정보 07. 인증 08. 쿠키 Academe 🏫 Theory01. Servlet Theory02. JSP GitHub 🐸 HTTP🔗 강의를 세세하게 듣다 보니 생각보다 시간을 많이 잡아먹었다. 껄껄...ㅠㅠ 사실 집중을 잘 못했던 게 큰 것 같다. 정처기 실기도 준비해야 하는데... 책 오면 하자^^ Java 강의를 오늘 모두 끝내고 내일부터 Spring🍃에 들어가려고 했는데 컨디션이 안 좋아서 ..

CodeSiri/TIL 2021.03.07
반응형
LIST