애정코딩 💻

HTTP , HTTPS

HTTP / HTTPS - HTTP : 서로 다른 시스템들 사이에서 통신을 주고받게 하는 가장 기본적인 프로토콜(서버에서 브라우저로 데이터를 전송하는 용도로 가장 많이 사용함) 문제점 - 서버에서 브라우저로 전송되는 정보가 암호화되지 않는다. - HTTPS : SSL(보안 소켓 계층) 사용, 서버와 브라우저 사이에 안전하게 암호화된 연결을 만들 수 있게 도와준다. 서버와 브라우저가 민감한 정보를 주고받을 때 해당 정보가 도난당하는 것을 막아줌. HTTP 자체를 암호화하는 것이 아닌 HTTP Message Body를 암호화한다. (즉, Header는 암호화되지 않는다) HTTPS 사용해야하는 이유 1. 중간에 데이터를 가로채도 암호화되어 있기 때문에 안전하다. 2. 구글은 HTTPS 웹 사이트에 가산점을 ..

BASIC 2022.02.23 Joana

03. 객체 지향 프로그래밍 입문 - 상속, 의존

상속 상속을 통한 기능 재사용시 발생할 수 있는 단점 1. 상위 클래스 변경이 어려움 - 상위 클래스를 조금만 잘못 변경해도 그 하위 클래스들이 비정상적으로 작동될 수 있음. ( 계층도를 따라 전파됨 ) 2. 새로운 조합이 생길 때 마다 하위 클래스가 증가된다. 어떤 클래스를 상속받는지도 애매 3. 상속을 오용할 수 있다. 이와 같은 단점 해결 방법이 있을까? - 여러 객체를 묶어서 더 복잡한 기능을 제공 - 보통 필드로 다른 객체를 참조하는 방식으로 조립, 객체를 필요 시점에 생성/구함 상속하기에 앞서 조립으로 풀 수 없는지 검토하고 진짜 하위 타입인 경우에만 상속을 이용합니다! (기능 재사용 시 쓰지 않도록 주의!) 조건 분기일 경우 추상화, 상속이 좋습니다. -> 의도가 잘 드러나는 이름 사용 의존..

BASIC 2021.05.10 Joana

02. 객체 지향 프로그래밍 입문 - 다형성과 추상화

다형성(Polymoriphism) 여러(poly) 모습(morph)을 갖는 것 객체 지향에서는 한 객체가 여러 타입을 갖는 것 추상화(Abstraction) 데이터나 프로세스 등을 의미가 비슷한 개념이나 의미 있는 표현으로 정의하는 과정 두 가지 방식의 추상화 - 특정한 성질 ex) 통화, 금액 을 'Money class'로 추상화할 수 있다. - 공통 성질(일반화) ex) 삼성의 SL-M2XX, HP MXX 을 '프린터'로 추상화 할수 있다. 서로 다른 구현을 추성화 한다. 예를 들어 (SCP로 파일 업로드, HTTP로 데이터 전송, DB 테이블에 삽입) => 푸시 발송 요청으로 추상화할 수 있다. 타입 추상화 여러 구현 클래스를 대표하는 상위 타입 도출 기능에 대한 의미만 제공하고 구현은 제공하지 않..

BASIC 2021.05.10 Joana

01. 객체 지향 프로그래밍 입문 - 객체와 캡슐화

www.inflearn.com/course/%EA%B0%9D%EC%B2%B4-%EC%A7%80%ED%96%A5-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D-%EC%9E%85%EB%AC%B8 객체 지향 프로그래밍 입문 - 인프런 | 강의 잘 하는 개발자가 되기 위해서는 유연한 코드를 작성할 줄 알아야합니다. 객체 지향을 이용해서 변경하기 좋은 유연한 코드를 만드는 방법을 알아보세요., 객체 지향 프로그래밍 입문 이번 '객 www.inflearn.com 해당 강의를 보며 정리한 내용입니다! 객체의 핵심? 객체는 제공하는 기능으로 정의한다. 어떤 기능을 제공하는지로 정의하지 내부적으로 가진 필드로 정의하지 않는다. 예를들어 회원객체가 있다면 회원객체의 기능은 회원수정, 회..

