묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
Sep 에서 sep이 안나옵니다
커뮤니티에 나와있는 sep 관련 해결 방안은 다 찾아보고 확인해봤지만 링크 하나 주시고 해결하라는 말밖에 없으시더라구요 직접적인 해결 방안을 알려주시길 바랍니다. 초보자 강의인만큼 어떤 이유에서 오류가 발생했고 정확한 해결방안도 말씀 부탁드리겠습니다.
-
해결됨그림으로 쉽게 배우는 운영체제
컨텍스트 스위칭 질문입니다.
안녕하세요. 임베디드 리눅스 환경에서 C언어로 , 주로 네트워크 통신 프로그램 개발하고 있습니다. 개발하는 응용프로그램에서 내부적으로 8개의 스레드가 돌고 있습니다. 1. 스레드간 컨텍스트 스위칭에서도 강의에서 말씀하신 MLFQ 기법이 적용이 되는지요? 2. 컨텍스트 스위칭이 발생하는 지점을 어느정도 예측이 가능한지요? 코드상으로요 Ex ) write(), sleep() 함수를 만났을때... 3. 컨텍스트 스위칭하는데 걸리는 시간(오버헤드) 계산이 가능한가요? sleep(1ms) 주기로 복수의 스레드를 돌렸을 때 스레드의 반복주기를 printf로 찍으면 통상 2ms 간격으로 나옵니다. 그럼 컨텍스트 스위칭 시작부터 완료되기까지 시간이 1ms 걸린다는 건지... 4. 8개 스레드의 우선순위(가중치)를 사용자 임의로 조작하는 방법이 있을까요? 5. 스레드도 프로세스와 마찬가지로 PCB로 관리가 되는지요? 6. 메모리 영역 할당할 때 스택과 힙 영역의 크기는 어떻게 결정이 되는지요? 컴파일 단계에서 어느정도 예측이 가능하니 이에 따라 결정이 되는지요? 그리고 힙은 malloc 함수의 리턴값으로 오버플로를 알수 있는데 스택의 경우에는 오버플로 되면 어떻게 조치되나요?
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
뒤집은 소수 테케 2,3,4,5 문제 런타임
안녕하세요 선생님 코딩초보 강의 잘 듣고 있습니다 뒤집은 소수 테케에 문제가 있어서 글 올립니다. 2,3,4,5번 테케만 " "이 테케 맨 뒷부분에 추가되어 있어서 reverse 후 parseint를 할 경우에 numberFormatException이 나오게 되네요.수정해주신다면 다른 수강생들 중 저와 같은 문제를 겪지 않을 것 같아서 글 올립니다 항상 감사합니다 선생님 ^^
-
미해결홍정모의 따라하며 배우는 C언어
19분 14초에서 double, float
123.456 같은 실수가 있다면 float, double중 어느 자료형을 사용할지 어떻게 구분하나요?
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
디버깅시
안녕하세요 시간 21:25 디버깅시 저는 자동칸에 들어가도 이름이 total , winPErcentage, wins가 자동으로 안뜨더라구요. 세팅을 어떻게 해주어야 자동으로 변수들이 입력된 것을 볼 수 있는지 알 수 있을까요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
API
API가 무엇을 의미하는건가요
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
Part1 내용
Part1 을 전부 수강했는데 그중 리플렉션 이나 다른내용이 이해가 잘안가는부분이있었는데 완전히 이해할때까지 공부하고 Part2로 넘어가는게 좋을까요 아니면 하면서 부족하다 싶을때 다시와서 공부하는 방법이 좋을까요..?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
DispatcherServlet 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 미리 비슷한 내용의 질문이 있어서 거의 맥락이 비슷한 내용이지만, 한번만 더 질문하겠습니다. 죄송합니다. 이번에 구현한 것은 세부적인 Controller들이고, Front-Controller의 역할인 DispatcherServlet은 구현하지 않았는데요, 그래도 되는 이유가 DispatcherServlet은 spring 프레임워크 내부에 이미 다 구현이 되어있다는 것을 답변으로 확인하였습니다. 그렇다면 요청이 왔을 때, 핸들러 매핑을 이용하여 컨트롤러를 찾는 과정부터 ~ 뷰를 통해 렌더링 하는 과정까지에 대한 DispatcherServlet이 이미 스프링 내부에 구현되어 있으며, 또한 Controller러가 ModelAndView를 리턴하는 형식이 아니라 뷰의 논리적 이름을 리턴하더라도 이를 알아서 ModelAndView로 변환해주도록 어댑터들이 다 구현되어 있는지 궁금합니다. 또한 그래서 실제 실무에서는 DispatcherServlet을 따로 구현하지 않고, 세부적인 Controller들만 구현하는 것인지 궁금합니다. 항상 좋은 강의 및 답변 감사합니다 👍
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
jsp를 쓰는 이유가 궁금합니다.
MVC모델을 사용하면서 view 와 controller의 기능을 명확히 나누어 jsp는 view의 기능을 담당하게 하는거같은데 그렇다면 html 을 쓰지않는 이유는 무엇인가요??
-
미해결웹 게임을 만들며 배우는 React
안녕하세요 코드 질문이요
tictacto 컴포넌트 const reducer = (state, action) => { switch (action.type) { case CLICK_CELL: { const tableData = [...state.tableData]; tableData[action.rowIndex] = [...tableData[action.rowIndex]]; tableData[action.rowIndex][action.cellIndex] = state.turn; return { ...state, tableData, }; } case CHANGE_TURN: { return { ...state, turn: state.turn === "O" ? "X" : "O", }; } case CHECK_WINNER: { const { tableData, turn } = state; if ( tableData[action.row][0] === turn && tableData[action.row][1] === turn && tableData[action.row][2] === turn ) { return { ...state, winner: turn }; } if ( tableData[0][action.cell] === turn && tableData[1][action.cell] === turn && tableData[2][action.cell] === turn ) { return { ...state, winner: turn }; } if ( tableData[0][0] === turn && tableData[1][1] === turn && tableData[2][0] === turn ) { return { ...state, winner: turn }; } if ( tableData[0][2] === turn && tableData[1][1] === turn && tableData[2][0] === turn ) { return { ...state, winner: turn }; } } } }; td 컴포넌트 에서는 dispatch({ type: CHECK_WINNER, row: rowIndex, cell: cellIndex }); 이런식으로 주고 승자 판단을 해봤는데요. 이렇게 해도 크게 문제가 없는건가요?
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
질문있습니다
기본적으로 전달할 데이터가 별로 없을시 간단하게 파라미터로 service 계층으로 전달하여 처리하고 만약 전달할 데이터들이 많으면 service계층에서 쓰이는 DTO를 만들어 전달해줘서 처리하는걸로 이해했습니다. 이후에 공부하다가 궁금한점이 생겼습니다. 강의에서는 등록Form(MemberForm) 1개만 만들어 주었지만 보통 김영한님이 말씀하신것처럼 수정에서 쓰이는 수정Form도 따로 만들어준다고했습니다 (전달할 데이터가 다르므로) 그럼 궁금한점이 DTO에 전달할 데이터가 많은경우 이 DTO 자체를 service계층으로 전달해야하는데 제가 생각한 방법은 등록Form과 수정Form이 타입이 서로 다른 클래스이기 때문에 2개의 메서드를 만드는 방법이 생각나는데 이게 맞는건지 궁금합니다 예시) @Transactionalpublic Long join(Member등록Form memberForm) { validateDuplicateMember(memberForm); // Member 엔티티로 변환 로직 추가 memberRepository.save(member); return member.getId();} @Transactionalpublic Long join(Member수정Form memberForm) { validateDuplicateMember(memberForm); // Member 엔티티로 변환 로직 추가 memberRepository.save(member); return member.getId();}
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
타입 오류시 Controller 실행 안되는 것 관련 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 안녕하세요. 강의 정말 잘 듣고있습니다. 강의 내용 중 질문이 있습니다. 타입 오류시 Controller가 실행되지 않는다고 하셨는데 이유를 다음처럼 생각했는데 맞나요? 핸들러 어댑터에서 Argument Resolver 를 통해 @ModelAttribute Item item 처리를 하여 객체를 만들어 반환해주는데 객체를 만들고 채워넣는 과정에서 예외 발생으로 핸들러(컨트롤러) 자체가 실행이 안되는 건가요? 핸들러 실행하기 전에 파라미터 처리를 하고 파라미터를 이용해서 핸들러를 호출해 주는거니까요.
-
미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
LED_ip의 reset_n 사용방법
실습에 보면 ZYNQ processing system에 FCLK_RESET0_N pin을 LED_ip의 reset_n 에 연결 하였는데요. 요 reset_n pin은 외부 pin에 연결 된 것이 아니라서, 시스템 내에서 시그날을 줘야 할꺼 같은데..어떻게 사용할 수 있을 까요?
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
설치과정대로 설치했는데 Connection refused error가 계속 뜹니다 ㅜㅜ
이런식으로 오류가 뜹니다 ㅜㅜ 그리고 20.04는 되는데 연결이 안되어있는거같아요. explorer.exe 할때 맨 처음에는 wsl~로 들어가는 자료창이 떻는데 이후부터는 계속 무관한 최근사용했던 다운로드 파일창이 뜹니다 어떻게 해결해야할까요.. ㅜㅜ
-
미해결딥러닝 CNN 완벽 가이드 - TFKeras 버전
1 x 1 convoultion 관련하여 질문 드립니다
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 항상 수강자의 눈높이에 맞추어 좋은 강의 해주셔서 감사드립니다! 인셉션의 1 by 1 컨볼루션 강의 수강중에 궁금한점이 있어 질문드립니다. 인터넷에서는 1 by 1 컨볼루션이 fully connected layer와 같은 역할을 한다고 하던데 아래 사진처럼 이런식으로 연산이 이루어지는게 맞나요? 그럼 weight matrix가 총 2번 곱해진후 relu를 통해 1개의 값으로 요약된다는걸로 이해하면 되는걸까요?
-
미해결Klaytn 클레이튼 블록체인 어플리케이션 만들기 - NFT
truffle migrate --compile-all --reset --network klaytn 오류
안녕하세요, 수업을 잘 만들어 주셔서 어려운 블록체인 생태계를 조금씩 이해해 나가고 있습니다. 이전 수업은 에러가 나오면 커뮤니티나 구글에서 잘 찾아서 해결하면서 진행했습니다. 가나슈에 배포할때는 문제가 없었는데 클레이튼에 배포하는 부분에서 진행이 안됩니다. 아래에서 멈춰서 진행이 안되는데 혹시 선생님이나 아시는분은 답변해주시면 매우 몹시 감사하겠습니다 ^^ (바오밥 계정 생성 및 토큰수령 그리고 코드에 privatekey 입력완료) 크립토 유튜브 썸네일 Frontend (토큰) - 토큰발행 (중복 체크) 실행 중 발생
-
미해결PWA 시작하기 - 웹 기술로 앱을 만들자
깃헙 권한요청 드립니다.
인프런 아이디 : dhjung994@ncsoft.com 인프런 이메일 : dhjung994@ncsoft.com 깃헙 아이디 : everleasting@naver.com 깃헙 Username : dhjung994
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
TypeError: Cannot read properties of undefined (reading 'dispatch')
질문 없이 알아서 찾고싶은데 생각처럼 진짜 안되네요... 현재 강의 6분30초에서 멈춰있습니다. 에러에 dispatch 가 안된다 하여 또 보니 store 가 undefined 라고 뜹니다. 밑에 저와 똑같은 에러가 발생한 분은 오타셨고 저도 열씸히 오타인지 찾아봤지만 제대로 작성한것 같습니다 configureStore 도 잘 import 했는데 뭐가 문제일까요 서버도 다 재시작해봤는데 안돼용 // index.js import React, { useEffect } from "react"; import { useDispatch, useSelector } from "react-redux"; import AppLayout from "../components/AppLayout"; import PostForm from "../components/PostForm"; import PostCard from "../components/PostCard"; import { LOAD_POSTS_REQUEST } from "../reducers/post"; import { LOAD_USER_REQUEST } from "../reducers/user"; import wrapper from "../store/configureStore"; const Home = () => { const dispatch = useDispatch(); const { me } = useSelector((state) => state.user); const { mainPosts, hasMorePosts, loadPostsLoading, retweetError } = useSelector((state) => state.post); // 자신의 게시글을 리트윗하려 할 때 useEffect(() => { if(retweetError) { alert(retweetError); } }, [retweetError]); useEffect(() => { // 현재 어느 스크롤 위치에 있는지 판단 function onScroll() { if ( window.scrollY + document.documentElement.clientHeight > document.documentElement.scrollHeight - 300 ) { if (hasMorePosts && !loadPostsLoading) { // 로딩이 되고 있을 동안 loadPostsLoading 은 true 이므로 해당 코드 실행되지 x // 로딩이 끝나고 나서 loadPostsLoading 가 false 가 되면 그때 실행 const lastId = mainPosts[mainPosts.length - 1]?.id // 마지막 게시글 id // && 대신 optional chaining 활용 // => 게시물이 하나도 없을 경우 undefined.id 에러가 발생할 수 있으므로 ?. 로 방지 dispatch({ type: LOAD_POSTS_REQUEST, // 스크롤 다 내리면 다음 더미데이터 로딩해라 lastId, // 마지막 게시글 id }) } } } window.addEventListener("scroll", onScroll); return () => { window.removeEventListener("scroll", onScroll); }; }, [hasMorePosts, loadPostsLoading, mainPosts]); return ( <AppLayout> {me && <PostForm />} {/* 로그인이 된 상태에서만 포스트를 작성할 수 있음 */} {mainPosts.map((post) => ( <PostCard key={post.id} post={post} /> ))} </AppLayout> ); }; export const getServerSideProps = wrapper.getServerSideProps((context) => { context.store.dispatch({ type: LOAD_USER_REQUEST, }); context.store.dispatch({ type: LOAD_POSTS_REQUEST, }); // console.log(context); }); export default Home; // configureStore.js import { createWrapper } from "next-redux-wrapper"; import { applyMiddleware, compose, createStore } from "redux"; import { composeWithDevTools } from 'redux-devtools-extension'; import createSagaMiddleware from 'redux-saga'; import reducer from "../reducers"; import rootSaga from '../sagas'; const loggerMiddleware = ({ dispatch, getState }) => (next) => (action) => { console.log(action) // action 을 실행하기 전에 console.log() 를 한번 실행해주는 미들웨어 return next(action); } const configureStore = () => { const sagaMiddleware = createSagaMiddleware() // const middlewares = [sagaMiddleware]; const middlewares = [sagaMiddleware, loggerMiddleware]; // enhancer: 리덕스의 기능이 확장된 것 const enhancer = process.env.NODE_ENV === 'production' ? compose(applyMiddleware(...middlewares)) // 배포용 : composeWithDevTools(applyMiddleware(...middlewares)) // 개발용 const store = createStore(reducer, enhancer); store.sagaTask = sagaMiddleware.run(rootSaga); return store; // state , reducer 를 포함한 것 }; // next-redux-wrapper 로 만듦 const wrapper = createWrapper(configureStore, { debug: process.env.NODE_ENV === "development", }); export default wrapper;
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
v3, v4 컨트롤러부터 작동하지않습니다
안녕하세요? 강의 잘 듣고 있습니다. 실습 진행중 v2까지는 문제가 없다가 v3부터 해결되지않는 문제에 봉착해서 하루정도 씨름하다가 문의남깁니다. v3부터 회원가입, 회원목록 링크를 클릭하면 정상적인 URL로 이동함에도 불구하고 404에러(강의 내용 중 controller가 null이면 띄워주기로한 페이지)가 발생하여 코드 곳곳에 uri를 sout으로 찍어보았고 문제가 생기는 원인은 대략 파악하였습니다. 하지만 거기서 문제를 해결하는데 실패하여 조언을 구하고싶습니다. 1. ControllerMap의 key에 viewPath가 Param으로 전달되어 controller == null 이 됨. 2. requestURI 요청이 어디서 잘못되었는지 파악하기 위해 코드 곳곳에 sout으로 찍어본 결과, 링크를 클릭한 뒤 requestURI값이 한번은 정상 URI, 두번째는 viewPath가 포함된 URI (/front-controller/v3/members/WEB-INF/views/new-form.jsp)가 출력되었습니다. 이 과정에서 controller는 null이 되어 오류페이지를 반환하였는데 반해 프론트컨트롤러의 service메소드의 끝단에서 requestURI와 controller를 찍어본 결과 정상적으로 값이 할당되었습니다. 이 과정에서 처음엔 실습 과정에서 코드를 잘못 작성해 처음에 정상 requestURI가 할당되었지만 view로 forward된 request가 viewPath를 포함해서 requestURI가 재할당되어 controller를 불러올때 문제가 생기는 것으로 추측했지만 코드는 예제와 동일하였고 이곳저곳 살펴보다 더이상 알기 힘들어 이렇게 질문남깁니다. 혹시 몰라 build, out폴더도 지워보고 캐시도 삭제해보았는데 크게 달라지는 것은 없었습니다. 자꾸 이상한 질문들을 올려 죄송합니다 ㅠㅠ
-
미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
[DBMS/ORM] 1:1 관계를 강제하는 주체
안녕하세요. 20세기 '선사시대'부터 프로그래밍을 한 사람입니다. 경력 단절이 있어서 늦은 때에 DBMS를 다시 보고 있고, 21세기 초반까지 없었던(제 기억에) ORM이라는 신세계를 경험하고 있습니다. MySQL 자체에서는 1:1 관계를 강제하는 방법은 두 테이블 중 FK를 가진 테이블에서, FK에 UNIQUE 제약을 거는 것으로 생각됩니다. 어디 문헌을 참조한 것이 아니라 제가 테스트를 해 본 결과 그렇다는 것입니다. Sequelize 모델 정의시 양 테이블에 각각 hasOne(), belongsTo()를 적어 1:1 관계를 정의하고 실행시켜 MySQL에 생성된 테이블을 조사해 보았는데 거기에는 FK에 UNIQUE 제약이 걸려 있지 않은 것을 확인했습니다. 이런 시험을 통해 저는, '1:1 관계를 강제하는 주체는 DBMS 가 아니라 ORM(Sequelize)이다'라는 결론을 내렸습니다. 저의 이러한 추론이 옳은 지, 특히 뭔가 오해하고 있는 부분이 있지는 않은지에 대해, Zeorcho님의 평가를 요청드립니다. 감사합니다.