나의 개발일지🌿 전체보기

과제이번 주 과제는 콘서트 예약 서비스의 비즈니스 로직 개발과 단위 테스트 작성이었다.특히, 예약/결제 기능은 클린 아키텍처로, 나머지 기능은 레이어드 아키텍처로 구현하는 것이 과제의 핵심 조건이었다. 과제 해결 과정📎 과제 PR 링크 패키지 구조 구성과제를 시작하며 가장 먼저 고민한 것은 패키지 구조를 어떻게 구성할 것인지였다.초기에 고려했던 방식은 두 가지였다 1. 계층(레이어) 중심 패키지 구성controller, service, repository 등 기능의 역할을 기준으로 디렉토리를 나눈 뒤, 그 안에서 도메인 단위로 분리하는 방식이다.controller └─ user └─ concertservice └─ user └─ concertrepository └─ user └─ conce..
과제이번 주 과제는 3개의 시나리오 중 하나를 선택해 분석하고 설계하는 것이다.시나리오는 e-커머스, 맛집 검색, 콘서트 예약 이렇게 3가지였고 콘서트 예약 서비스를 선택했다. 기능 구현에 앞서, 전체 API에 대한 요구사항을 분석하고 시퀀스 다이어그램, ERD, 인프라 구성도 등 설계 문서를 작성하는 작업을 진행했다. 과제 해결 과정1. 요구사항 분석시나리오를 기반으로 사용자와 시스템 간 상호작용을 세분화하여, 다음과 같은 주요 기능을 도출했다. 핵심 기능 목록유저 토큰 발급예약 가능 날짜 / 좌석 조회좌석 예약 요청잔액 충전 / 조회결제 고려사항동일 좌석에 대한 중복 예매 방지예매 요청 시 대기열 기반 선착순 처리좌석 예약 요청 시 결제가 이루어지지 않더라도 일정 시간 동안 다른 유저가 해당 좌..
과제월요일에 과제가 공개되었고, 주요 요구사항은 다음과 같았다. ❓ point 패키지의 TODO 와 테스트코드를 작성해 주세요.- 포인트 API 구현 (충전, 사용, 조회, 내역 조회)- 잔고가 부족할 경우, 포인트 사용 실패- 동시에 여러 건의 포인트 충전, 이용 요청이 들어올 경우 순차적으로 처리 과제 요구사항 분석요구사항을 다음과 같이 세부적으로 정리할 수 있었다. 포인트 기능 구현포인트 충전, 사용, 조회, 내역 조회 기능 구현포인트 사용 시 잔고 부족 예외 처리포인트 충전 시 최대 잔고 제한 고려동시성 처리동일 유저에게 동시에 여러 요청이 들어오는 경우 데이터 정합성 보장유저별로 요청을 직렬화하여 순차적으로 처리해야 함테스트 코드 작성 (TDD 기반)각 기능별 성공/실패 케이스 테스트동시에 여러..
[백준] 17848 - 진우의 달 여행 (Small)문제 보기 ❓ 문제 설명우주비행사 진우는 지구에서 달까지 연료 소비를 최소화하며 이동하고 싶다.지구에서 시작해 아래 방향으로만 한 칸씩 이동할 수 있고,이동할 때 ↙, ↓, ↘ 방향으로만 갈 수 있다. 단, 같은 방향으로 두 번 연속 이동하는 것은 불가능하다.이 조건을 지키며 최소 연료 소비량을 구하는 문제. 💡 접근 방법이동은 항상 아래 방향이므로, (0, y) → (N-1, y')로 가는 모든 경로를 고려해야 한다.방향은 총 3가지 (↙, ↓, ↘)같은 방향 연속 사용 금지 조건이 있으므로, 직전 방향을 기억해야 한다.따라서 DFS로 모든 경우의 수를 탐색하며, 이전 방향과 현재 방향을 비교해 연속 이동을 막고, 누적 연료량의 최솟값을 갱신해 ..
개요새로운 JAVA 프로젝트를 생성해서 깃허브에 올리려고 하는데 인텔리제이 New Project로 생성하면 아래 사진처럼 src부터 폴더가 들어가는 게 보기 싫었습니다..src 없이 빈 프로젝트로 생성 후 프로젝트 소스 디렉터리를 설정하는 방법을 정리하고자 합니다   프로젝트 생성인텔리제이에서 New Project → Name 및 Location 그 외 설정 → Create혹은 파일탐색기 & 파인더에서 디렉터리 하나 생성 후 Open   생성된 프로젝트에서 src랑 다른 필요없는 파일 삭제 프로젝트 소스 디렉터리 설정Project Structure...   Modules → 해당 모듈 선택 → 설정할 디렉터리 선택 → Mark as에 Sources 클릭하면 모양이 아래처럼 바뀌는거 확인! 이렇게 하면 자..
[1259] 팰린드롬수 문제 보기 Question어떤 단어를 뒤에서부터 읽어도 똑같다면 그 단어를 팰린드롬이라고 한다. 'radar', 'sees'는 팰린드롬이다.수도 팰린드롬으로 취급할 수 있다.수의 숫자들을 뒤에서부터 읽어도 같다면 그 수는 팰린드롬수다.121, 12421 등은 팰린드롬수다.123, 1231은 뒤에서부터 읽으면 다르므로 팰린드롬수가 아니다.또한 10도 팰린드롬수가 아닌데, 앞에 무의미한 0이 올 수 있다면 010이 되어 팰린드롬수로 취급할 수도 있지만,특별히 이번 문제에서는 무의미한 0이 앞에 올 수 없다고 하자. Input입력은 여러 개의 테스트 케이스로 이루어져 있으며, 각 줄마다 1 이상 99999 이하의 정수가 주어진다.입력의 마지막 줄에는 0이 주어지며, 이 줄은 문제에 포함..
dOuOb