BASIC 2021.05.07 Joana

08. HTTP 웹 기본 지식 - 캐시 기본 동작

2021.05.03 - [BASIC] - 01. HTTP 웹 기본 지식 - 인터넷 네트워크 2021.05.03 - [BASIC] - 02. HTTP 웹 기본 지식 - URI 2021.05.03 - [BASIC] - 03. HTTP 웹 기본 지식 - 모든것이 HTTP 2021.05.03 - [BASIC] - 04. HTTP 웹 기본 지식 - HTTP API 2021.05.04 - [BASIC] - 05. HTTP 웹 기본 지식 - 클라이언트에서 서버로 데이터 전송 2021.05.04 - [BASIC] - 06. HTTP 웹 기본 지식 - HTTP 상태코드 소개 2021.05.06 - [BASIC] - 07. HTTP 웹 기본 지식 - HTTP 헤더 개요 캐시와 조건부 요청 캐시가 없을 때 - 첫 번째 요청..

BASIC 2021.05.06 Joana

07. HTTP 웹 기본 지식 - HTTP 헤더 개요

일반헤더 HTTP 헤더 개요 용도 : HTTP 전송에 필요한 모든 부가정보 예) 메시지 바디의 내용, 메시지 바디의 크기, 압축, 인증, 요청 클라이언트, 서버 정보, 캐시 관리 정보 ...등등 표준 해더가 있지만 너무 많고 필요시 임의의 헤더 추가 가능하다. 예) TOKEN : AEJEONG 과거에의 HTTP 헤더 분류 Request 헤더 : 요청 정보 예) User-Agent : Mozila/5.0 (Macintosh; ..) -> 클라이언트가 서버어게 유저의 기기 정보를 알려준다. Response 헤더 : 응답 정보 예) Server: Apache -> 서버가 클라이언트에게 서버 정보를 알려준다. General 헤더 : 메시지 전체에 적용되는 정보 예) Connection: close Entity..

BASIC 2021.05.06 Joana

06. HTTP 웹 기본 지식 - HTTP 상태코드 소개

HTTP 상태코드란? 클라이언트가 보낸 요청의 처리가 상태를 응답해주는 기능 - 1xx (Informational) : 요청이 수신되어 처리중 ( 거의 사용되지 않음 ) - 2xx (Successful) : 요청 정상 처리 - 200 OK : 결과를 정상적으로 처리 했다. - 201 Created : 요청 성공해서 새로운 리소스가 생성됨 ( post 요청에 대한 응답으로 Location 에 생성된 리소스의 url를 삽입 ) - 202 Accepted : 요청이 접수되었으나 처리가 완료되지 않았음 -> 배치 처리 같은곳에서 사용 (요청을 하고 나중에 한번에 처리하는 것) - 204 No Content : 서버가 요청을 성공적으로 수행했지만, 응답 페이로드 본문에 보낼 데이터가 없을 때 2xx 코드로 성공만..

BASIC 2021.05.04 Joana

05. HTTP 웹 기본 지식 - 클라이언트에서 서버로 데이터 전송

데이터 전달 방식은 크게 2가지이다. 1. 쿼리 파라미터를 통한 데이터 전송 - GET - 주로 정렬 필터(검색어) 2. 메시지 바디를 통한 데이터 전송 - POST, PUT, PATCH - 회원 가입, 상품 주문, 리소스 등록, 리소스 변경 예시) 1. 정적 데이터 조회 - 쿼리 파라미터 미사용 GET /static/start.jpg -> 리소스 경로로만 조회가 가능하다. 2. 동적 데이터 조회 - 쿼리 파라미터 사용 GET /search?q=hello&hl=ko - 주로 검색, 게시판 목록에서 정렬 필터(검색어) - 조회 조건을 줄여주는 필터, 조회 결과를 정렬하는 정렬 조건에 주로 사용 - 조회는 GET 사용 - GET은 쿼리 파라미터 사용해서 데이터를 전달 3. HTML Form 데이터 전송 - ..

