전체 글 (9) 썸네일형 리스트형 신입 개발자 면접 준비를 위한 HTTP와 HTTPS 차이점 1. HTTP와 HTTPS의 차이HTTP(HyperText Transfer Protocol)HTTP는 5L(애플리케이션 계층)의 프로토콜로 웹 상에서 데이터를 전송하는 규칙입니다. 브라우저에서 웹 사이트 URL을 들어갈 때 브라우저는 웹 서버로 HTTP request를 보내고, 서버는 HTTP response로 응답합니다. HTTP 프로토콜은 전달하는 메시지가 어떻게 작성되어야 하는지, 어떻게 전송되어야 하는지 등을 정의하고 있습니다. HTTPS(HyperText Transfer Protocol Secure)HTTPS는 SSL/TLS 암호화가 추가된 HTTP 입니다. 데이터를 plain text로 전달하지 않고 암호화를 시켜 전달하므로 중간에 데이터를 훔쳐도 그 데이터를 읽을 수 없습니다. SSL/TLS.. 주소창에 google.com을 입력하면 일어나는 일 신입 개발자 면접 질문 예상 목록에 항상 있는 "주소창에 google.com을 검색하면 일어나는 일"을 정리해 보겠습니다. 네트워크 관련 질문이므로 '네트워크'를 가장 자신 있는 과목으로 뽑는다면 이 질문을 받을 가능성이 높아보입니다. 유명한 면접 질문인 만큼 이 과정을 정리한 블로그들이 이미 많지만 저 역시 작성해보고자 합니다. 과정 정리(& 목차)IP 주소를 찾는다. (resolving한다)브라우저 로컬 캐시에서 해당 URL의 IP 주소를 찾는다. (이후 운영 체제 캐시를 확인한다)캐시에서 찾지 못하면, ISP의 DNS 서버에 쿼리를 날려 IP 주소를 찾는다.브라우저는 IP주소의 서버와 TCP 연결을 한다.연결이 되면 브라우저는 HTTP 요청을 한다.서버는 브라우저에 HTTP 응답을 보낸다.브라우저는.. HTTP 멱등성(Idempotency): 개념에서 적용까지 백엔드 개발자 지원에 관해서 Idempotency(멱등성)를 이해하는 사람이라는 자격요건이 있었습니다.HTTP에서 PUT은 멱등하고 POST는 멱등하지 않다는 것을 아는 정도가 제 멱등성의 이해 수준이었습니다.😅구체적으로 Idempotency를 알기 위해 이번 게시글을 작성합니다. 목차멱등성(Idempotency)란 무엇인가?안전성(safety)와 멱등성(Idempotency)의 차이HTTP 메서드와 멱등성DELETE는 왜 멱등한가? - 예시로 보기PUT은 멱등한데, POST와 PATCH는 왜 멱등하지 않은가? - 예시로 보기HTTP 멱등성이 보장되지 않을 때 발생하는 문제와 해결 방법멱등성이 보장되지 않을 경우 문제점멱등성을 지키는 방법 1. 멱등성(Idempotency)란 무엇인가?멱등성은 연산을 .. 자바 오브젝트 정렬: Comparable과 Comparator 프로그래머스 L2 호텔대실 문제를 풀다가 객체를 만들어 제가 원하는 기준으로 정렬하고 싶었습니다.매번 헷갈림에도 자바 객체 정렬을 제대로 정리하지 못했었는데, 문제로 마주친 김에 체계화 하고자 '자바 객체 정렬인 Comparable과 Comparator'에 관해 포스팅합니다.참고로 호텔대실 문제를 풀 때 저처럼 객체를 만들어 정렬하는 것이 꼭 필요하진 않습니다. 목차도입Comparable interface 사용 예시Comparator interface 사용 예시comparator를 구현한 클래스 직접 만들어 사용람다표현식이용체이닝결론참고자료 1. 도입정렬(sort)는 프로그래밍을 하며 자주 사용하는 동작이고, 숫자의 오름차순 정렬같이 기본 정렬 외에도 커스텀된 기준에 따라 정렬을 하기도 합니다. Java.. [내돈내산] 로지텍 Signature M650 마우스 기존 사용하던 마우스가 1만원 이하의 저렴한 마우스라 그런지 휠이 쉽게 망가졌습니다.휠이 망가진 동안 비상용으로 있던 1만원 이하의 유선 마우스를 사용했습니다. 선이 없는 깨끗해 보이는 무선을 원하기도 했고, 부드럽게 굴러가는 휠을 원해서 새 마우스를 내돈내산했습니다. 로지텍 MX Master 3s를 구매하고 싶지만, 제 기준 마우스 치고 너무 비싸다고 생각했습니다.로지텍 MX Master 3S가 한 자리에 두고 쓰는 데 적합한 사이즈와 무게이기도 했고요. 로지텍 시그니처 M650 M650의 공식 사이트 이미지는 위와 같습니다. 사진이 잘 나왔지만, 공식 사이트에 있는 이미지를 고려할 때 플라스틱 재질과 거리가 있어 보였습니다. 그 덕에(?) 처음 봤을 때는 매우 저렴한 마우스와 동일하게 플라스틱 덩.. Spring Persistence Framework: MyBatis 앞서 [💻️ 프로그래밍] - Spring Persistence Framework: Spring Data JPA와 MyBatis 로부터 시작된 게시글입니다. 영속성 프레임워크(Persistence Framework)에는 ORM과 SQL Mapper 방식이 있습니다. 스프링의 Persistence Framework에는 ORM 대표로 Hibernate가 있고, SQL Mapper로 MyBatis가 있습니다. [💻️ 프로그래밍] - Spring Persistence Framework: Spring Data JPA에서 Hibernate로 구현된 Spring Data JPA를 사용한 내용이 있고, 현재는 MyBatis로 같은 프로젝트를 만들어 보려 합니다. 둘의 차이를 직접 느끼기 위해서요. 목차이전 글: [?.. Spring Persistence Framework: Spring Data JPA 앞서 [💻️ 프로그래밍] - Spring Persistence Framework: Spring Data JPA와 MyBatis로부터 시작된 게시글입니다. 영속성 프레임워크(Persistence Framework)에는 ORM과 SQL Mapper 방식이 이 있습니다. 스프링의 Persistence Framework에는 ORM 대표로 Hibernate가 있고, SQL Mapper로 MyBatis가 있습니다. 현재 사용하려는 Spring Data JPA는 Hibernate를 구현체로 개발자가 사용하기 편하도록 만든 것입니다. Spring Data JPA와 MyBatis 차이를 글로 읽을 때는 와닿지 않습니다.직접 사용해보고 차이를 체감하기 위해서 Spring Data JPA와 MyBatis를 사용해 보고자 .. Spring Persistence Framework: Spring Data JPA와 MyBatis 저는 스프링 부트로 웹 개발을 하면서 'hibernate'라는 말은 들었지만 조금도 이해하지 못했습니다. 내가 추가한 의존성 어디에도 'hibernate'는 존재하지 않는데 제가 하고 있는 것에는 있다고 하니 '??'라는 반응만 할 수 있었습니다. 현재는 Spring Data JPA는 사용이 약속된 JPA 위에서 더 편하게 돌아가게하고 hibernate는 JPA의 구현체라는 것을 받아들이고 사용하고 있습니다. 최근이라기엔 조금 지났지만 MyBatis를 사용해 볼 일이 있었고, 이 경험으로 복잡한 쿼리문에는 SQL Mapper 방식이 더 적합하다는 것을 체감했습니다. 이 경험을 정리하고 공유하기 위해 현재 게시글을 작성합니다. 목차목차를 먼저 잡아보겠습니다. 참고로 글은 여러 글로 나눠서 작성할 예정입니다.. 이전 1 2 다음