본문 바로가기

BackEnd8

배열, vector 실습 - 모험가의 데이터 매니저 오늘의 gemini 미션은 배열과 vector를 실습해보는 예제이다. 🎮 주말 집중 실습: "모험가의 데이터 매니저"이 미션은 약 5시간 분량으로 구성되어 있으며, 단순 타이핑을 넘어 메모리 구조와 데이터 관리의 원리를 이해하는 데 목적이 있습니다.[1부] 기초 설계 및 변수 정의 (1시간)목표: 캐릭터의 고정 데이터와 가변 데이터를 구분하여 선언합니다.과제: * const를 사용하여 캐릭터의 MAX_HP와 MAX_LEVEL을 상수로 선언하세요.플레이어 이름(string), 현재 체력(float), 경험치(double) 변수를 만드세요.핵심 체크: 왜 체력은 int가 아닌 float을 쓸까요? (데미지 계산 시 소수점 처리를 고민해 보세요.)[2부] 고정형 배열 vs 동적 벡터 (1.5시간)목표: 상.. 2026. 3. 21.
TypeORM Repository 조건(옵션) 안될 때 한 줄 요약: TypeORM을 사용하기 위해서는 엔티티 클래스의 필드를 private으로 두면 안된다.   오류는 아니고.. Nest로 개발하다 생각지도 못한 삽질을 해버렸다.   아래의 코드처럼 TypeORM을 사용해 역시 typeorm 에서 제공하는 Repository를 서비스에서 주입받아 사용하고 있었는데@Injectable()export class UserService { constructor( private userRepository: Repository ) {}... 기능을 구현하다보니, Repository에서 제공하는 메서드 중 옵션을 줘야하는 메서드를 사용하게 될 일이 있었다. await this.userRepository.findOneBy({ id: userId });요런 식으로.. 2024. 9. 10.
Nest-cli로 프로젝트 생성 시 git 추적 안되는 문제 한줄요약 : 프로젝트 생성 시 깃 레포지토리 초기화를 스킵하는 옵션을 주고 생성하면 된다.nest new --skip-git     github 레포지토리를 생성하고 Nest-cli를 통해 Nest 프로젝트를 생성했다.아래 명령어로 생성nest new  프로젝트가 생성되며 node-modules 를 install 하는 단계에서git으로 잘 추적되던 프로젝트 폴더가 갑자기 통째로 추적을 멈춰버리는 문제가 있었다. untracked files에 해당 폴더가 있길래강제로 git이 추적하도록 하기 위해git add --force명령어를 사용해보았지만 아무런 변화가 없고, 여전히 폴더 째로 untracked된 상태였다. 깃헙에서 레포지토리를 생성할 때 깃헙에서 제공하는 템플릿으로 생성된 .gitignore가 문제.. 2024. 8. 21.
Node.js 의 이벤트 루프 Node.js 를 공부하다 이벤트 루프라는 개념이 어려워 정리해두었다. 이벤트 루프란? Node.js 는 하나의 스레드(싱글 스레드)에서 작업을 처리. 이벤트 루프란 시스템 커널에서 가능한 작업이 있다면 그 작업을 커널에 이관하여 JavaScript 가 싱글 스레드임에도 논블로킹(비동기) I/O 작업을 수행할 수 있게 해주는 기능. 이벤트 루프의 단계 아래 그림의 화살표 방향으로 루프가 실행. (timers → pending callbacks …. → close callbacks → timers …) 각 단계에는 각각 실행할 콜백 함수를 담기 위한 큐가 존재 이벤트 루프가 특정 단계에 진입하면 해당 단계에서 필요한 작업을 수행 후, 해당 단계의 큐에서 콜백을 실행. 실행하여 큐가 모두 비거나 콜백 제한 .. 2024. 3. 5.