묻고 답해요
169만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[Unity6] Claude Code CLI로 게임 개발부터 출시까지
프로덕션 부분 사용 불가
강의 순서대로 따라오면서 구글 스토어 출시 강의인데, 해당 화면에서 진입이 안되는데, 버튼 눌렀을때 프로덕션, 12명 이상의 테스터가 비공개 테스트 참여를 선택, 12명 이상의 테스터를 대상으로 14일 이상 비공개 테스트 진행이 있습니다. 해당 부분이 필수인가요 ?
-
해결됨[Unity6] Claude Code CLI로 게임 개발부터 출시까지
in-app purchasing 버튼의 install 버튼이 비활성화되어있을때 어떻게 해결해야하나요 ?
in-app purchasing 버튼의 install 버튼이 비활성화되어있을때 어떻게 해결해야하나요 ?
-
미해결<Node.js + NestJS 교과서> 10주 완독 챌린지 - 안정적인 AI 서비스 개발을 위한
마감 인 경우.
마감 이지만 그래도 진행해도 되나요.. 아파서 도저히 할수가 없었네요..안된다면, 리타이어 하려고합니다. ㅎ
-
미해결<Node.js + NestJS 교과서> 10주 완독 챌린지 - 안정적인 AI 서비스 개발을 위한
5장부터는 미션 상세 내용이 없는데 어떻게 작성해야되나요?
학습 후 전반적인 내용이 담긴 결과물을 스스로 만들어서 스크린샷으로만 인증하면 될까요?
-
해결됨"AI 딸깍의 시대" 원리로 돌파하는 Node.js와 CS Part1 - V8과 코어 해체기
MSA 와 BFF 아키텍처 설명 부분에 대한 문의
강의 2강에 대한 노트에 대한 질문입니다.💡[CS 및 실무 적용 Point: MSA와 BFF 아키텍처] 현대의 마이크로서비스 아키텍처(MSA)에서 Node.js는 특히 BFF(Backend For Frontend) 패턴의 핵심 기술로 사용됩니다. 브라우저의 DOM을 다루던 언어적 특성을 살려 클라이언트(React, Vue 등)의 요청을 쉽게 파싱하고, 이식된 운영체제 제어 능력(http, fs)을 통해 백엔드의 여러 마이크로서비스(Java, Python 등)로 비동기 네트워크 요청을 뿌린 뒤, 그 결과를 모아 빠르게 클라이언트에게 반환하는 완벽한 미들웨어 역할을 수행합니다.해당 설명에서 BFF로 NodeJs를 유용한 이유는 I/O 입출력 특출나기 때문에, BFF로 사용하면, API 요청을 받아서 마이크로 서비스에 통신 요청을 보내는 용도로 사용한다는 건가요?한번 더 거쳐가면 더 성능이 안 좋은 거 아닌가요?아니면 원래 SpringBoot로 개발되었던 웹 사이트를 NodeJs로 구현한다면 더 좋다는 의미일까요?
-
해결됨[Unity6] Claude Code CLI로 게임 개발부터 출시까지
유니티 제외 설치한 프로그램들 및 파일 삭제 방법
유니티 제외하고 다운로드 안내주셨던 프로그램 (예: 콤피유아이, 체크포인트 모델 데이터 등) 깔끔하게 지우는 방법 여쭤볼 수 있을까요 ? 컴퓨터 용량이 제한적이라 깔끔하게 삭제할 수 있는 방법 알려주시면 감사하겠습니다..!
-
해결됨[Unity6] Claude Code CLI로 게임 개발부터 출시까지
깃허브에서 콤피유아이 매니저 설치하는게 안됩니다.
깃허브에서 콤피유아이 매니저 설치하는게 안됩니다. 아래 처럼 뜨는데 해결 도움주실 수 있을까요? git clone https://github.com/ltdrdata/ComfyUI-Manager comfyui-managergit : 'git' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다. 이름이 정확한지 확인하고 경로가 포함된 경우 경로가 올바른지 검증한 다음 다시 시도하십시오.위치 줄:1 문자:1+ git clone https://github.com/ltdrdata/ComfyUI-Manager comfyui-manager+ ~~~ + CategoryInfo : ObjectNotFound: (git:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
eslint.config.js 설정 질문입니다.
우선 이전 질문/답변을 통해서 eslint 설정 파일명이 바뀐것을 알게되었습니다.문제는 강의의 코드와 저의 코드가 다르다는 점인데, 이정환 강사님께서 설정하신 그대로 따라간다면 rules: { "no-unused-vars": "off", "react-prop-types": "off", },이 코드만 추가하면되는걸까요?강의에서는 rules 프로퍼티가 이미 있고 해당 객체 내부에 react-refresh/only-export-components ~가 있는데 제 코드에는 rules 자체가 없습니다. 26-07-01 기준 현재 vite 프로젝트의 eslint.config.js 파일 코드export default defineConfig([ globalIgnores(["dist"]), { files: ["**/*.{js,jsx}"], extends: [ js.configs.recommended, reactHooks.configs.flat.recommended, reactRefresh.configs.vite, ], languageOptions: { globals: globals.browser, parserOptions: { ecmaFeatures: { jsx: true } }, }, }, ]);
-
해결됨"AI 딸깍의 시대" 원리로 돌파하는 Node.js와 CS Part 2 - 스트림 아키텍처와 하드웨어 통제기
7강 흐름 제어 아키택쳐 코드 순서
// 3. 작업 종료 알림: end 이벤트를 통해 댐 바닥 확인 streamRead.on("end", async () => { console.log("\\n✅ [종료] 댐 바닥 도착. 모든 데이터 복사 완료!"); // 메서드: 더 보낼 물이 없다고 선언하고 파이프 닫기 절차 진입 // finish 이벤트: 쓰기 파이프가 논리적으로 완벽히 닫혔음을 보장 streamWrite.on("finish", async () => { // 쓰기 파일 디스크립터(번호표) 운영체제에 반환 (메모리 누수 방지) await fileHandleWrite.close(); console.timeEnd("복사_소요_시간"); console.log( `📊 요약: 총 ${chunkCount}회 펌프질, ${pauseCount}회 비상 정지(메모리 방어 성공)`, ); // 메서드: 실험용 임시 파일 삭제 클린업 (unlink) await fs.unlink(SOURCE_FILE); await fs.unlink(DEST_FILE); }); streamWrite.end(); // 메서드: 사용이 끝난 읽기 파일 디스크립터(번호표) 운영체제에 반환 await fileHandleRead.close(); 읽기 스트림과 쓰기 스트림을 종료하는 3번 단계에서 쓰기 스트림을 end 하기 전에 .on finish를 등록을 해야 콘솔에서 요약을 볼 수 있었습니다. 클로드는 레이스 컨디션이 발생해서 그렇다고 하는데 어떤 부분에서 경합이 일어났는지 잘 모르겠습니다.
-
해결됨비전공자를 위한 진짜 입문 올인원 개발 부트캠프
<div id="banner">배너 이미지</div> 관련 질문
강의에서 알려주신 코드를 바탕으로 그대로 작성을 했지만 '배너 이미지'와 '판매되는 상품들' 문구가 나오지 않습니다.코드에서 어떤 게 문제일까요?
-
해결됨[Unity6] Claude Code CLI로 게임 개발부터 출시까지
5강, 오류 수정과 관련해서
"5. Claude와 게임 제작하기"에서, AddComponent() 오류가 발생했을 때, 아무런 변경없이 다시 쓰기만 해도 오류가 사라졌는데 애초에 왜 오류가 발생한 것인가요? 강의에서 "구문관련 오류"라고 하시던데 초보자로서는 이런 상황을 판단하고 처리하기가 쉽지 않습니다. 좀 더 자세한 설명 부탁드립니다.
-
미해결<Node.js + NestJS 교과서> 10주 완독 챌린지 - 안정적인 AI 서비스 개발을 위한
3,4장 이후 미션 제출 질문
3,4장에 마감 기한이 있다는 것을 놓쳐서 미션 제출을 완료하지 못했습니다. 혹시 해당 미션 수행을 마치지 못했다면 이후 미션 제출을 진행할 수 없을까요? 늦게라도 해당 미션을 제출하고 이후 미션을 진행할 수 있는 방법이 있을까요?
-
해결됨[Unity6] Claude Code CLI로 게임 개발부터 출시까지
컴퓨터를 껐다가 클로드 코드 다시 키는 방법 알려주세요.
컴퓨터를 껐다가 클로드 코드 다시 키는 방법 알려주세요.
-
미해결[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
윈도우에서 Node js를 설치하고 싶어요
윈도우 말고는 익숙치 않아윈도우에서 node js를 설치하고 싶어요그런데 윈도우에서 원활하게 사용하고 싶으면 먼저 Powershell 에서 WSL2를 먼저 설치하고 node js를 사용하라는데 이렇게 하면 우분트나 맥처럼 원활하게 사용 가능한가요?
-
해결됨"AI 딸깍의 시대" 원리로 돌파하는 Node.js와 CS Part1 - V8과 코어 해체기
addToFile function에서 path를 사용해 새로운 파일을 생성
let previousContent = ""; const addToFile = async (path, content) => { if (previousContent === content) return; // 중복 실행 방지를 위한 거름망 if(!(await fileExist(path))) return; // file이 존재하는지 않하는 지 체크 try { await appendFile(path, content); previousContent = content; console.log(`✅ ${content} is successfully appended to ${path}`); } catch (error) { if (error.code === "ENOENT") { console.log(`⚠️ ${path} does not exist`); } console.error(`❌ 에러 발생: ${error.message}`); } };catch error 부분에서 에러 코드로 ENOENT를 사용해서 path가 존재하지 않는 경우를 잡아내는 코드를 작성했지만, 실제로 실행했을 때 appendFile 자체가 이미 새로운 파일을 생성해내는데 성공하였기 때문에 error로 연결되지 않았습니다.중복 콘텐츠 방지를 위한 if 밑에 또 다른 if로 fileExist를 사용해서 early return을 하는 이런 방식으로 처리를 하는 게 맞을까요? 아니면 제가 놓친 다른 catch error 가 있는 걸까요?
-
해결됨"AI 딸깍의 시대" 원리로 돌파하는 Node.js와 CS Part1 - V8과 코어 해체기
[46강] EventEmitter를 활용한 10가지 패턴 중 플러그인 아키텍처
사례 2번 예시에서 Plugin 클래스도 EventEmitter를 상속받는 이유가 궁금합니다. Application의 인스턴스를 주입받아 해당 인스턴스를 내부에서 활용하고 있는데 Plugin 클래스 자체도 EventEmitter를 상속받는 이유가 궁금합니다.
-
해결됨"AI 딸깍의 시대" 원리로 돌파하는 Node.js와 CS Part1 - V8과 코어 해체기
강의가 누락된것 같습니다.
안녕하세요. 섹션2를 마치고 섹션3로 넘어왔는데"node.js 설치와 첫코드 실행"관련강의가 누락된것 같습니다. 확인부탁드립니다.
-
미해결"AI 딸깍의 시대" 원리로 돌파하는 Node.js와 CS Part1 - V8과 코어 해체기
용어 발음법이 계속 바뀌는 것 같은데 이런 부분들 개선이 가능할까요...?
안녕하세요. 강의 잘 듣고 있습니다. libuv 발음이 '립유브이' '엘아이비유브이' '리버브' 등 발음법이 계속 바뀌네요. 다른 질문에서 답변으로 AI로 만든 강의 아니다라고 하셨고 직접 녹음한거라고 하셨는데 직접 하신거라면 조금 아쉬운 것 같습니다. 강의 내용도 흥미롭고 좋은 주제를 다루는 것 같아서 배울게 많아 정말 좋은데 이런 부분들이 조금 강의의 퀄리티를 떨어뜨리는 것 같아서 보완해주시면 좋을 것 같습니다. 강의는 정말 잘 듣고 있는 만큼 보완되었으면 하는 마음에 조심스레 글 남깁니다.
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
존재하지 않는 일기 url입력 시 alert이 두 번 떠요
안녕하세요아래와 같이 코드를 작성하고 실행했는데 존재하지 않는 id 로 이동 (예: /edit/111)하면 alert이 한번 뜨게되고 [확인]을누르면url 은 홈으로 이동되고 동일한 alert이 또 한번 더 뜨게됩니다. import Header from '../components/Header'; import Editor from '../components/Editor'; import Button from '../components/Button'; import { useParams, useNavigate } from 'react-router-dom'; import { useContext, useEffect, useState } from 'react'; import { DiaryStateContext, DiaryDispatchContext } from '../App'; const Edit = () => { const params = useParams(); const nav = useNavigate(); const { onDelete, onUpdate } = useContext(DiaryDispatchContext); const data = useContext(DiaryStateContext); const [curDiaryItem, setCurDiaryItem] = useState(); /* const getCurrentDiaryItem = () => { const currentDiaryItem = data.find((item) => String(item.id) === String(params.id)); if(!currentDiaryItem){ window.alert("존재하지 않는 일기입니다."); // 마운트 되기 전에 동작하기 때문에 제대로 동작을 안함. nav("/", { replace: true }); } return currentDiaryItem; } */ // 따라서 useEffect로 설정해줘야함 useEffect(()=>{ const currentDiaryItem = data.find((item) => String(item.id) === String(params.id)); if(!currentDiaryItem){ window.alert("존재하지 않는 일기입니다."); nav("/", { replace: true }); } setCurDiaryItem(currentDiaryItem); }, [params.id]) const onSubmit = (input) => { onUpdate(params.id, input.createdDate.getTime(), input.emotionId, input.content); nav("/", { replace: true }); }; const onClickDelete = () =>{ if(window.confirm("일기를 삭제할까요? 다시 복구되지 않아요!")){ onDelete(params.id); // 이벤트 함수 안에 있기 때문에 마운트 이후 수행됨. nav("/", { replace: true }); } } return ( <div> <Header title={"일기 수정하기"} leftChild={<Button text={"< 뒤로가기"} onClick={() => nav(-1)} />} rightChild={<Button text={"삭제하기"} type={"NEGATIVE"} onClick={onClickDelete}/>} /> <Editor initData={curDiaryItem} onSubmit={(input) => { onSubmit(input); }} /> </div> ) } export default Edit;
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
교재(3쇄)와 강의 내용 문의
안녕하세요.2025년 1월 발행된 3쇄 교재를 갖고 있는데, 현재 강의내용과 좀 다른 부분들이 있더라고요.마지막 감정 일기장 프로젝트도 코드가 교재와 강의가 바뀐 부분이 있던데, 이 경우 강의 내용을 기준 삼아 학습하는 것이 좋을까요?