공식 문서에 따르면 인터셉터는 @Injectable() 데코가 달린 클래스라고 한다.하지만 서비스 레이어의 클래스에서 해당 데코를 이미 사용하고 있는데, 같은 데코를 사용하고 있지만 서로 다른 목적으로 설계되었기에 개념을 명확히 해야한다.NestJS의 서비스클래스도 다
파이프는 일반적으로 다음 두 가지 사용 사례가 있다.변환 : 데이터를 원하는 형식으로 변환유효성 검사 : 데이터를 평가하고 유효하지 않다면 예외 발생express에선 하나하나 미들웨어로 만들어야했다면 nest.js에선 자체적으로 제공하는 빌트인 파이프를 데코로 붙여서
사실 지금도 테스트 주도 개발이란 말이 뼈에 와닿지는 않는다.그동안 했던 프로젝트들은 엉망진창이었던 기획으로 시도 때도 없이 날아오는 스펙들과 촉박한 마감에서 사실상 TDD를 적용한다는 것 자체가 굉장히 비효율적일뿐더러 산출 기한 내에 프로젝트를 완성하지도 못했을 것
얼마전 AWS를 이용한 네트워크를 구축하면서 VPC에 대한 지식이 없어 애먹은적이 있었다. 일반적으로 클라우드를 이용하지 않는 네트워크에서는 서버나 네트워크 장비를 연결하는 케이블 등을 모두 물리적으로 구축했어야 했다면 AWS와 같은 클라우드를 이용할 때는 물리적인
nestjs, postgresql, typeorm, artillery 내가 만든 서버가 어느정도의 성능인지 정확하게 판단할 수 있는 성능지표같은게 있으면 좋겠다. 하지만 예외상황과 각각의 환경들과 목표, 분석 방법 등등 다양한 방법으로 인해 명확한 성능 수
마지막 프로젝트를 끝내고 공식적으로 부트캠프 일정이 끝이났다. 길다면 길고 짧다면 짧은 6개월이였는데, '와~ 끝이다!!' 하는 생각은 들지 않는다 (오히려 할게 더 많아진...) 그래도 처음 시작할 때 나와 지금의 나를 비교하면, 그래도 뭔가 열심히 하긴 했구나
쿼리 최적화의 중요성을 몸소 체험하게 되었다. 그 동안 딱히 복잡한 쿼리가 없었기에 실감하지 못했는데 이번 프로젝트에서 딱 봐도 무거워보이는 쿼리를 장난삼아 부하테스트를 해보다가... 영단어 학습 웹서비스를 개발중이던 우리는 사용자가
언젠가는 부딪혀야할 docker 와 AWS.. 죽여줘뭐든지 처음이 어렵다고 도커를 이용한 배포는 처음이라 죽을맛이였따환경개발 환경 : Apple M1 Pro (macOS Sonoma 14.1)Server : express.ts + MySql (prisma)VM : Ub
현재 프로젝트를 진행하면서 단순하고 반복되는 CRUD보단, 좀 더 생소하고 재밌는 기능들이 없을까 하다 생각해낸 몇가지 중 하나가 특정 시간에 데이터베이스를 조회하고, 조건에 맞는 유저에게 메일을 전송해보면 어떨가 생각했다.하지만 내가 알고있는 서버는, 클라이언트의 요
어느 날 모의면접에 참관할 기회가 생겨 구경하고있었는데, 당시 면접을 진행해주시던 현직자분께서 이런말을 했었다."보통 부트캠프에서는 편의성을 위해 세션을 배제한 토큰과 쿠키를 이용한 인증, 인가방식을 배우고 사용하는데, 세션으로 구현하는게 더 옳고 더 안전하다."궁금해
멱등(idempotent) 이라는 단어는 수학에서 유래되었다고 한다. 어떤 연산을 여러 번 적용하더라도 결과가 변하지 않는 성질을 가리킨다. 이 성질은 분산 시스템 또는 네트워크 통신 환경에서도 유용하게 사용할 수 있다HTTP 프로토콜의 설계 원칙 중 하나가 바로 멱등
그동안 api를 개발하고 테스트는 포스트맨 하나에 의존하고있었고 딱히 문제도 없었었다.불편했던 점이라면 하나의 api에 수정사항이 생겼을 때, 연동되는 api들을 전부 일일이 테스트했어야했다.좋은 방법이 없나 생각해보다 예전에 첫 프로젝트를 할때 받았던 스켈레톤 코드
프로젝트를 리펙토링 하던중 충격적인 사실을 알아버렸다.. 그동안 삭제 서비스로직 코드를 작성할 때 코드가 상당히 괴랄해졌었는데 Prisma 에서 제공하는 Cascade 전략을 이제야 알았다..눈물나.. 눈물나는 나의 코드를 보자.. 그룹을 삭제하고싶어 그럼 그룹과
개발공부를 시작하면서 낡고병든머리로는힘들어서 PyCham을 사용하고있었다사실 뭐 이것말고도 다른 ide에서도 동일한 에러가 있을거같긴 하지만..그 동안 코드가 정상적으로 작동하지 않던것도 아니고 약한 경고로 '고치면 좋겠다~' 정도의 느낌이라 방치하고 있었다. 그러다
틈틈히 시간날때마다 타입스크립트로 보일러플레이트를 만들어보고 있었다. 처음에 타입을 넣어주는게 낮설고 번거로웠지만 금방 적응되었는데 예상치 못한데서 애를 먹었다. 초기 세팅에서 개발환경을 설정하고 서버가 정상적으로 켜지는걸 확인만 했었는데 어느정도 코드를 작성하고 통