
내용 구성호이스팅(Hoisting)변수 호이스팅 (Variable Hoisting)함수 호이스팅 (Function Hoisting)TDZ (Temporal Dead Zone)요약 정리마치며 참조 자료https://ui.toast.com/weekly-pick/ko_20191014[코딩만화] Scope가 뭔가요? (feat: let, const, var의 차이) (youtube.com)1. 호이스팅(Hoisting)이란?변수나 함수의 선언이 해당 스코프의 최상단으로 끌어 올려지는 행위이다. 변수와 함수가 호이스팅 되는 경우가 살짝 다른데, 자세히 알아보자. 참고로 var, let, const로 선언한 변수, function 선언과 화살표 함수 모두 호이스팅된다! 다만 let, const, 화살표 함수는 va..

내용 순서 스코프 (Scope) 글로벌 스코프 (Global Scope) - Script, Global 함수 스코프 (Function Scope) 블록 스코프 (Block Scope) 스코프 체인 (Scope Chain) 요약 정리 마치며 참고자료 JavaScript - Execute context (youtube.com) [NHN FORWARD 2021] 결국 자바스크립트를 알아보기로 했다. (youtube.com) 1. 스코프 (Scope) 범위라는 영단어인 스코프는 자바스크립트에서도 코드가 접근할 수 있는 변수들의 범위를 의미한다. 넓은 의미론 이전에 포스팅했던 실행 컨텍스트의 메모리 영역에 해당한다고 보면 된다. 여러 종류의 스코프가 존재하고, 각 스코프를 잘 이해하는 것이 중요하다. 또 다른 핵..

내용 구성실행 컨텍스트스택콜 스택 (Call Stack)마치며 참고 자료(195) [NHN FORWARD 2021] 결국 자바스크립트를 알아보기로 했다. - YouTube실행 컨텍스트이전 글에서 실행 컨텍스트를 다뤘다. 자바스크립트가 로드되면 엔진이 실행 컨텍스트를 생성하는데, 실행 컨텍스트는 코드를 실행하는 데 필요한 정보의 모임이다.자세한 내용은 아래 링크를 참고하면 되고, 이제 콜 스택에 대해 알아보자! 예제 코드로 맛 보는 실행 컨텍스트내용 구성 함수 객체 실행 컨텍스트 (Execute Context) 마치며 참고 자료 [NHN FORWARD 2021] 결국 자바스크립트를 알아보기로 했다. (youtube.com) 함수 객체 본격적으로 실행 컨텍스트에 대해 알아보기 전에thisismi.tistor..

내용 구성함수 객체실행 컨텍스트 (Execute Context)마치며 참고 자료[NHN FORWARD 2021] 결국 자바스크립트를 알아보기로 했다. (youtube.com)함수 객체본격적으로 실행 컨텍스트에 대해 알아보기 전에 자바스크립트의 함수를 먼저 살펴보자. function add3(n) { const three = 3; const result = three + n; return result;}add3(5); // 서브 루틴으로 실행 (결과: 8)add3.three; // 일반 객체로 실행 (결과: undefined) ESMAScript에서 함수 객체는 일반 객체의 확장판이다. 함수명 뒤에 소괄호()를 붙여 서브 루틴(Subroutine)으로 수행할 수 있을 뿐만 아니라, 함수명 ..

내용 구성 HTTP 개요 HTTP Message Start Line a. Request Line b. Status Line Header Message Body 마무리 참고 자료 https://datatracker.ietf.org/doc/html/rfc7230 https://developer.mozilla.org/ko/docs/Web/HTTP/Basics_of_HTTP/Evolution_of_HTTP 1. HTTP 개요 HyperText Transfer Protocol HTTP는 클라이언트와 서버가 서로 통신하는 통신 프로토콜입니다. 프로토콜은 쉽게 말하면, 메시지를 주고받는 두 곳에서 미리 어떻게 데이터를 교환하자고 정한 규칙, 약속입니다. 데이터를 주고받는 대부분의 곳에서 HTTP를 사용하고 있습니다...

