본문 바로가기

Computer Science

(32)
[WEB] HTTP vs HTTPS HTTP란? 정의 : HTTP(Hypertext Transfer Protocol)는 클라이언트와 서버 간 통신을 위한 통신 규칙 세트 또는 프로토콜입니다. 원리 : HTTP는 OSI(Open Systems Interconnection) 네트워크 통신 모델의 애플리케이션 계층 프로토콜입니다. HTTP는 여러 유형의 요청과 응답을 정의합니다. 문제점 : HTTP는 암호화되지 않은 데이터를 전송합니다. 즉, 브라우저에서 전송된 정보를 제3자가 가로채고 읽을 수 있습니다. HTTPS란? 정의 : HTTPS는 위에서 설명한 보안상 문제점을 극복하기 위한 HTTP입니다. HTTPS 웹 사이트는 독립된 인증 기관(CA)에서 SSL/TLS 인증서(공개 키 구성요소)를 획득하여 이를 바탕으로 공개키와 세션키를 이용하여 ..
[WEB] 반응형 웹(Responsive Web)과 적응형 웹(Adaptive Web) 서두 디자이너 분과 이야기하다가 반응형 웹과 적응형 웹에 대한 이야기가 나왔다. 적응형 웹이란 단어를 처음 들어봐서, 이에 대해 정리하고자 합니다. 반응형 웹(Responsive Web) 의 정의 흔히 반응형 디자인의 창시자로 에단 마코트(Ethan Marcotte)를 거론합니다. 이전에도 개념은 존재했지만, 2010년에 아단 마코트가 반응형이란 용어를 처음 정의하였습니다. 반응형웹은 한 줄로 정의하면, 웹의 해상도, 레이아웃 등이 디바이스에 따라 반응하여 유동적으로 변환되는 웹페이지입니다. 특히, Google은 2015년 4월 21일에 모바일 친화적인 사이트를 더 높게 평가한 대규모 업데이트를 출시한 이후 항상 반응형 웹 디자인(RWD)을 권장해왔습니다. 일반적으로 미디어쿼리와 유동형 그리드와 유연한 ..
에라토스테네스의 체 정의 그리스의 수학자이자 지리학자인 에라토스테네스가 고안한 소수(素數)를 찾는 방법으로, 이 방법으로 소수를 찾으려면, 2부터 시작해 자연수를 차례로 쓴 다음, 2 이외의 2의 배수, 3 이외의 3의 배수, 5 이외의 5의 배수의 순서로 수를 지워나가 끝에 남는 수가 소수이다. 아이디어 1. 0-n까지 들어있는 배열을 만든다. 여기서 소수가 아닌 숫자는 모두 0이 될 것이다. 2. 1을 0으로 만든다. (1은 소수가 아니므로 처리한다.) 3. 반복문을 돌리면서 만약 해당 숫자가 살아 있다면, 그 숫자는 소수이다. 그리고 그 숫자의 n배는 소수가 아니므로 0으로 바꾼다. 4. 마지막에 filter를 이용하여 0을 제거하면 소수만 모여있는 배열이 남는다. 구현 function solution(n){ // 1..
[CSS] ::before ::after :: beforeIn CSS, ::before creates a pseudo-element that is the first child of the selected element. It is often used to add cosmetic content to an element with the content property. It is inline by default. element에 첫 번째 자식 요소(element) 인 pseudo-element를 만듭니다. 인라인이 디폴트로, 요소에 외관 요소를 추가하고자 할 때, 주로 사용됩니다. ※ pseudo-element : Html 요소의 특정 부분만을 선택하기 위한 요소입니다.   이 사진처럼, a tag 앞에 클립모양이나 커마 등의 문장 부호를 추가할 때..
알고리즘 공부목록 자료구조 해쉬 스택 큐/ 우선순위 큐 트리 힙 연결리스트 알고리즘 Greedy 알고리즘 DP 알고리즘 정렬( 퀵, 카운팅, 삽입 등) 알고리즘 부분합 알고리즘 이진탐색 알고리즘 (+BST) 최단경로 (다익스트라) 알고리즘 그래프 탐색 알고리즘 투포인터 / 슬라이딩 윈도우 기법 완전 탐색 & 백트래킹 기법 Brute Force 순열/ 조합 DFS/ BFS 재귀 심화 위상 정렬 분할-정복 알고리즘 최단경로 (플로이드-워셜, 최소-비용 신장 트리) 알고리즘 Red-Black Tree 알고리
[WEB] 돔(DOM)과 렌더링(Rendering) 글의 목적DOM이 무엇인지에 대해서 알고, 렌더링에 대해서 상세히 알아본다.렌더링 과정이 얼마나 부하가 걸리는 일인지를 이해한다. => 이를 통해서 VDOM이 왜 필요한 지 이해할 수 있을 것으로 생각된다. DOM정의 : 문서 객체 모델(The Document Object Model, 이하 DOM) 은 HTML, XML 문서의 프로그래밍 interface 이다.용도 : DOM은 문서의 구조화된 표현(structured representation)을 제공하며 프로그래밍 언어가 DOM 구조에 접근할 수 있는 방법을 제공하여 그들이 문서 구조, 스타일, 내용 등을 변경할 수 있게 돕는다.구조 : nodes와 objects로 구성된다.발전사항 : 초창기 DOM은 JS와 밀접하게 연관되어 있었지만 지금은 분리해서..
다형성(overload) 공부한 이유 `Error : No overload matches this call error`이란 에러가 발생하였는데, overload가 뭔지 몰라서 공부를 시작하였다. 다형성 프로그램 언어의 다형성은 그 프로그래밍 언어의 자료형 체계의 성질을 나타내는 것으로, 프로그램 언어의 각 요소들(상수, 변수, 식, 오브젝트, 함수, 메소드 등)이 다양한 자료형(type)에 속하는 것이 허가되는 성질을 가리킨다. 반댓말은 단형성으로, 프로그램 언어의 각 요소가 한가지 형태만 가지는 성질을 가리킨다. ⇒ 쉽게 말하면, 하나의 클래스나 함수가 매우 많은 형태와 동작을 가질 수 있는 것을 의미합니다. overload 와 override은 각각 이 다형성을 구현하는 대표적인 방법이다. overload 두 메서드가 같은 ..
위상정렬 알고리즘 (boj_2252) 용도 순서가 정해져 있는 일련의 작업을 차례대로 수행할 때 사용하는 알고리즘이다. 사이클이 없을 때 사용이 가능하다. (있다면 아마 변형이 필요할 것) 예시는 수강신청이 있다. 기초수학-대학수학- 공업수학, 기초수학-물리학, 물리학-양자역학 등의 커리큘럼이 있을 때, 위 선수과목을 어긋나지 않고 순서대로 듣는 알고리즘을 짜는 법이다. ⇒ 이 글에서는 수강신청을 예시로 많이 들 예정이다. 용어 설명 진입 차수 - 선수과목 수(나에게 들어오는 노드 간선의 수) 진출 차수 - 후수과목 수(내가 다른 노드로 뻗는 간선의 수) 위상 정렬 알고리즘 로직 진입차수가 0인 노드를 큐에 넣는다. 큐가 빌 때까지 다음의 과정을 반복한다. 큐에서 원소를 꺼내 해당 노드에서 나가는 간선을 그래프에서 제거 ⇒ 제거한 그래프를 ..