본문 바로가기
728x90

전체 글224

[Nest.js] swagger ApiResponse 에서 generic dto 사용하기 백엔드 개발자로서 API 를 만들다 보면 `GET` 요청에 따른 response 에 pagination, count 등과 같이 공통으로 들어가야 하는 필드들을, 각 dto 마다 한땀한땀 추가해주며 고통받았던 기억이 있을 것이다.  만약 이 표준 응답에 새 필드를 추가해줘야 한다면?또 모든 dto 를 수동으로 업데이트해줘야 할 것이고, 어느덧 샷건 치고 있는 내 자신을 발견할 수 있다.  generic 을 적용해보자!이 고통을 타개할 방법이 무엇이 있을까 생각해보다가 generic 을 적용해보기로 했다. import { ApiProperty } from '@nestjs/swagger';import { IsBoolean, IsNumber } from 'class-validator';class BaseResp.. 2024. 11. 14.
[Docker-compose] 서버의 DB 연결 지연 이슈 docker-compose 로 구성한 server 컨테이너의 서버와 db 컨테이너의 MySQL 서버 연결시 데이터베이스 연결이 지연되는 문제가 발생했다.  서버는 빠르게 실행되어 데이터베이스와 연결을 시도하지만 데이터베이스는 서버보다 늦게 실행되기 때문에, 서버 혼자 열심히 데이터베이스 연결을 시도하다가 죽어버리는 현상이었다.    `depends_on` 은 컨테이너 간의 종속성을 설정하는데 사용되는 옵션으로, 이 옵션을 통해 특정 컨테이너가 다른 컨테이너의 실행을 완료한 후 시작되도록 지정할 수 있다. version: '3.8'services: server: image: webapp depends_on: - db db: image: database 하지만 `depends_o.. 2024. 10. 30.
[TypeScript] as const TypeScript 에서 상수를 선언할 때, `as const` 라는 구문을 습관처럼 붙였던 경우가 있을 것이다. 근데 `as const` 를 왜 붙이지?TypeScript3.4 버전에서 추가된 const assertion 기능을 활용하기 위한 구문으로, 객체나 배열을 리터럴 타입(literal type) 으로 지정하기 위해 사용된다. 이 구문은 TypeScript가 해당 값을 변경할 수 없는 불변 타입(immutable type) 으로 취급하도록 만든다.  let foo = 'foo';// let foo: stringlet foo = 'foo' as const;// let foo: 'foo' 즉, 값을 string 이나 number 등의 일반 타입이 아닌, 정확한 리터럴 타입으로 유지한다.  const.. 2024. 10. 16.
[도서] 세이노의 가르침 '세이노의 가르침'은 많은 도서에서 추천을 해줬는데, 슬쩍 봤다가 어마무시한 페이지 수에 책을 덮은 후 엄두를 못내고 있다가 드디어 읽었다. 다방면에서의 지식과 경험의 노하우를 알려주는데, 모든 책이 그렇듯 읽기만 한다고 부자가 되는 것이 아니라 해당 지식을 최대한 내 것으로  만들어야 가치가 있는 것이므로, 나의 삶에 적용할 수 있도록 노력하자! 주의) 날것 그대로의 단어도 있으므로 예민한 분들은 잘 걸러 읽어야 할거 같다.  길거리 지식의 최강자, 세이노의 가르침 인식 상태에서 미인식 영역을 건드리는 방법첫째, 샤워장 앞에서 옷을 벗을 때부터 두 눈을 감고 움직이며 샤워를 마칠 때까지 계속 눈을 감고 진행한다. 그렇게 함으로써 평상시에 사용되지 않았던 신경과 감각이 주뼛주뼛 일어나 마인드브레인의 전선.. 2024. 8. 9.
[React Native] 앱 아이콘 바꾸기 앱 아이콘을 바꾸기 위해선 이미지를 사이즈 별로 추출해줘야 하는데, generator 사이트가 잘되어 있기 때문에 1024*1024 사이즈 하나만 있으면 된다.  IOS- App Icon Generator   1024*1024 사이즈의 이미지를 드래그해서 넣은 후 [Generate] 버튼을 클릭하면 아래와 같이 생성될 것이다.   IOS 앱 아이콘 수정은 XCode 에서 해줘야 하는데, 아래 명령어로 XCode 를 실행해주자xed ./ios  `[React Native 프로젝트]/Images` > [AppIcon] 을 클릭하면 사이즈 별로 이미지를 넣을 수 있게 되어 있는데,   Generate 된 폴더에서 `Assets.xcassets/AppIcon.appiconset` 내부에 있는 사이즈 별 이미지를.. 2024. 7. 30.
[React Native] react-native-vector-icons 사용하기 react-native-vector-icons란? React Native 프로젝트에서 아이콘 이미지를 따로 저장할 필요없이 편리하게 아이콘을 사용할 수 있는 라이브러리다.  1. 라이브러리 설치npm install --save react-native-vector-icons # For TypeScriptnpm install --save-dev @types/react-native-vector-icons  2. 사용하기 react-native-vector-icons 에는 AndDesign, Ionicons, FontAwesome 등 다양한 아이콘을 지원하는데, name 은 아래 사이트를 참조하면 된다. https://oblador.github.io/react-native-vector-icons/#AntDes.. 2024. 7. 27.
728x90
반응형