일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- context switching
- Zerobase
- Operating System
- 파이썬 알고리즘 인터뷰
- 운영체제
- 자바
- Computer Science
- node.js
- 컴퓨터공학
- execution context
- typeScript
- algorithm
- 글또
- 비동기
- 프로그래머스
- python algorithm
- useState
- codestates
- REACT
- java
- Python
- 개발공부
- 알고리즘
- 코드스테이츠
- OS
- 자바스크립트
- JavaScript
- react 기초
- 파이썬
- 자료구조
- Today
- Total
목록Programming Languages (49)
Back to the Basics
NodeJS 개발자로 공부를 하면서 정리했던 것을 다시 상기하기 위해 정리해보았다. 하나의 블로그 글로 정리를 할 수 있는 양일까 싶지만 최대한 간략하게 정리해보려고한다..!(글을 쓰고 보니 간략하지는 않다)목차는 아래와 같다1. NodeJS의 기본 구조와 기본 실행 흐름2. NodeJS의 libuv 조금 더 자세히 - Event loop3. 그 외 microTaskQueue, nextTickQueue 에 대하여4. 마치며1. NodeJS의 기본 구조와 기본 실행 흐름NodeJs의 구조는 크게 아래와 같이 구성되어 있다 일단 각각 어떤 기능을 하는지 간단하게 확인해보자V8 엔진 : 자바스크립트 코드를 해석하고 실행하는 구글에서 개발한 엔진이다. JIT(Just-In-Time) 컴파일러를 활용하여 자바스..
[NestJS] IoC(Inversion of Control) 제어의 역전과 DI(Dependcency) Injection)에 대해 알아보자 [NestJS] IoC(Inversion of Control) 제어의 역전과 DI(Dependcency) Injection)에 대해 알아보자 Nest.js의 레이어는 기본적으로 [ Controller - Service - Repository ] 레이어로 구성이 된다. Controller Class에서는 Service를 호출하고 Service Class에서는 Repository를 호출한다. 이렇듯 각 Class는 다른 Class에 대한 sora9z.tistory.com 이전 포스팅에서 IoC가 무엇인지 DI가 무엇인지에 대해 알아보았다. 이번 포스팅에서는 Nest.j..
ts 공부를 하던 중 문득 궁금한 것이 생겼다. type 과 Interface는 둘 다 type을 정의할 때 사용될 수 있고 사용한다. 그럼 언제 type을 사용하고 언제 interface를 사용할까? 이를 확인해보기 위해 type과 interface 의 공통적인 부분화 다른 부분을 알아보고 언제 무엇을 사용하는 것이 좋은지 알아보자 type과 interface 공통적인 부분 1. type과 interface 둘 다 객체를 만들 수 있다. type TAnimal = { name: string; age: number; speak?: () => void; }; const dog: IAnimal = { name: '구쟁', age: 1, speak: () => console.log('멍멍'), }; const..
Nest.js의 레이어는 기본적으로 [ Controller - Service - Repository ] 레이어로 구성이 된다. Controller Class에서는 Service를 호출하고 Service Class에서는 Repository를 호출한다. 이렇듯 각 Class는 다른 Class에 대한 의존성이 존재한다. Nest.js는 이런 의존성을 관리하기 위해 "제어의 역전" 이라는 개념과 "의존성 주입"이라는 개념을 사용한다.(사실 이 두 개념은 객체지향과 관련된 주제이기도 하다) Nest.js의 동작은 모두 "의존성 주입"이라는 개념으로부터 시작한다고 한다. 프로그램을 짜다보면 나와있는 매뉴얼대로 빠르게 적용을 하는 것도 중요하지만 기본적인 원리를 알아두면 응용하기에 도움이 많이 되고 어떤 애러가 발생..
NODEJS비동기의_이해와_비동기 처리에 대하여 참고 사이트 참고 사이트2 이번 주에 면접을 봤는데, 나왔던 질문 중 비동가와 관련된 질문이 있었다. 서버에서 Promise가 무엇인지 알고 있는지 Async Await은 어떻게 다른지 Server에서 비동기가 언제 쓰이는지 알고 있는지 첫 번째 질문에서는 CallBack지옥을 피하기 위해 나왔고 비동기 처리를 해주는 것이라고 말하였고 두 번째 질문은 Promise 지옥을 피하기 위해 생겨났으며 async로 비동기 처리가 있음을 알리는 키워드로 사용되고 await은 지금 이 함수가 비동기 함수라는 것을 명기해주는 키워드라고 이야기하였다. 세 번째 질문의 답으로는 상대적으로 오래 걸릴 수 있는 DB 쿼리를 할 때 주로 쓴다라고 이야기를 하였다. 틀린 대답은 ..
JAVASCRIPT-실행컨텍스트 모던 자바스크립트 Deep Dive를 읽고 정리한 포스팅 23장-실행컨텍스트-Execution-Context 언어를 공부한다는 것은 단지 언어의 문법만 공부하는 것이 아니라 자바스크립트가 실행되는 환경에 대한 이해, 이 환경에서 자바스크립트가 어떻게 코드를 관리하는지, 그리고 툭 하면 언급되었던 호이스팅에 한 이해.. 그리고 싱글스레드 기반인 자바스크립트의 Event loope등 그 언어의 동작 원리를 알아야 삽질을 덜 하고 더 효율적인 코드를 작성할 수 있다. 그리고 실행 컨텍스트는 자바스크립트의 동작 원리를 담고있는 아주 핵심적인 개념이다. 이 책에는 실행컨텍스트에 대해 정말 자세히 설명이 되어있어서 그동안 두리뭉실하게 알고 있었던 부분을 해결할 수 있었다. ECMAS..
About_export_exports_module.exports 이전 포스팅에서 require()에 대해 알아보았다. 이번엔 require와 함께 붙어 다니는 exports에 대해 알아보자 1. export는 왜 하는 것일까? exports를 하는 경우는 1. Node의 내부 모듈을 사용할 때 2. 작성한 js파일을 다른 js파일에서 불러와야 할 때 사용한다. 두 경우의 공통점은 “모듈"이라는 사실이다. 모듈이란, 우리가 만드는 applicaion을 구성하는 개별적인 요소로, 재사용이 가능하도록 만들어졌다. NodeJS에서 모듈을 따로 export 해주지 않는다면 모듈 내부의 함수,변수 등의 자원은 사용하지 못한다. 이는 모듈 자체로 스코프를 갖고 있기 때문이다. 이를 “모듈 스코프"라고 한다. 따라서,..
About require() node.js에서는 module을 불러올 때 require를 사용한다. 그리고 로컬에 작성한 파일을 다른 파일에서 사용하기 위헤 꼭 export를 해야한다. 지금까지 사용을 하면서 단순히 exports를 하면 require를 할 수 있다고만 알고 있었다. 글이 길어질듯 하니 먼저 require를 하면 내부적으로 어떤 작업이 이루어지는이 알아보자. 1. require()는 module.exports를 return 한다. 노드 사이트 참고 위의 문서에 따르면, require는 기본적으로 Javascript file을 읽고, 그 파일을 실행시킨 후 exports 객체를 return 한다. 공식 사이트에 있는 예제를 예로 들면 // example module var invisible..