1) 부킹 파일 삭제 시, 먼저 '삭제 대기'로 해당하는 테이블 행에 표시를 하여 놓고, 일정 기간 후에 정리 작업을 통해 테이블로부터 삭제를 하여주고, 스토리지에서도 해당 파일을 같이 제거해 줍니다. 2) 부킹 삭제 시, 부킹을 먼저 '삭제 대기' 로 테이블 행에 표시를 하여 놓고, 파일들도 마찬 가지로 '삭제 대기'로 유지 시켜줍니다. 일정 기간 후, 부킹 데이터가 삭제 될 때, 같이 해당하는 부킹 파일 레코드 행들을 테이블로 부터 삭제하여주고, 스토리지에서도 물리적으로 제거 해줍니다. 이는 사용자가 실수로 특정 파일 및 부킹을 삭제 할 경우를 대비해 복구 할 시간을 주기 위함입니다. 즉시 물리 삭제를 수행할 경우 DB에는 삭제되었지만 파일이 남거나, 파일은 삭제되었지만 DB 에서는 계속 존재하는 불일치 문제가 발생할 수 있습니다.
제목과 같이 저는 ROADMAP.md(클로드코드가 만든)과 shrimp task manager가 만든 작업이 다른데, 왜 이런 결과가 나오게 된건가요? ❯ task list 작업목록와 @docs/ ROADMAP.md 작업 목록과의 차이는 뭐야? ⎿ Read docs\ ROADMAP.md (260 lines) ● Shrimp Task Manager vs ROADMAP.md 비교 ROADMAP.md (Phase 2) - 3개 고수준 작업 ┌──────────┬──────────────────────────────────────────────────────────────┐ │ Task │ 내용 │ ├──────────┼──────────────────────────────────────────────────────────────┤ │ Task 004 │ 견적서 공통 컴포넌트 라이브러리 (7개 컴포넌트) │ ├──────────┼──────────────────────────────────────────────────────────────┤ │ Task 005 │ 견적서 상세 페이지 UI 완성 (더미 데이터, 반응형, 애니메이션) │ ├──────────┼──────────────────────────────────────────────────────────────┤ │ Task 006 │ 에러 페이지 및 상태 UI (404/500, 만료 안내, 토스트) │ └──────────┴──────────────────────────────────────────────────────────────┘ Shrimp Task Manager - 15개 세분화 작업 추가된 작업 (ROADMAP에 없음): ┌─────────────────────────┬───────────────────────────────────────────┐ │ 작업 │ 설명 │ ├─────────────────────────┼───────────────────────────────────────────┤ │ formatCurrency 유틸리티 │ 원화 포맷팅 함수 (공통 사용) │ ├─────────────────────────┼───────────────────────────────────────────┤ │ QuoteStatusBadge │ 상태 배지 컴포넌트 (추가 구현) │ ├─────────────────────────┼───────────────────────────────────────────┤ │ 배럴 익스포트 설정 │ index.ts 별도 작업으로 분리 │ ├─────────────────────────┼───────────────────────────────────────────┤ │ 로딩 페이지 리팩토링 │ loading.tsx 별도 작업으로 분리 │ ├─────────────────────────┼───────────────────────────────────────────┤ │ Playwright MCP 테스트 │ E2E 테스트 (ROADMAP에서는 Phase 3에 포함) │ └─────────────────────────┴───────────────────────────────────────────┘ 이미 완료된 항목 (Phase 1에서): - 404 에러 페이지 (not-found.tsx) ✅ - 500 에러 페이지 (error.tsx) ✅ 주요 차이점 1. 세분화 수준: ROADMAP은 3개 고수준 작업, Shrimp는 15개 실행 가능 단위로 분리 2. 의존성 관리: Shrimp는 작업 간 의존성을 명시적으로 관리 3. 추가 컴포넌트: QuoteStatusBadge, formatCurrency가 Shrimp에서 추가 4. 테스트 시점: Shrimp는 Phase 2에 E2E 테스트 포함 (ROADMAP은 Phase 3) ROADMAP.md 를 Shrimp Task Manager 작업 목록에 맞게 업데이트할까요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요 질문을 보면 사용자에게 정수를 받는 다는 전제일 때, 입력값이 12345 이면 1,2,3,4,5으로 나오지만 34567 로 정수값을 입력하면 출력값이 3,4,567 로 나오는데 도저히 해답이 생각 안나서요ㅠ 어떻게 코드를 수정해야 다른 정수들을 넣어도 4,5,6,7,8 <<이런식으로 나올 수 있을까요?
안녕하세요, 반도체 공정 직무 취업을 위한 강력한 무기, 데이터 분석 수업 신청한 수강생입니다 pandas로 csv 로 불러오는 파이썬 코드로 작성한 부분이 있는데, 혹시 csv 는 어디서 다운 가능할까요? 본 강의에 없다면 감사하겠습니다 다운을 받긴 했는데, 만약 실 데이터가 없다면 환불 가능할까요? 인프런 정책으로는 현재 불가능해서요 데이터와 함께 실습 코드를 따라하고 싶어 현 강의 구매했습니다 만약 없다면 환불 요청드립니다 감사합니다 박준규 드림
안녕하세요. Mission 15를 하기위해 https://github.com/gymcoding/claude-nextjs-starters.git 코드를 클론해와서 작업을 수행하는데, 문제가 있어서 /doctor로 진단을 받고 아래와 같이 응답을 받았습니다. mcp 는 워닝이라 그냥 해볼까 하는데, 파싱 에러는 도대체 왜 발생하는지 모르겠네요.
강의 잘 들었습니다. 상세한 설명 감사 드립니다. 마지막에 skills이 추가 되어서, 강의에서 다뤘던 내용들이 헷갈리네요. 초반 강좌에서는 subagent로 PRD.md, ROADMAP.md 를 생성했었는데, Skill로 생성하는 것이 좋은 건가요? command로 추가해서 사용하던 git commit, code review 도 skill을 활용하던데 shrimp task manager는 그대로 사용해도 되는건가요?
안녕하세요 선생님, 강의 잘 들었습니다! 다만 마지막 챕터에서 vercel로 배포 진행 시 동일한 오류가 계속 발생하고 있습니다 Error: Internal Server Error at Object.n [as generateStaticParams] (.next/server/chunks/610.js:1:2820) > Build error occurred [Error: Failed to collect page data for /book/[id]] { type: 'Error' } Error: Command "npm run build" exited with 1 지피티나 제미나이는 빌드 시에 서버에서 데이터를 가져올 수 없어서 발생하는 에러라고 하는데 npm run build 로 localhost에서 데이터를 가져오는 경우에는 오류없이 빌드도 잘 되고 next > server > app > book 경로에 12개의 book 데이터가 잘 생성되는 것까지 확인했습니다! 그런데 vercel로 배포시에만 계속해서 동일한 오류가 발생합니다 ㅠ 참고로 배포한 서버 URL입니다 https://onebite-books-server-ten-sandy.vercel.app/ 또한 강의를 보며 작성한 코드 깃허브 URL입니다 https://github.com/younheejae/onbite-books-next.git 프로젝트 세팅에 Environment Variables 도 잘 설정한 것 같습니다! 확인부탁드립니다.. 감사합니다.!
안녕하세요, 무한 스크롤 방식에서 페이지 번호 방식 쿼리의 문제점을 설명한 부분에 질문이 있습니다. 페이지 방식을 무한 스크롤 방식에 적용 시 문제점으로 아래 2가지를 제시하셨는데요, 1) 페이지가 추가된 경우, 데이터 중복 조회 문제 2) 페이지가 삭제된 경우, 데이터 누락 문제 궁금한 점은, 이러한 문제는 무한 스크롤에서 사용했을 때 뿐 아니라, 페이지 번호 방식을 사용할 때도 마찬가지로 문제가 있는 것 아닌가 싶다는 것입니다. 페이지 번호 방식 자체의 한계라고 생각하는데, 페이지 번호 방식에서는 발생하지 않는 문제인가요?
안녕하세요. 싱글톤 관련 질문 드립니다. 특정한 의문점에 대한 질문은 아니고요. 스프링 컨테이너는 핸들러나 서비스 빈을 싱글톤으로 관리하게 되는데, 혹시 강의에서 등장한 자바와 코틀린의 싱글톤 사용 방식의 차이에 의해 발생하는 스프링 싱글톤 관련된 이슈가 있는지 궁금합니다. 싱글톤 관리는 언어와 관계없이 스프링 컨테이너가 맡게 되니 별 상관이 없을 것으로 예상되긴 합니다만.. 혹시 싶어 질문 드립니다. 감사합니다.
먼저, 이렇게 양질의 강의 올려주셔서 정말 감사드립니다. 잘 듣고 있습니다. 49강의 실습에서 equals 메소드를 재정의한다고 말씀하셨습니다. 그런데, MyString 은 Object 로부터 equals(Object) 를 상속 받았고, 강의에서 보여주신 코드에서는 equals(MySring) 을 정의했으므로, 메소드 시그니처가 달라 재정의(overriding)보다는 overloading이 더 적절한 표현이 아닌가 싶어서 질문드립니다. 실제로 인텔리제이에서 equals(MyString) 에 @Override 어노테이션을 붙이려하면 아래의 사진과 같은 오류가 발생합니다. 아니면 제가 재정의에 대해서 오해하고 있는 부분이 있는걸까요?
게스트 예약 부킹 일정 변경 정책 일자와 타임 슬롯 변경을 허용합니다. 과거 일자로의 변경은 허용 되지 않습니다. 예약 날짜는 항상 현재 일자 및 시간 보다 미래 이어야 하기 때문입니다. 각 호스트 고유의 등록된 타임 슬롯으로만 변경이 허용 가능 합니다. 호스트 A의 캘린더에 지정된 타임 슬롯 이외에 시간을 선택한다면, 호스트와 게스트의 만남이 불가능합니다. 호스트의 캘린더에 해당 타임 슬롯의 자리가 비어있다면, 변경이 가능합니다. 그렇지 않다면, 해당 예약 내역 실패 오류를 반환합니다. 성공 시나리오 호스트 타임슬롯: 화,목,금 오후 3시 - 4시, 4시 - 5시, 6시 - 7시 (1월 3일~ 1월 10일 다 비어있음) 게스트는 2026년 1월 1일에, 2026년 1월 2일 (금요일) 오후 3시 부킹을 2026년 1월 6일 (화요일) 오후 6시로 변경하려고 합니다. a) 새 부킹 날짜는 현재 날짜보다 미래 날짜이며, b) 새 부킹 날짜는 호스트의 타임 슬롯의 일자와 일치하며, c) 1월 6일 오후 6시에는 자리가 비어있으므로, 일정 변경이 성공하게 됩니다. 실패 시나리오들 a) 1. 게스트는 2026년 1월 1일에, 2025년 1월 2일 (금요일) 오후 3시 부킹을 실수로 2025년 12월 30일 (화) 오후 6시로 변경하려고 합니다. 새 부킹 날짜는 현재 날짜보다 과거 날짜 이므로 유효 날짜 오류를 반환해줍니다. b) 1. 게스트는 2026년 1월 1일에, 2025년 1월 5일 (금요일) 오후 3시 부킹을 2026년 1월 5일 (월) 오후 6시로 변경하려고 합니다. 새 부킹 날짜는 현재 날짜보다 미래 날짜이므로 첫번째 조건을 통과합니다. 그러나, 호스트의 타임 슬롯 일자들과 맞지 않으므로, 유효하지 않은 타임슬롯 오류를 반환합니다. c) 1. 게스트는 2026년 1월 1일에, 2025년 1월 5일 (금요일) 오후 3시 부킹을 2026년 1월 6일 (화) 오후 6시로 변경하려고 합니다. 새 부킹 날짜는 현재 날짜보다 미래 날짜이므로 첫 번째 조건을 통과합니다. 호스트의 타임슬롯과 일치하므로, 두 번째 조건도 통과합니다. 그러나, 호스트의 캘린더에 이미 요청 시간대에 다른 게스트와의 예약이 존재하므로, 이미 존재하는 일자 오류를 반환합니다.
351쪽 내용 중에 "테스트할 때 현재 일시는 우리가 원하는 임의의 현재 일시값을 사용하도록 합니다. 종단점 함수에서는 어떻게 해야하고, conftest.py 파일에서 의존성 주입 오버라이드는 어떻게 해야할까요?" 이 질문에 대한 저의 구현이 맞는지 궁금합니다. appserver.apps.calendar.deps.py appserver.apps.calendar.endpoints.py conftest.py 3
커서 IDE 에서 터미널 켜서 클로드코드를 실행했는데요 /ide 하여도 아래와 같이 뜹니다 ㅠㅠ 감지된게 없다고 뜨네요 ❯ /ide Select IDE Connect to an IDE for integrated development features. No available IDEs detected. Make sure your IDE has the Claude Code extension or plugin installed and is running. Enter to confirm · escape to cancel