마크다운 (MarkDown) 마크다운은 일반 텍스트로 서식이 있는 문서를 작성하는 데 사용된다. 일반 마크업 언어에 비해 문법이 쉽고 간단하다. ❓ 마크다운을 어디서 사용하나요? 마크다운 문법을 지원하는 모든 곳에서 사용 가능하다. 블로그나 워드프레스, 인스턴트 메시지나 온라인 포럼 등에서 널리 사용된다. 우리가 알만한 곳으로는 Trello나 Slack, 그리고 마크다운이 가장 주목받은 이유인 GitHub가 있다. GitHub에서 Repository의 정보를 기록하는 README.md가 마크다운 형식이다. README에 설치 방법이나 소스코드 설명 등을 마크다운 형식으로 기록한다. 🎬 마크다운 역사 Swartz와 John Gruber는 2004년에 마크다운 언어를 만들었다. 읽기 쉽고 쓰기 쉬운 일반 텍..
프록시 프록시(Proxy)는 다른 사람을 대신하여 무엇인가를 하는 것으로, WEB에서는 클라이언트를 대신한다는 의미다. ❓ 클라이언트를 대신한다고? 예를 들면 서버와 클라이언트가 통신을 할 때, 그 사이에 프록시가 개입한다. 서버는 프록시를 '클라이언트'로 인식한다. 위 사진을 이해하기 더 수월하다. 프로시는 중개 서버다. 🧐 프록시 서버를 사용해야 하는 이유 개인정보 보호 속도 향상 차단된 정보에 접근 가능 1️⃣ 개인정보 보호 서버와 클라이언트가 정보를 주고받을 때, 나의 IP 주소 정보도 포함된다. 그렇지만 프록시 서버를 사용하면 IP 주소 정보를 변경한다. 즉, 개인정보가 보호된다. 2️⃣ 속도 향상 프록시 서버는 이전에 들어온 데이터들을 저장한다. 캐시를 사용한다는 뜻이다. 현재 요청이 들어온 ..
RESTful API RESTful API는 REST 규칙을 지키며 설계된 API를 말한다. REST REST는 Representational State Transfer의 약자로 HTTP 통신에서 어떤 자원에 대한 CRUD 요청을 *Resource와 *Method로 표현하여 특정한 형태로 전달하는 방식을 말한다. ⭕ Resource REST에서 Resource는 URI를 말한다. ⭕ Method REST에서 Method는 서버에 요청을 보내기 위한 방식을 말한다. 위 사진을 보면 클라이언트가 서버에게 REST 메서드 중 하나를 사용하여 요청을 보내고 있다. 이렇게 서버에게 요청을 보낼 때 어떻게 요청을 보내야 RESTful 한 건지 알아보자. 🤝 REST 조건 (6가지) 1️⃣ 클라이언트-서버 구조(Cl..
CORS CORS는 Cross Origin Resource Sharing의 약자로 교차 출처 리소스 공유를 말한다. 브라우저는 동일 출처 정책(SOP)을 따라 자기 자신이 아닌 출처들은 전부 차단한다. 어떠한 데이터가 들어올지 모르기 때문이다. 그렇지만 우리는 여러 가지 정보를 필요로 한다. 외부의 다른 데이터들도 불러오고 싶다. ❓ 브라우저의 차단을 피하고 안전한 데이터를 불러올 수는 없을까? CORS가 서로 다른 리소스를 안전하게 받거나 내보낼 수 있게 해 준다. ✅ CORS 동작 과정 브라우저가 Origin 헤더를 요청에 추가합니다. 그리고 서버가 Origin 헤더의 값과 CORS 구성에 있는 메서드 및 출처 정보와 비교한다. 일치하는 항목이 있으면 Access-Control-Allow-Origin..
Refresh Token Refresh Token을 사용하면, 보안성을 보다 손쉽게 강화할 수 있다. 💦Refresh Token을 왜 사용할까? Access Token은 유효기간을 가진다. 유효기간이 지나면 만료되어 해당 토큰은 더 이상 사용하지 못하게 된다. 그러면 사용자는 유효기간이 만료될 때마다 새로운 Access Token을 발급받아 서버에 요청해야 한다. 유효기간이 만료될 때마다 새로운 Access Token을 발급받는 건 사용자에게 매우 불편하고 귀찮은 작업이다. 그렇다고 유효기간을 늘리면 늘릴수록 보안성이 약화되고 줄이자니 발급을 그만큼 더 많이 받아야 하는 딜레마가 생긴다. Refresh Token은 이러한 딜레마를 해결하기 위해 만들어진 토큰이다. Access Token을 사용자에게 발급..
WAS WAS는 동적 콘텐츠나 DB 조회가 필요한 데이터를 웹 서버가 받을 시 해결해준다. 클라이언트로부터 정적 콘텐츠의 Request가 들어오면 웹 서버가 처리해준다. 클라이언트로부터 받은 Request가 정적 콘텐츠가 아닌 동적 콘텐츠라면 WAS에게 보낸다. 정적 콘텐츠 : HTML, CSS, IMG 등 동적 콘텐츠 : JSP, ASP, PHP 등 위 사진에서 볼 수 있듯이 WAS는 Web Server와 Web Container가 결합한 형태이다. Web Container는 JSP와 Servlet을 실행시킬 수 있는 소프트웨어를 말한다. 또한 데이터베이스와 연결하여 데이터를 주고받아 Web Server로 전달하는 역할도 수행한다. Web Container는 중간 관리자 느낌의 소프트웨어이고 우리는 이..
SPA SPA는 Single Page Application의 약자로 하나의 페이지 안에서 필요한 부분만 변경한다. ❓ 필요한 부분만 가져오는 거 당연한 거 아니야? 지금은 대부분의 사이트가 SPA로 되어있지만 예전엔 아니었다. 내가 필요한 부분을 가져오기 위해선 새로고침이 발생했다. 새로고침 발생은 페이지 교체가 일어난다는 뜻이다. 페이지의 사소한 부분이라도 변경을 위해서는 새로고침을 해야 했다. 위 자료를 참고해보면 이해하기 더 수월하다. 왼쪽은 페이지 새로고침, 오른쪽은 부분적 새로고침(SPA) 둘은 공통적으로 최초 접속 시, Initial GET Request 후 HTML 파일을 받아온다. 그렇지만 그다음부터 다르단 걸 확인할 수 있다. 예전에 페이지를 보여주던 방식은 HTML을 서버에서 받아와서 ..
AWS AWS는 Amazon Web Services의 약자로, 다양한 클라우드 컴퓨팅 서비스를 제공하는 플랫폼을 의미한다. ❓ 클라우드 컴퓨팅이란? 클라우드 컴퓨팅은 인터넷을 기반으로 하는 컴퓨팅의 일종으로, 정보를 자신의 컴퓨터가 아닌 인터넷에 연결된 다른 컴퓨터로 처리하는 기술을 의미한다. 이 기술을 이용하여, 서버, 스토리지 등 컴퓨팅 자원에 대해 어디서나 접근이 가능하며 공유가 가능하다. AWS EC2 AWS EC2는 Amazon Elastic Computer Cloud의 줄임말로써 아마존에서 제공하는 서비스 중에서 컴퓨팅 파워의 규모를 자유자재로 변경할 수 있는 원격 웹 서비스다. 또한 사용한 시간만큼만 요금을 지불하도록 서비스가 구성되어 있어 개발자가 보다 쉽게 웹 규모의 클라우드 컴퓨팅 작업..
MVC Model View Controller의 약자로 애플리케이션의 구성요소를 세 가지의 역할로 구분한 패턴이다. Model View Controller Controller는 Model을 통해 데이터를 업데이트한다. View는 데이터를 가져온 후 사용자에게 전달해준다. 🌛 Model : 데이터를 신뢰할 수 있는 형태로 구성하고 컨트롤러의 지시에 따라 준비한다. 🌞 View : 사용자가 알기 쉬운 형식으로 데이터를 표시한다. 🌕 Controller : 사용자 명령을 받고 필요에 따라 모델을 업데이트한다. ❓ MVC를 사용하는 이유 사용자 인터페이스 로직이 비즈니스 로직보다 더 자주 변경되는 경향이 있는 세상에서 웹 개발자는 사용자 인터페이스 기능을 분리하는 방법이 필요했다. 그리고 MVC 패턴은 해결책이..
JWT 토큰 JWT는 Json Web Token의 약자로 인증에 필요한 정보들을 암호화시킨 토큰을 말한다. HTTP 헤더에 실어 서버로 보냄 별도의 세션 저장소가 필요 없음 메모리 관리 용이 ❓ JSON "key-value"로 이루어진 Data Object를 전달하기 위해, 사람이 읽을 수 있는 텍스트 기반의 데이터 교환 표준을 말한다. 💦JWT 토큰을 왜 사용할까? 세션과 쿠키 인증방식은 세션 저장소를 사용하지만 JWT는 세션 저장소를 사용하지 않아도 된다. 이로 인해 서버와의 연결을 최소화할 수 있다. ⭕ 이미 다룬 내용이지만 잠깐 짚고 넘어가자! 자세한 내용을 원한다면? 세션과 쿠키 위 사진의 왼쪽, Encoded값을 보면 3개의 색이 있다. 3개의 색은 점(.)을 기준으로 나뉜다. 각각 빨간색은 ..
- Total
- Today
- Yesterday
- 쉽게배우는
- 쉽게 배우는 자바 프로그래밍
- Python
- 알고리즘
- BFS
- 풀이
- CPP
- 구현
- JS
- py
- 정렬
- 답
- java
- 연습문제
- 자바
- 정리
- 백준
- 문자열
- 쉽게배우는자바프로그래밍
- 자바스크립트
- 파이썬
- 프로그래머스
- C++
- OS
- 정답
- Web
- 우종정
- 해답
- 그리디
- 운영체제
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |