post-thumbnail

React CRA 앱을 subpath를 포함해서 배포하기

때로는 원하는 앱을 subpath 하위 경로에 배포를 해야 할 때가 있다.예를 들어서 다음과 같은 URL과 애플리케이션 간 매핑이 있을 수 있다.https://mysite.com/react -> React 앱https://mysite.com/vue -

2023년 9월 15일
·
0개의 댓글
·
post-thumbnail

Primary Key & AUTO_INCREMENT를 사용하는 이유

최근에 이교준 강의자님의 Database 강의를 들으면서 RDB에 대한 공부를 하고 있다.지금까지 SQL이나 RDB를 사용한 적이 없는 것은 아니었지만, 그 때 그 때 구글링으로 조금씩 익힌 정도이지 딥하게 공부해 본 적은 없었다.이번에 강의를 들으면서 가장 유익했던

2023년 6월 21일
·
0개의 댓글
·
post-thumbnail

테스트 커버리지를 높이면서 코드 개선하기 (with Typescript)

0. 테스트 커버리지를 높이게 된 이유 기존에 내가 해왔던 사이드 프로젝트에서는 Service 로직과 일부 커스텀 클래스에 대한 테스트 코드 정도만 작성해 둔 상태였다. '어차피 Controller는 Service의 메서드를 호출하는 정도의 역할만 하는데 굳이 테스트가

2023년 5월 13일
·
0개의 댓글
·
post-thumbnail

모듈 기반 Node.js 프로젝트에서 단위 테스트 하기

저번에 input-output 기반의 테스트가 이상적이라는 글을 썼다. 이 글에서는 javascript로 작성된 Node.js 프로젝트에서 input-output 기반의 테스트 코드를 작성하는 방법을 다루려고 한다. typescript로 프로젝트가 구성되어 있다면 더

2023년 4월 26일
·
0개의 댓글
·
post-thumbnail

테스트 코드의 이상적 형태 (with Jest)

회사에서 여러 태스크들을 하면서 테스트 코드의 필요성을 많이 느꼈다.특히 레거시 코드 수정으로 인해 서비스 장애가 나는 것을 경험하면서 현실 직시가 크게 되었다.테스트 코드가 있었다면 분명 잡을 수 있던 오류들이 많았다...😭회사에서도 테스트 작성을 프로세스화 하고

2023년 4월 23일
·
0개의 댓글
·
post-thumbnail

Node.js의 파일 구조를 바꾸자

논의 배경 이번에 새로운 프로젝트에 들어가면서, 백엔드 파일들을 새롭게 만드는 일이 많았다. 당연히 처음에는 기존의 컨벤션 대로 파일들을 만들었는데, 작업하는 과정에서 불편함을 많이 겪었기 때문에...😢 좀 더 나은 파일명 or 폴더 구조가 없을지 고민하게 되었

2023년 4월 11일
·
0개의 댓글
·
post-thumbnail

NestJS 프로젝트 docker 배포 + 이미지 크기 줄이기

server 부분의 프로젝트는 NestJS로 구성되어 있었다.처음에는 dependency package를 설치하고, build 하고, 실행하는 커맨드 지정하는 식으로 간단한 수준의 Dockerfile을 작성했다.이렇게 하면 간단하게 구현 가능하지만, 전혀 최적화되지 않

2023년 3월 18일
·
0개의 댓글
·
post-thumbnail

Docker Hub + Elastic Beanstalk + Github Action을 이용하여 Node 프로젝트 CI/CD 구현하기

도커로 프로젝트 실행 환경을 구성했다면, CI/CD를 보다 수월하게 구현하는 것이 가능하다.Docker Hub + Elastic Beanstalk(EB) + Github Action 세가지를 적절히 잘 사용해서 CI/CD 환경을 구성해보자.전체적인 플로우는 아래와 같다

2023년 3월 5일
·
0개의 댓글
·

Next.js 프로젝트 docker 배포 + 이미지 크기 줄이기

이번에 Docker를 이용하여 전체 프로젝트의 배포 설정을 구현하기로 결정했다.현재 프로젝트의 구성은 server / client 두 개의 레포로 나뉘어져 있어서, 각각 Dockerfile을 구성하기로 했다.Docker로 배포한다고 해서 특별한 것은 없다. depend

2023년 3월 5일
·
0개의 댓글
·

vscode 오픈소스 분석 - 2. 기본 class 정리

vscode에서는 React, Vue와 같은 UI 라이브러리들을 사용하는 대신, 독자적으로 개발한 class들을 extend하여 사용하고 있다.따라서 vscode의 코드를 분석하기 위해서는 이러한 기본 클래스들을 이해해야 한다.Disposable의 타입을 정의하고 있는

2023년 2월 15일
·
0개의 댓글
·
post-thumbnail

vscode 오픈소스 분석 - 1. 시작하기

vscode는 오픈소스로 공개되어 있는 소스코드 에디터입니다.기본적으로 데스크탑 어플리케이션이기 때문에 electron을 통해 실행할 수 있습니다.

2023년 2월 12일
·
0개의 댓글
·
post-thumbnail

쿠버네티스 설치 및 대시보드 실행 방법

맥북 기준입니다.우선 도커를 실행해서 enable kubernetes를 해줍니다도커 대시보드의 우측 상단의 설정 버튼을 눌러서, kubernetes 탭에서 설정 가능아래 명령어를 통해 kubectl을 설치해줍니다설치 후 다음의 명령어로 대시보드를 설치해줍니다위 명령어가

2023년 1월 28일
·
0개의 댓글
·

[백준] 2458번 키 순서

두 학생 쌍들의 키 비교 결과가 주어진 상태에서, 자신이 몇번째로 큰지 알 수 있는 학생의 수를 구하는 문제이다.두 학생 키의 비교 정보를 edge로 생각하고, 플루이드 와샬 알고리즘을 적용하여 문제를 풀 수 있다.각각의 edge는 키가 크다는 정보인지, 작다는 정보인

2022년 4월 30일
·
0개의 댓글
·

[백준] 4485번 녹색 옷 입은 애가 젤다지?

각 칸을 지날 때 내야 할 비용이 주어진 상황에서, 0에서 N-1로 가는 최소 비용 경로를 구하는 문제이다.각 칸에서 상하좌우 방향으로 모두 이동할 수 있으므로, 각 방향으로 모두 엣지로 연결되어있다고 생각하고 다익스트라를 수행하면 된다.처음에 시간 초과 때문에 틀린

2022년 4월 28일
·
0개의 댓글
·

[백준] 11179번 최소비용 구하기 2

출발지에서 도착지로 가는 최단 거리와 그 경로를 구하는 문제이다.heapq를 사용해서 최단 거리를 구했고, prev 리스트에는 해당 지점까지 오는데 최단 거리가 되는 직전의 도시를 저장했다.마지막에 prev를 통해 거슬러 올라가면서 최단 거리가 되는 경로를 구할 수 있

2022년 4월 27일
·
0개의 댓글
·

리눅스 기본 커맨드 정리

man -> 다른 커맨드를 조회해볼수 있는 manual을 보여줌리눅스는 root에서 모든 디렉토리가 시작됨pwd -> /Users/kimyoungho : 루트 디렉토리 밑에 있는 Users 아래의 kimyounghols -al : 디렉토리 안에 속한 파일/디렉토리의 정

2022년 4월 10일
·
0개의 댓글
·

[프로그래머스] 보석 쇼핑

모든 보석 종류를 포함하면서 가장 짧은 연속된 구간을 찾아내는 구현 문제이다.먼저 문제의 시작 부분에서 전체 보석 종류의 개수 n을 len(set(gems))로 구했다.모든 보석종류가 포함되었는지 확인할 떄에는 해당 개수가 n과 일치하는지 확인하면 된다.처음에는 각 위

2022년 4월 7일
·
0개의 댓글
·

[프로그래머스] 표 편집

입력된 명령어에 따라 커서를 움직이거나 레코드를 삭제 및 복원하도록 구현하는 문제이다.우선 가장 최근에 삭제한 원소를 복원하는 작업이 가능해야 하기 때문에, 삭제한 레코드의 인덱스를 큐로 저장하는 리스트 delete_q를 사용했다.delete_q.pop()을 통해 가장

2022년 4월 6일
·
0개의 댓글
·

[프로그래머스] 셔틀버스

문제에서 제시한 조건을 구현하는 문제이다.입력으로 주어진 timetable의 문자열은 파싱하여 시간, 분으로 만들고, 이를 time_list에 시간 순서대로 저장했다.각 셔틀버스 도착 시간을 순회하면서, 앞에 있는 버스에서 승객들을 보낸 후 마지막 버스가 도착한 시점의

2022년 4월 3일
·
0개의 댓글
·

자바 플레이그라운드

java-baseball-playgroundhttps://github.com/JadenKim-dev/java-baseball-playgroundjava-racingcar-playgroundhttps://github.com/JadenKim-dev/jav

2022년 3월 23일
·
0개의 댓글
·