내용 구성 싱글톤 패턴이란? 코드로 보는 싱글톤 패턴 멀티 스레드 환경에서의 문제점 안전하게 사용하는 싱글톤 패턴 참고 객체지향 디자인 패턴1 (알퍅한 코딩 사전, 객체지향 디자인패턴 1 - YouTube) [JAVA] 싱글톤 패턴 2부 - 멀티쓰레드 환경에서 안전하게 구현하기 (luminous13, [JAVA] 싱글톤 패턴 2부 - 멀티쓰레드 환경에서 안전하게 구현하기 (tistory.com)) 「면접을 위한 CS 전공지식 노트」 (주홍철 지음) 1. 싱글톤 패턴이란? 길동이는 로그인 기능이 있는 작은 홈페이지를 만들고 테스트를 하고 있다. 인덱스 페이지에서 다크 모드를 설정해본다. 정상적으로 검은색 배경으로 전환되었다. 그러나 로그인 페이지로 이동하니 홈페이지 배경이 밝은 하얀색이다! 다시 접속해본 ..

참고 재학 대학의 '운영체제' 강의 자료 「수제비 2023 정보처리기사 실기 Vol. 2」 (NCS 정보처리기술사 연구회 지음) 내용 구성 용어 정리 스케줄링 메트릭스 (Scheduling Metrics) 스케줄링 정책: 비선점형 스케줄링 vs 선점형 스케줄링 FCFS (First Come First Serve) SJF (Shortest Job First) HRN (Highest Response Ratio Next) SRT (Shortest Remaining Time First) RR (Round Robin) MLFQ (Multi-Level Feedback Queue) 마치며 1. 용어 정리 프로세스(Process) 메모리에 올라와서 실행 중인 프로그램으로, CPU를 할당받아 독립적으로 수행되는 스케줄링..

참고 「Rosen의 이산수학 8th Edition」 (Kenneth H. Rosen 지음) 내용 구성 소인수분해 방식의 문제점 유클리드 알고리즘이란? 파이썬 코드 관련 문제 최대공약수: gcd (greatest common divisor) 최소공배수: lcm (least common multiple) 1. 소인수분해 방식의 문제점 소인수분해 방식은 일반적으로 많이 사용되지만, 비효율적인 방법이다. 두 정수가 커질수록 소인수분해를 구하는 데 시간이 오래 걸리기 때문이다. 2. 유클리드 알고리즘이란? a = bq + r (a > b)일 때, gcd(a, b) == gcd(b, r)라는 성질을 이용한다. 소인수분해 방식보다 더욱 효율적으로 최대공약수를 찾을 수 있는 알고리즘이다. 위 그림은 유클리드 알고리즘으..

참고 자료 재학 대학의 '자료구조' 수업 자료 「Do it! 자료구조와 함께 배우는 알고리즘 입문 파이썬 편」 시바타 보요 지음 「2023 정보처리기사 필기 핵심 요약」 시나공 (44) 코딩 테스트를 위한 트리(Tree) 자료구조 10분 핵심 요약 - YouTube 내용 구성 트리란? 트리 관련 용어 이진 트리 이진 트리의 종류 편향 트리 포화 이진 트리 완전 이진 트리 1. 트리란? 트리는 사이클이 존재하지 않는 그래프의 특수한 형태이다. 데이터를 1:N의 계층적인 구조로 나타내는 자료구조로, 대표적으로 가계도가 그 예이다. 2. 트리 관련 용어 서브 트리: 하나의 트리에 속하는 또 다른 트리 위 그림에서 주황색 삼각형이 서브 트리이다. 루트 노드: 트리의 최상단 노드로, 부모 노드가 없다. A (주황..

참고 「취업을 위한 코딩 테스트이다 with 파이썬」 나동빈 지음 「Do it! 자료구조와 함께 배우는 알고리즘 입문 파이썬 편」 시바타 보요 지음 https://yabmoons.tistory.com/250 콘텐츠 개념 파이썬 구현 코드 시간 복잡도 장단점 퀵 정렬과 병합 정렬 선택 기준 대부분의 프로그래밍 언어에서 정렬 라이브러리는 속도가 빠른 퀵이나 병합 정렬을 기반으로 한다. 퀵 정렬 (Quick Sort) 개념 피벗pivot이라는 기준에 의해 리스트 내 큰 숫자와 작은 숫자를 교환한다. 피벗을 설정하는 기준은 다양하지만, 리스트의 첫 번째 원소를 피벗으로 설정하는 "호어 분할 방식"이 가장 대표적이다. 초록색이 피벗이고, 노란색 화살표는 5 다음 숫자에서부터 피벗보다 큰 값을 찾고, 파란색 화살표..