BASIC 2021.05.04 Joana

04. HTTP 웹 기본 지식 - HTTP API

2021.05.03 - [BASIC] - 01. HTTP 웹 기본 지식 - 인터넷 네트워크 2021.05.03 - [BASIC] - 02. HTTP 웹 기본 지식 - URI 2021.05.03 - [BASIC] - 03. HTTP 웹 기본 지식 - 모든것이 HTTP API URI 고민 리소스라는 의미는 뭘까? 회원을 등록하고 수정,조회 하는게 리소스는 아니다 회원이라는 개념 자체가 바로 리소스이다. 나는 DB에 저장되어있는 한 로우의 데이터라고 이해한다. 그렇다면 어떻게 식별하는게 좋을까? 수정,조회 하는 것을 모두 배제하고 회원이라는 리소스만 식별한다. -> 회원 리소스를 URI 매핑 API URI 설계 - 리소스만을 식별하기 때문에 URI 계층 구조를 활용한다. - 리소스와해당 리소스를 대상으로 하는..

BASIC 2021.05.03 Joana

03. HTTP 웹 기본 지식 - 모든것이 HTTP

2021.05.03 - [BASIC] - 01. HTTP 웹 기본 지식 - 인터넷 네트워크 2021.05.03 - [분류 전체보기] - 02. HTTP 웹 기본 지식 - URI HTTP - HyperText Transfer Protocol HTML, TEXT, IMAGE, 음성, 영상, 파일, JSON, XML 등등 거의 모든 형태의 데이터 전송이 가능하다. 서버간에 데이터를 주고 받을 때도 대부분 HTTP를 사용한다. HTTP의 발전 HTTP/0.9(GET만 지원 HTTP 헤더 X) -> HTTP/1.0 (메서드, 헤더 추가) -> HTTP/1.1 (가장 많이 사용, 가장 중요한 버전) -> TCP기반 프로토콜 -> HTTP/2 (성능개선) -> TCP기반 프로토콜 -> HTTP/3 (진행중: TCP ..

BASIC 2021.05.03 Joana

02. HTTP 웹 기본 지식 - URI

2021.05.03 - [BASIC] - 01. HTTP 웹 기본 지식 - 인터넷 네트워크 2021.05.03 - [분류 전체보기] - 02. HTTP 웹 기본 지식 - URI 2021.05.03 - [BASIC] - 03. HTTP 웹 기본 지식 - 모든것이 HTTP URI(Uniform Resource Identifier)와 웹 브라우저 요청 흐름 URI은 뭘까? 리소스를 식별하는 통합된 방법 로케이터(locator), 이름(name) 또는 둘다 추가로 분류될 수 있다. Untiform : 리소스 식별하는 통일된 방식 Resource : 자원, URI로 식별할 수 있는 모든 것(제한 없음) Identifier : 다른 항목과 구분하는데 필요한 정보 URL - Locator : 리소스가 있는 위치 지정..

BASIC 2021.05.03 Joana

01. HTTP 웹 기본 지식 - 인터넷 네트워크

www.inflearn.com/course/http-웹-네트워크# 모든 개발자를 위한 HTTP 웹 기본 지식 - 인프런 | 강의 실무에 꼭 필요한 HTTP 핵심 기능과 올바른 HTTP API 설계 방법을 학습합니다., 웹 기술을 사용하는 개발자라면 누구나 OK!꼭 필요한 HTTP의 핵심을 알려드립니다. 📣 확인해주세요!본 강의는 자바 스 www.inflearn.com 김영한님의 HTTP 웹 기본 지식 강의를 보고 필기했습니다! 강의를 보면 이해가 더 쉬우니 추천 합니다. 😋 실무에서 필요한 HTTP 기능과 올바른 HTTP API 설계 방법을 학습합니다! 공부 계기 우리가 사용하는 HTTP 기반으로 구현된 웹 프레임워크나 기술들을 사용하는데 단순히 기능 사용법 위주로 사용하지 않고 원리를 이해하기 위해서 ..

BASIC 2021.05.03 Joana