학습 안내에는 아래와 같이 되어 있는데, 이제 강의를 몇 개 안들어서 못찾는것 같기도합니다. 강의 파일 어디에서 받을 수 있는지 알려주세요. 😃 수강 전 확인해주세요! 📢 이 강의는 Code with Antonio 유튜브 채널에도 공개되어 있지만, 실제로 클론코딩을 완성하려면 유료 학습자료가 꼭 필요합니다. (전체 코드베이스, 설정 파일, 구조화된 컴포넌트 포함) 💬 오직, 인프런 강의에서만 제공됩니다! 13시간의 긴 영상을 체계적인 커리큘럼으로 나누었습니다. 원하는 부분을 빠르게 찾아 학습하고 언제든 편하게 복습할 수 있어요. 영어가 낯설어도 걱정 마세요! 한국어 더빙이 제공돼서 편하게 들을 수 있어요. 배운 내용, 그냥 넘기지 마세요 🙂 중간중간 AI 퀴즈로 재미있게 복습해볼 수 있어요!
학습 관련 질문을 최대한 상세히 남겨주세요! 고민 과정도 같이 나열해주셔도 좋습니다. 먼저 유사한 질문이 있었는지 검색해보세요. 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. [33. 좋아요 수 구현] 에서 테스트 하는 화면에서요. 해당 방법대로 실행을 하면 동시성 문제가 발생합니다. Record has changed since last read in table 'article_like_count' 저는 MariaDB를 사용하고 있는데요. MySQL도 마찬가지로 기본 잠금 수준이 Repeatable Read 라고 알고 있습니다. 해당 기본 수준으로 실행하면 동시성 문제로 영상과 다른 결과를 보이게 됩니다. 따라서 잠금 수준을 Read Commited 나 Read Uncommited 로 변경하면 제대로 실행이 됩니다. 이렇게 하는 것이 정답인지 아니면 다른 원인이 있는건지 알려주세요.
여기에 질문드리면 되는걸까요? 아니면 다른 곳에 따로 질문드리는걸까요? 질문 1. 꼭 하나의 폴더를 먼저 만들어서 열어준 다음 'npx create-next-app@14 프로젝트 이름' 이렇게 폴더 내에 폴더를 만들어서 새로 만든 폴더를 열어서 작업해야 하나요? 아니면 그냥 vs code켜서 'npx create-next-app@14 프로젝트 이름' 바로 쳐서 그 프로젝트에서 바로 시작하면 되나요? 질문 2. 꼭 const router, const {q}로 해야 하나요?, 그 이유도 궁금합니다. 방금 let으로 {q} 선언하니까 오류가 발생했어서 질문드립니다. 질문 3. [[...id]].tsx 에러를 방지하기 위해 기본적으로 대괄호 두번 쓰는게 일반적인가요? 질문 4. search안에 index.tsx라고 파일명을 지었는데, 일반적으로 pages 폴더 하위 폴더를 만들면 그 안에는 무조건 index.tsx라고 파일명을 설정하나요? 그리고 쿼리 파라미터를 받는 동적 url인 경우에만 해당 쿼리 파라미터 이름을 대괄호 안에 적는건가요? 그리고 다중으로 쿼리 파라미터 설정을 할 것을 대비해서 일반적으로 ... 설정을 하는지도 궁금합니다. 질문 5. 404페이지는 보통 이미지로 많이 설정하는데 그럼 export default하고 그 안에 이미지 url을 불러오는건가요? 이미지는 어느 폴더에 보관하는건지 궁금합니다. 질문 6. export default function Page() {}에서 Page는 Pages 안에 들어있는 Page니까 관용적으로 Page를 사용하는건가요? 질문 7. 보통 export default 이렇게 다 작성하는지 아님 자동완성 템플릿을 설정해놓고 사용하는지도 궁금합니다.
[VOD] 6주 완성! 개발 실무를 위한 고농축 바이브코딩 (Cursor AI, Figma)
전체적으로 프롬프트로 나온 결과값이 너무 달라서 그냥 우선 강의를 듣고 잇긴한데 cursor 버젼때문인지.. Sonnet버젼 4로 시도했는데 실행이 안되서 auto로 그냥 자동 AI툴 돌려서 했더니 강사님이랑 결과값이 너무 품질이 떨어지는 결과가 나오고. pro로 업그레이드 해야 할지.. 이게 씽크가 어느정도 맞아야 진도를 맞출거 같은데 말이죠. 어떻게 해야 하나요??
강의 13:30분 부터 설명하시는 부분에 대한 질문입니다. 해당 부분은 Member의 팀 값을 변경했을때 DB의 Member의 외래키(TEAM_ID)가 변경되어야하는지, Team의 멤버들을 업데이트 했을 때 외래키 값이 업데이트 돼야하는지에 대한 내용인데요. 전자는 코드상으로 member.setTeam(team)이 될것이고 후자는 team.getMembers().addMember(member)가 될텐데요. 전자는 이전 강의인 단방향 연관관계에서도 봤듯이 해당 코드를 진행하면 DB Member의 외래키 업데이트가 자동적으로 이루어 지는 것으로 이해하고 있습니다 후자는 후자의 코드를 진행해도 FK 업데이트가 이루어 지지 않는 것으로 알고 있습니다.(Team에는 외래키가 없는 것이 원인으로 알고있습니다.) 그래서 영상에서 말씀하신 둘중 무엇으로 외래키를 업데이트 해야하냐 같은 딜레마라고 언급하신 것이 이해가 잘 되질 않습니다. 어차피 후자의 코드자체가 외래키가 업데이트 되지 않는 코드인데 강의에서 언급하신 전자, 후자 중 어느 것으로 업데이트 해야 하는지에 대한 딜레마가 나온 이유를 모르겠습니다. 이부분을 어떻게 이해하여야할까요?
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 네트워크 프로그램 자원종료 관련 이해가 안되는 부분이 있어서 문의드립니다. [SessionManagerV6] public synchronized void closeAll() { for (SessionV6 session : sessions) { session.close(); } sessions.clear(); } [SessionV6] // 세션 종료시, 서버 종료시 동시에 호출될 수 있다. public synchronized void close() { System.out.println("closed : " + closed); System.out.println(Thread.currentThread().getName()); if (closed) { return; } closeAll(socket, input, output); // shutdown closed = true; log("연결 종료: " + socket); } 서버에서 ShutdownHook이 발생했을 때 2개의 Client에 Socket이 연결되어 있었다고하면 첫번째 Clinet의 Socket이 정리되고 난 후 2번째 Clinet의 Socket이 정리되는 시점에서는 closed 변수가 true이기 때문에 정리가 안되고 return되는거 아닌가요? 제가 잘 못 이해하고 있는걸까요? 추가적으로 로그를 찍어서 상태값을 확인해 봤는데 이해가 잘 되지 않아서 문의드립니다. 아래는 로그 정보입니다. 17:34:32.806 [ shutdown] shutdownHook 실행 closed : false shutdown 17:34:32.806 [ shutdown] 연결 종료: Socket[addr=/127.0.0.1,port=58474,localport=12345] closed : false shutdown 17:34:32.806 [ shutdown] 연결 종료: Socket[addr=/127.0.0.1,port=58480,localport=12345] 17:34:32.807 [ Thread-2] java.net.SocketException: Socket closed closed : true Thread-2 17:34:32.807 [ Thread-3] java.net.SocketException: Socket closed closed : true Thread-3 17:34:32.807 [ main] 서버 소켓 종료: java.net.SocketException: Socket closed 종료 코드 130 (interrupted by signal 2:SIGINT)(으)로 완료된 프로세스
강의 감사합니다. 강의자님의 포트폴리오를 보면서 얼마나 많이 노력하셨는지가 보입니다 -- 공유해주신 포트폴리오를 제 상황에 맞게 하려고 하는데요 ! 질문이 있습니다. 저는 대회를 나간 경력이없고 신입이라 그런지 공유해주신 포폴에 무엇을 쓰면 좋을지 조언듣고 싶습니다. 음 제 지금 상황은 비전공자이고,, react.js 블로그 포폴 하나 혼자 강의 보면서 만들었는데 어떻게 어필하면 좋을까요 .. 자기소개서는 포트폴리오에 올리지 않는게 좋을까요 ? 방향잡기가 쉽지가 않네요
학습 관련 질문을 최대한 상세히 남겨주세요! 고민 과정도 같이 나열해주셔도 좋습니다. 먼저 유사한 질문이 있었는지 검색해보세요. 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. @Query("select c from CommentV2 c where c.commentPath.path = :path") Optional<CommentV2> findByPath(@Param("path") String path); 위와 같은 방식으로 조회를 하면 인덱스 서치가 되지 않는 것 아닌가요? 아래와 같은 방법으로 해야 할 것 같은데.. @Query("select c from CommentV2 c where c.articleId = :articleId and c.commentPath.path = :path") Optional<CommentV2> findByPath( @Param("articleId") Long articleId, @Param("path") String path); 답변 부탁 드립니다.
강의 제작해주셨을 때는 gemini flash 기본 모델 버전이 2.0 이었던거 같은데 2.5로 최근에 업데이트가 된 거 같네요. webClient 요청 uri에서도 버전을 2.5로 명시를 해줘야 정상적으로 요청 응답이 오는데 다른 분들 참고하시면 좋을 거 같아 올려봅니다.
24강 강의 관련, 몇가지 추가 문의드립니다. 윈도우에서 Cursor 에디터 실행후, Ctrl+ESC 했을때, 강의화면과 같이 우측에 Clause Code 가 열리지 않네요. 단축키를 설정해야 할까요? (24강 4분 15초 강의화면) Cursor 에디터 실행후, Terminal 창을 열고, claude 실행한 이후 콘솔 입력은 정상적으로 동작합니다. 그런데, Cursor 에디터 오른쪽 메뉴를 통해 "Claude Code:Open" 을 실행했을때는 챗 화면만 보이고, 강사님 강의 화면처럼 Claude 콘솔 입력 화면은 안나오네요. (24강 4분 21초 강의화면) 아래 화면에서 Anthropic Consol 선택후 로그인 시도시, $5불 추가 팝업이 뜨는데, 이 비용을 지불하면 강사님 화면처럼 볼수 있는 걸까요?
Vercel에 서버 배포 후 api를 호출하면, 404에러가 뜹니다 ㅠㅠ 코드는 바뀐게 없어서, 로컬에서 api 호출은 잘되는데, 배포만 하면 안되네요... swagger도 배포사이트에서는 안되는게 맞을까요? 로컬에 있는 코드랑 바꾼거없이 그대로 배포했는데 로컬에서는 swagger도 접속 잘됩니다. 혹시 .env에 있는걸 setting에서 직접 입력해줘야 하나요? 확인해보니 배포된 서버 네트워크에서 스웨거로 접속하면 다음과 같이 번들파일과 css를 불러올 때 404에러가 발생합니다... 아래는 배포된 서버 url입니다. https://onebite-books-server-three-tau.vercel.app/
25강 "프로필 웹사이트" 앱을 구현하는 중에 "Limit reached" 코멘트와 함께 더이상 강의를 진행하지 못했네요. claude 실행후 plan 모드에서 "프로필 웹사이트" 앱 만들기를 처음 시도시, '배포' 단계(무려 7단계) 까지 언급되길래, 단계를 줄였습니다. 이후, 개발 환경 (npm 인스톨, 로컬 서버 실행...) 단계가 언급되고, SNS 코드 포함하여, 앱을 만드는 과정 등에서 html 코드를 무려 800줄 가까이 만들고, 파일을 분리하고 html 을 python 과 연계하는 코드까지 만들더니 limit 에 도달해서, "프로필 웹사이트" 앱을 완성하지 못했습니다. ㅠㅜ claude pro 구독해서 사용중입니다. 강의 과정의 앱 만들기는 사실 개념 이해 및 실습이 중요할거 같은데, "프로필 웹사이트 만들어줘:" 보다는 좀 더 구체적으로 프롬프트 입력을 통해 간단한 앱을 만들수 있도록 유도되면 좋겠습니다 ㅠㅜ