안녕하세요. 개발을 전혀 모르는 비개발자 출신입니다. 섹션 3 미션 과정에 대한 질문이 3개 있습니다. 1. 섹션 3 미션을 수행하고 있는데 계속 Do you want to proceed? 라고 진행 여부를 계속 묻는데 이게 정상인가요? 2. 프롬프트에 아래 처럼 입력할 때 줄바꿈 할려면 줄바꿀려고 하는 곳에서 \+enter 키 누르는게 맞나요? 이걸 모르고서 습관적으로 '현재 시스템에 설치된 다음 도구들의 버전을 확인해줘:' 입력하고 바로 엔터 치니까 바로 명령을 수행해서 조금 당황했습니다. 3. 위 캡쳐파일은 제출하기에 샘플로 올라온 첨부자료를 캡쳐한 화면 입니다. 아래는 제가 미션 수행해서 클로드 코드에서 프롬프트 입력한 결과값 중 일부 화면 입니다. 이게 항상 프롬프트에 대한 결과값이 다르기 때문에 이상이 없는걸까요?
안녕하세요~ 수업 열심히 잘 듣고 있습니다. 다름이 아니라 아무 시작도 안한 폴더에 /init 을 해봐도 내용이 없기 때문에 claude.md 파일을 만들 수 없다고 나오는데 강사님 수업 내용에는 프로젝트 하기전에 /init 을 해서 claude.md 파일을 만들라고 하시네요. 제가 헷갈리고 있는건지, 어떤게 문제인지 확인 부탁 드립니다.
미션 주시는 텍스트를 복사해서 클로드 코드에 붙여넣으면 항상 저렇게 압축(?)된 형태로 밖에 안 보여줍니다. 강사님 영상에서는 텍스트가 그대로 펼쳐져서 클로드 코드에 붙여넣기가 되는 데 저는 항상 Pasted text라고만 나오더라고요. URL 수정을 복붙한 텍스트를 펼쳐 바로 넣고 싶은데 현재로는 그게 안됩니다. AI에게 물어보니 클릭하면 펼쳐진다고 하는데 저는 그게 작동을 안하는 것 같습니다. 혹시 해결방법이 있을까요?
운영체제 관점의 실제 모니터 명세는 조건변수를 추가할 수 있습니다. synchronized는 자바가 구현한 모니터인데 조건변수의 추가가 불가능해서 생산자 소비자 문제를 해결할 수 없습니다. ReentrantLock은 자체적으로 구현한 락을 사용하지만 그 락의 구현은 실제 조건변수를 추가할 수 있는 모니터의 명세를 따르고 있어 모니터를 구현했다고 할 수 있습니다. 모니터는 CAS를 내부적으로 사용합니다. CAS를 반복문으로 돌리며 바쁜대기를 하거나 Park로 락을 획득하고 반환합니다. 원자적 연산도 CAS를 구현하지만 단순 속도가 synchronized와 ReentrantLock보다 더 빠른 이유는 락의 존재 유무입니다. 혹시 제가 이해한 내용들이 맞을까요?? 현재 81강까지 들었습니다!
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 영상에선 정렬되서 나오는데 제 DB에서는 price부터 나오네요 코드 에러는 없고 넣으면 들어가는데 보기좋게 정렬되게 만들고 싶은데 어떻게 해야할까요?
안녕하세요, 강사님! 강의 잘 듣고 있습니다. 들으면서 작은 서비스들을 몇개 만들어보고 있어요. 현재 Next.js와 Supabase를 기반으로 B2B 솔루션, 유틸리티 서비스등 총 7개의 프로젝트를 혼자서 개발 및 운영하고 있습니다. 현재는 프로젝트마다 별도의 Supabase 인스턴스를 생성하여 관리하고 있는데, 그러다 보니 Pro 플랜 기본료 25달러 에 프로젝트당 추가 컴퓨트 비용 10달러 가 붙어 매달 약 $85(11만 원 이상) 의 고정비가 발생하고 있습니다. 1인 개발자로서 프로젝트를 계속 확장해 나가기에 비용적 부담이 커지고 있어, 다음과 같은 '단일 DB 통합 전략' 을 검토 중입니다. [검토 중인 통합 전략] 단일 프로젝트로 일원화: 하나의 Supabase Pro 프로젝트만 유지하고 나머지 인스턴스는 제거. Postgres 스키마(Schema) 활용: 기본 public 스키마 외에 서비스별로 별도 스키마(예: service_a , service_b )를 생성하여 데이터 격리. Client-side 대응: Supabase Client 설정 시 각 서비스에 맞는 스키마를 지정하여 호출. [강사님께 여쭙고 싶은 점] 유지보수 및 확장성: 1인 개발자가 관리하기에 이러한 스키마 기반의 통합 방식이 장기적으로 서비스 간 간섭이나 관리 복잡도를 크게 높이는 요인이 될까요? 인증(Auth) 및 보안(RLS) 설계: 하나의 프로젝트 안에서 여러 서비스의 사용자(Auth)를 관리할 때, 메타데이터 등으로 유저를 구분하는 방식이 보안 아키텍처상 취약점이 될 가능성이 있을까요? 성능 리스크: Micro 인스턴스 하나에 7개 서비스의 부하를 몰아넣는 것이(현재는 초기 단계라 트래픽이 적지만) 운영상 위험한 선택일지 궁금합니다. 인프라 대안: 혹시 1인 개발자가 다수의 사이드 프로젝트를 저비용으로 안정적으로 운영할 때, 위와 같은 통합 방식 외에 더 권장하시는 인프라 구성이나 전략이 있으신지 조언 부탁드립니다. 비용 효율성과 기술적 부채 사이에서 최적의 균형점을 찾고 싶습니다. 강사님의 소중한 인사이트를 나눠주시면 개발 방향을 설정하는 데 큰 도움이 될 것 같습니다. 감사합니다!
안녕하세요. 우선 저번과 같이 좋은 강의를 열어주시고, 강의 업데이트도 감사합니다. 100퍼센트 완강하고 좋은 후기 작성 꼭 하고 싶어서 열심히 따라가고 있습니다. 다름이 아니라 질문이 하나 있어서 질문글 남깁니다. 열심히 진도 따라가면서 드는 생각인데, 처음부터 한 번에 PRD에 집어넣어서 기능 다 만드는게 맞는건지, 아니면 고도화를 차근차근 해나가는게 맞을까요? 아 시간은 오래 걸려도 됩니다. 수익화와 테스트를 위해서 재빠르게 mvp 제작을 위해서가 아닌, 진짜 개발할 때의 클로드코드의 토큰 효율성이 궁금해서 질문드리는 부분입니다. 항상 좋은 인사이트 주셔서 감사합니다. 수고많으십니다.
설치를 하다보니 .mcp.json이 .claude 안이 아니라 같은 디렉토리에 설치되더군요. claude code에도 물어보니 이게 표준이라 대답해주고요. 혹시 이게 표준인 이유가 있을까요? claudecode 관련은 .claude 폴더 안에 모아서 관리하는게 편한 것 같은데요. 아니면 설치한 방식에 따라 달라지고 실제 퍼포먼스와는 전혀 상관없이 알아서 참조하나요? 만약 이를 옮기려 한다면 claudecode에게 알려줘야 할까요? 그래야 한다면 claudecode가 프로젝트 내의 디렉토리 안의 .mcp.json을 알아서 찾아서 참조하는게 아니라 특정 디렉토리로 정해져 있다는 걸 텐데요, 그 디렉토리는 어디에 적혀져 있는 걸까요? 그걸 수정할수도 있을까요? 두서없이 길어졌네요. 죄송합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 현재 최신 버전인 SpringBoot4 + Hibernate7 을 사용해서 강의를 듣고 있습니다. 이 버전에서는 (Hibernate 모듈 등록 X + 프록시 직접 초기화 X] 상태에서 API 응답으로 엔티티를 곧바로 반환하게 되면, 강의 내용처럼 오류(예외)가 나지 않고, Jackson이 json을 만드는 과정에서 getter 등을 호출해서 프록시 객체들을 자동으로 초기화(로딩)시키는 것처럼 보이네요. 응답 결과에서도 모두 출력되고요 (물론, @JsonIgnore 없으면 무한루프는 발생) 그래서 강의 내용처럼 오류가 나도록 하는 방법을 한참 찾다가 현재 버전에서 Hibernate 모듈을 등록하는 방법을 발견해서 공유해봅니다. (메뉴얼에도 없길래) [등록 방법] 1. 라이브러리 등록 implementation 'tools.jackson.datatype:jackson-datatype-hibernate7' 2. 빈 등록 @Bean public Hibernate7Module hibernate7Module() { Hibernate7Module module = new Hibernate7Module(); // module.configure(Hibernate7Module.Feature.FORCE_LAZY_LOADING, true); return module; }
안녕하세요. 강의 정말 잘 듣고 있습니다. 강의를 듣다가 커버링 인덱스(Covering Index) 관련해서 궁금한 점이 생겨 질문드립니다. 커버링 인덱스는 SELECT 문에서 조회하는 컬럼들이 모두 인덱스에 포함되어 있을 때 , 원본 테이블을 조회하지 않고 인덱스만으로 쿼리를 처리할 수 있는 방식 이라고 이해했습니다. 그렇다면, SELECT 에 포함된 컬럼들이 각각 단일 인덱스로 존재하는 경우에도 커버링 인덱스로 처리될 수 있는지 궁금합니다. 아니면 반드시 하나의 복합 인덱스(composite index) 로 묶여 있어야 커버링 인덱스로 동작하는 것인지 알고 싶습니다. 예를 들어, id 는 Primary Key 라서 자동으로 인덱스가 생성되어 있고 name 컬럼에 대해서도 검색을 위해 인덱스를 추가하려고 할 때 다음 두 방식 중 어떤 것이 더 적절한지 궁금합니다. name 컬럼에 단일 인덱스 를 생성 (id, name) 형태의 복합 인덱스 를 생성 이 경우 커버링 인덱스 관점에서 어떤 방식이 더 올바른 설계인지 설명해주시면 감사하겠습니다 :>