참고 강의 : https://youtu.be/YahjHM9UNCA 면접 답변용 리다이렉트, 캐싱, DNS, IP 라우팅, TCP 연결 구축을 거쳐 요청 응답이 발생하는 TTFB(Time to First Byte)가 시작되고, 이후 컨텐츠를 다운 받은 뒤 브라우저 렌더링 과정을 거쳐 네이버 화면이 나옵니다. 과정 리다이렉트 서버에 리다이렉트가 ...
인프런 - 클린코드 찍먹 강의 (무료) 서론 하반기 채용을 준비하면서 이력서, 포트폴리오, 깃허브 관리 등 해야할 일이 많아졌다. 그런데 기존에 했던 프로젝트를 보니 너무 시간에 쫓긴 나머지 보기만해도 어지러운 코드를 작성해서 리팩토링의 필요성을 느꼈다. 우선 리팩토링을 어떻게 해야하는지, 클린코드란 무엇인지 감이라도 잡기 위해서 찾아보던 중...
트라이 (Trie) 이론 트라이(Trie)란 집합(set)에서 특정 키를 찾는 데 사용되는 m-ary 트리 자료구조 중 하나이다. ※ m-ary란 최대로 가질 수 있는 자식의 수를 말한다. m=2이면 이진트리이다. 주로 문자열을 빠르게 조회하기 위해 사용한다. 꼭 문자열에만 사용되는 것은 아니고, 비트와 같이 순서가 있는 열거 가능한 자료...
서론 MVC, MVP, MVVM은 모두 아키텍처 패턴의 종류이다. 모두 공통적으로 데이터를 정해진 구조로 나타내는 M(모델)과 사용자가 보는 화면과 사용자 인터페이스를 담당하는 V(뷰)를 포함하고 있다. 이러한 아키텍처 패턴이 필요한 이유는 어플리케이션이 복잡해질수록 뷰 마다 필요한 모델과 처리가 달라지고, 모델 역시 늘어나는 뷰에 따라 처리해야...
문제 : https://www.acmicpc.net/problem/2110 문제 요약 1차원 공간에 N개의 집이 위치해 있을 때 C개의 공유기를 설치해서 공유기 사이의 거리가 최대가 되도록 하는 문제이다. 위와 같이 1, 2, 4, 8, 9 좌표에 3개의 공유기를 설치해야 한다면 1, 4, 8 또는 1, 4, 9에 설치하는 것이 공유기 사이...
퀵 정렬 정의 퀵 정렬은 이름 그대로 빠른 정렬을 뜻한다. 평균 시간 복잡도가 O(NlogN)으로 다른 정렬(버블 정렬, 순차 정렬 등)보다 훨씬 빠르다. 하지만 최악 시간 복잡도는 O(N^2)이며, 불안정 정렬이라는 단점이 있다. ※ 불안정 정렬이란 : [4, 2, 2, 1] 을 정렬할 때, 정렬 후 2의 순서를 보장할 수 없는 정렬을 의...
참고 강의 : https://youtu.be/j2Q2Ev6CZzQ COSR (Cross Origin Resource Sharing) CORS 에러는 웹 개발을 하다보면 꼭 한번 씩 마주치게 되는 문제이다. CORS 에러를 이해하기 위해서는 가장 먼저 SOP에 대해 알아야 한다. SOP : same origin policy origin ...
2023년 2월부터, 모집 시작부터 생각하면 2023년 11월부터 함께한 에이블스쿨 3기 AI 트랙 교육과정이 드디어 막을 내렸다. 지난해 8월 호기롭게 회사를 때려치우고 개발을 배우기로 결심한지 어느덧 1년이 되어가고 있고, 이제는 완전히 백수가 되어 국비 출신 비전공자로 취업전선에 뛰어들어야 하는 현재, 지난 6개월 간의 에이블스쿨 과정동안 무...
교재 : https://www.yes24.com/Product/Goods/108887922 개념 정리 1.1 디자인 패턴 디자인 패턴이란 : 프로그램을 설계할 때 발생하는 문제점들을 객체 간의 상호 관계 등을 이용해 해결할 수 있도록 하나의 “규약” 형태로 만들어 놓은 것 1.1.1 싱글톤 패턴(singleton pattern) 하나의...
문제 : https://www.acmicpc.net/problem/9663 N * N 크기의 체스판이 주어지면 N개의 퀸이 서로 공격할 수 없도록 배치하는 문제이다. 문제 요약 위 그림과 같이 5 * 5 행렬이라면 퀸이 서로 공격할 수 없게 5개의 퀸을 배치할 수 있다. 풀이 브루트 포스 기본적으로 이 문제는 퀸을 놓을 수 있는 모든 ...