10. http, https 차이점에 대해 설명해주세요
HTTP (Hypertext Transfer Protocol):
1. HTTP는 웹 상에서 데이터를 주고받기 위한 프로토콜입니다. 주로 웹 브라우저와 웹 서버 간에 데이터를 전송하는 데 사용.
2. HTTP는 기본적으로 텍스트 기반의 프로토콜이며, 보안 기능을 제공하지 않음.
3. 데이터 전송 시 평문 텍스트로 전송되기 때문에, 도청이나 데이터 변조와 같은 보안 문제가 발생할 수 있음
HTTPS (Hypertext Transfer Protocol Secure):
1. HTTPS는 HTTP의 보안 버전으로, SSL(Secure Sockets Layer) 또는 TLS(Transport Layer Security) 프로토콜을 사용하여 데이터를 암호화하는 보안 기능을 제공.
2. HTTPS는 웹 브라우저와 웹 서버 간의 통신을 암호화하여 도청, 데이터 변조, 중간자 공격과 같은 보안 문제를 방지.
주요 차이점:
보안 (암호화):
HTTP: 평문으로 데이터를 전송하므로 보안 기능이 없습니다.
HTTPS: SSL 또는 TLS 프로토콜을 사용하여 데이터를 암호화하여 안전하게 전송합니다.
포트:
HTTP: 기본 포트는 80입니다.
HTTPS: 기본 포트는 443입니다.
URL 표시:
HTTP: http://
HTTPS: https://
인증서 (SSL/TLS 인증서):
HTTP: SSL 인증서를 사용하지 않음.
HTTPS: SSL 인증서를 사용하여 웹 서버의 신뢰성을 증명하고, 사용자는 안전한 사이트에 접속했다는 것을 확인 가능.
속도:
HTTP: 암호화되지 않은 데이터를 전송하므로 속도가 빠름
HTTPS: 데이터를 암호화하고 전송하므로 약간의 성능 저하가 있을 수 있음.
사용 용도:
HTTP: 주로 정보를 조회하는 경우, 보안이 크게 중요하지 않을 때 사용.
HTTPS: 사용자의 개인정보나 결제 정보와 같이 민감한 정보를 주고받아야 할 때 사용.
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
11.DI, IoC에 대해 설명해주세요.
의존성 주입 (Dependency Injection - DI):
DI는 한 객체가 다른 객체에 대한 의존성을 직접 만들지 않고, 외부에서 의존성을 주입받는 디자인 패턴.
객체가 필요로 하는 의존성(다른 객체 또는 서비스)을 직접 생성하는 대신, 외부에서 필요한 의존성을 주입받아 사용
코드의 유연성, 재사용성, 테스트 용이성을 향상
제어의 역전 (Inversion of Control - IoC):
IoC는 프로그램의 제어 흐름이 개발자가 아닌 프레임워크나 컨테이너에 의해 결정되는 디자인 패턴
기존에는 개발자가 객체의 생성과 생명주기를 관리했지만, IoC에서는 이러한 제어가 외부에서 주어짐
DI를 통해 의존성을 주입하는 방식으로 구현
'내일배움캠프 스프링3기' 카테고리의 다른 글
2024-01-16 TIL (1) | 2024.01.16 |
---|---|
2024-01-11 TIL (0) | 2024.01.11 |
2024-01-10 TIL (0) | 2024.01.10 |
2024-01-08 TIL (1) | 2024.01.08 |
2024-01-05 TIL (1) | 2024.01.05 |