일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 백준
- 알고리즘
- sstream
- Heap
- 구현
- 총정리
- class_template
- 문법
- qsort
- template
- sort
- Algorithm
- singly Linked List
- function_template
- 13305
- red-black tree
- deletion
- connected_component
- Critical_Path_Analysis
- c++
- STL
- Articulation_Point
- data_structure
- 5397
- list
- '0'
- Pair
- 예제
- 자료구조
- Biconnected_Component
- Today
- Total
- Today
- Total
- 방명록
목록Node.js (2)
어제의 나보다 성장한 오늘의 나
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/23naY/btsEBmQpMFK/JdCLsRbvP1gKuA1jKA5bs0/img.jpg)
JS로 벡엔드를 개발할 때 DI를 어떻게 설계 해야할 지 고민이 될 것이다. 이 때 tsyringe는 좋은 선택이다. JS 의존성 주입 라이브러리로 tsyringe는 코드 관리에 아주 좋다. 왜냐하면 다른 라이브러리에 비해 코드의 양이 매우 짧다. 그 이유는 이 라이브러리는 의존성을 데코레이터 기반으로 Container에 등록 해주는 방식인데 클래스에 데코레이터가 붙어있으면 자동 으로 container에 등록해주기 때문에 코드의 양이 줄어든다. ( 마치 스프링 같다. ) 그럼 사용하는 방법에 대해 코드로 알아보자 1) 설치 방법 // npm npm install --save tsyringe // pnpm pnpm add tsyringe // yarn yarn add tsyringe 2) tsconfig...
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/Nqs1m/btsEA3KjdAm/Cpvsl5nc3kBiR7T0RUG6LK/img.jpg)
개발팀 내에서 빠른 생산성을 위해 fastify를 사용하기로 하였고 개발 도중 의존성 주입에 필요성을 느끼게 되어 awilix를 도입하고자 하였다. 이에 따라 오늘은 fastify에서 awilix를 어떻게 사용하는 지에 대해서 알아보자. 자바스크립트로 의존성 주입을 설계 하다보면 해당 클래스나 함수에 필요한 의존성들을 미리 등록해 두어야 한다. 이를 Awilix에서는 container로 관리한다. 필요한 의존성들은 미리 container에 등록(register) 해두고 필요한 곳에서 꺼내서(resolve) 사용한다. 1) 설치 npm i @fastify/awilix awilix 2) 플러그인 연결 fastify와 awilix를 연결해 주는 작업을 진행한다. const { fastifyAwilixPlugi..