'섹션 2. Next.js를 소개합니다' - '7. 1.3) 실습용 백엔드 서버 세팅하기' 강의 10:04 에서 npm i 하면 ' 30 vulnerabilities (9 low, 7 moderate, 13 high, 1 critical) '라고 취약점이 많이 떠서 AI를 활용해서 취약점을 제거 했습니다. AI가 권하는대로 npm audit fix npm install @nestjs/common@latest @nestjs/core@latest @nestjs/platform-express@latest @nestjs/swagger@latest @nestjs/cli@latest @nestjs/testing@latest 명령어를 사용하여 취약점을 제거했습니다. 이후 npm i 등 cmd 명령어를 순서대로 입력해서 해당 강의에서는 문제 없이 잘 진행이 됩니다. npm install @nestjs/XXX@latest 명령어들이 최신 버전을 설치하는거 같아서 나중에 버전 관련 문제가 생기지 않을까 걱정이 됩니다. 지금이라도 다시 백엔드 서버 세팅을 다시 맞춰서 강의와 맞는 버전으로 진행하는게 좋을까요?
강의 내용 중에 "pip install pykrx" 이 부분에 대한 설명을 해 주신다고 했지만 나중에 VS CODE만 설명하시면서 실제로는 강의에서 빠져 있어서 기존 문의드린 오류가 난 게 아닌가 합니다. 느낌으로는 conda promp 상에서 실행하면 될 것 같은데 안되네요. "pip install pykrx" 를 어디에 설치해야 하나요? 아래 2곳에서는 안됩니다.
The 10x AI-Native Developer: 회사에서 AI로 압도적 성과를 내는 법
2.0.76 (Claude Code) 버전에는 # 메모리 기능이 없습니다..ㅠ (+ 자문자답일거 같은데요.. 혼자 이것저것 하다보니 /memory 기능 이용하면 어쨌든 CLAUD.md에 내용 저장하게끔 하는 기능이 있는데, 결국 # 쓰는거랑 결과는 동일하니 이렇게 처리하면 되겠죠...?)
이 부분을 주석처리해서 빌드하고 실행해보니 확실히 모달 띄우고 닫을 때 시간 체감이 될 정도로 줄어드네요. 강의에 넣어주신 Vercel 최적화를 진행해도 잡히지 않아서 더 근본적인 문제가 있는 것 같아 실험해 봤더니 유의미한 결과가 있던 것 같아서 공유드립니다. 개인적인 생각으로는 수십 개의 데이터를 한꺼번에 가져오는 바람에 생기는 성능 이슈라고 생각하는데, 페이지네이션 api 요청 처리를 배우는 겸으로 /review/book/${bookId} api를 조금 더 고도화하면 좋을 것 같습니다. 긴 강의 준비해주시느라 너무 고생 많으셨고, 덕분에 제 실무 프로젝트에도 아주 유용하게 적용할 수 있을 것 같습니다. 감사합니다!
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 일단 현재 yml 강의 자료 기준으로는 trasaction rolled back에 대한 로그가 찍히질 않는데, 해당 옵션을 추가해봤습니다. org.springframework.orm.jpa: trace #JPA 트랜잭션 관련 로그 그랬더니 찍히긴 하던데 약간 이상하게? 찍힙니다. 2026-01-07T02:05:57.767+09:00 DEBUG 5469 --- [ Test worker] o.s.orm.jpa.JpaTransactionManager : Initiating transaction rollback 2026-01-07T02:05:57.767+09:00 DEBUG 5469 --- [ Test worker] o.s.orm.jpa.JpaTransactionManager : Rolling back JPA transaction on EntityManager [SessionImpl(1610625797<open>)] 혹시나 다른 옵션이 있을까? class가 아니라 SessionImpl? 이렇게 나오네요. 이건 제가 공식 문서를 봐봤는데, 다른분들께 도움이 될까 싶어서요, 나중에 자료도 업데이트 해주시면 좋을 것 같아요! https://github.com/gavlyukovskiy/spring-boot-data-source-decorator?tab=readme-ov-file#quick-start 현재 저는 부트 4 버전을 사용중인데, 4버전 부터는 p6spy를 1.10.0 이 아닌 2.0.0으로 해줘야 합니다! implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:2.0.0' 현재 자료 기준은 1.10.0이라 수정해 주시면 좋을 것 같습니다! (그리고 3버전도 1.12.1 로 올라갔습니다!) 사실 2번은 질문이라기 보다는 알려드리고 싶은 부분이었고, 1번만 트랜잭션 로그를 다르게 찍는 방법? 이 있는지 궁금합니다.
안녕하세요, 하기 코드 중에서 it는 list.iterator의 return값을 담은, 또 다른 Iterator로 판단됩니다. 저는 그 다른 it를 while 돌려서 (알 수 없음)을 모두 삭제했습니다.(첫 번째 while문) 그러고나서 다시 it = list.iterator 코드를 입력하면, 사실상 앞에서 (알 수 없음)을 삭제했던 작업은 다 날아가고 새로운 Iterator return값으로 덮어 씌워지고, 이후 두 번째 while문에서는 (알 수 없음)도 모두 출력되어야 하는 상황으로 이해되는데 그렇지 않고 강사님께서 의도하신대로 정상 출력되더라고요. 혹시 사유가 어떻게 되나요? 자바에서 x = A 라는 수식은 x에 A값을 집어넣는 게 아닌가요? x는 A의 메모리 주소를 가리키고 x를 수정하면 A 내부 값이 함께 수정되는건가요?? // (알 수 없음) 데이터 삭제 it = list.iterator(); while (it.hasNext()) { String s = it.next(); if (s.contains("(알 수 없음)")) { it.remove(); } } // 삭제 정리된 데이터 재순회 it = list.iterator(); // 데이터 삭제 간 맨 마지막으로 가 있는 위치 초기화 while (it.hasNext()) { System.out.println(it.next()); }
코드 아예 모르는 생초보라.. 선생님은 미리 짜 놓은 내용으로 붙여넣으시는데 제가 관련 내용 직접 쳐야 하는게 의도인지, 아니면 다른 방식으로 적당히 내용을 채워야 하는지..? 궁금해서 여쭙니다ㅎㅎ 아니면 혹시 해당 내용 텍스트로 공유해주셨거나 강의록등에서 확인할 수 있을까요?
int[] size = {250, 255, 260, 265, 270, 275, 280, 285, 290, 295}; for (int i = 0; i < size.length; i++) { System.out.println("사이즈 " + size[i] + " (재고 있음)"); } 사고력이라고 칭하는게 맞는지는 모르겠지만 위에 코드가 제 코드 인데요. 부끄럽지만 이건 앞으로 보나 뒤로 보나 생각하는 힘이 부족 한거 같아요. 퀴즈를 풀기전 배열을 배우는 것도 그렇고 이해가 잘 안되었지만 꾸역꾸역 어떻게든 이해를 해서 퀴즈를 풀었는데 선생님께서 말씀하신 효율적이고 빠르게 적용할수 있는 코드가 제 머리에선 도무지 나오지 않습니다ㅠㅠ 퀴즈 풀이를 볼때 250 + (5 * i) 이 코드만 보고 와 어떻게 저렇게 풀 생각을 하지 라는 생각을 하곤 합니다. 여기까지 오면서 오랫동안 쉴때도 있고 복습도 틈틈히 할 때도 있었습니다. 퀴즈 풀이에서 최대한 선생님 코드를 보며 왜 이런 식으로 적으셨을까 생각하며 이해를 할때도 있었습니다. 근데 한 챕터 한 챕터 갈 수록 이해하는데 오래 걸려서 사고력 키우는 법이 따로 있는지 여쭈어봅니다ㅠㅠ
[ 질문 배경 ] Deque에 대한 자료를 보면 포인터를 사용한다고 나와있습니다. 따라서 popleft()시 맨 좌측부터 포인터가 가르키며 삭제하게 되는데, 이는 논리적으로 "삭제"라는 개념보다는 포인터가 가르키는 곳을 다음으로 이동시킨다는 의미를 가진다고 gpt를 통해 알게 되었습니다. [ 질문 ] 그렇다면, popleft()시 포인터가 다음으로 이동할 시 메모리에 적재되어 있던 이전 값은 그대로 남아있게 될텐데, 그렇다면 이것은 메모리 낭비로 이어질 수 있지 않나요? 자바의 경우 가비지 컬렉터가 알아서 메모리를 관리하죠. GPT에게 물어보니 메모리 슬롯은 유지하며 재사용할 수 있도록 대기상태에 들어간다고 합니다. 그렇다면 이 재사용을 할지 말지에 대한 것은 누가 결정하며 어떻게 처리되나요? 궁금합니다. C의 경우 malloc 으로 메모리 빌림 , 메모리 반납을 거치게 되는데, 이 경우도 궁금합니다.
안녕하세요. 현재 회사 사무실에서 강의듣고 있는데, 일부 폐쇄망입니다. 그래서 Colab에서 실습 시 업로드 할 경우 아래 에러가 발생합니다. colab말고 다른방법은 없겟죠? A network error occurred and the request could not be completed. GapiError: A network error occurred and the request could not be completed.