묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
동시 요청에 관한 질문 드립니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]안녕하세요! 멀티 스레드 관련된 내용으로 강의를 듣다가 궁금한 점이 있어서 댓글 달아봅니다. 혹시 멀티 쓰레드에서의 동시 요청과 다수의 서버로 운영되는 어플리케이션에서의 동시 요청은 같은 맥락일까요?? 멀티 쓰레드의 동시 요청에서 공유 변수를 사용할 때 주의하는 것과 동기화 시키는 내용이 다수의 서버로 운여되는 어플리케이션에서도 동일한 내용인지 명확하게 구분이 안되어 여쭤봅니다. 감사합니다!
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
AcceptEvent를 하나만 사용할때 세션관리
안녕하세요 제가 궁금한 게 있어서 질문드립니다.위 사진과 같은 상황이 발생하면 AccetEvent를 하나만 사용하기 때문에 애써 힘들게 구한 세션이 Register 할 때 초기화 돼버리지 않나요 ㅠㅠ? Register를 하기 전에 따로 세션을 저장해야 하는 거 아닌가요? 혹시라도 다음 강의에서 다르는 주제라면 죄송합니다.
-
미해결Slack 클론 코딩[실시간 채팅 with React]
socket.io 버전 업그레이드 연결 오류가 납니다.
안녕하세요 제로초님.제가 socket.io 이벤트 연결하기 강의를 보다가 해당 에러가 발생하게 되어 질문 드립니다. 버전은 이렇게 되고// 프론트 버전 "socket.io-client": "^4.5.2", // 백엔드 버전 "socket.io": "^4.5.2" 프론트 useSocket 의 소스는이렇게 되어 있고 백엔드 소스는이렇게 되어 있습니다. 연결시해당 에러가 발생합니다.혹시 이유를 알 수 있을까요??
-
미해결코딩테스트 실전 모의고사(with C++) : 대기업 대비
1-5 효율적인 공부 dy를 시간(N)으로 하는 풀이 질문
안녕하세요. 결론부터 말하자면 1-5문제 오답인데요선생님께서 푸신 풀이와는 좀 다른 방식으로 풀었습니다.저는 구간이 아니라 쌩으로 전체 시간 (N)을 dy로 놓고 풀었습니다. = (time_)=> dy는 해당 시간까지의 최대효율값을 넣고있습니다. [1] 일들을 끝나는 시간으로 정렬해서 그 순서대로 진행하는건 동일하구요.[2] dy 배열에서 해당 일의 시작 시간 - R (쉬는시간) 부터 0번째 시간까지 한 일 중에 가장 큰 값에다 해당 일의 효율을 더하는 식으로 진행했습니다.#include <iostream> #include <vector> #include <algorithm> using namespace std; int time_[1000001]; //dy*** struct my{ int a,b,c; my(int a, int b, int c){ this->a=a; //시작 시간 this->b=b; //끝나는 시간 this->c=c; //효율 } bool operator<(const my& other)const{ return b<other.b; } }; int main() { int max_=0; int N,M,R; //총 시간, 일 개수, 휴식시간 vector<my> arr; ... //DP sort(arr.begin(), arr.end()); for(int i=0; i< arr.size(); i++){ //일의 갯수 int val; if(arr[i].a - R >=1){ //time의 1번째부터 arr[i].a - R번째까지 수 중에... //가장 큰 값을 찾아서 더하여 넣음 int maxtmp=0; for(int j=0; j<=arr[i].a-R; j++){ if(maxtmp < time_[j]) maxtmp = time_[j]; } val = maxtmp + arr[i].c; } else{ val = arr[i].c; } //할 수 있는 일이 없으므로 //다음 일정이 끝나기 전 까지 같은 값 넣기 int j = arr[i].b; time_[j]=val; while( i+1!=arr.size() && j<arr[i+1].b){ time_[j]=val; j++; } //최대값 찾기 if(val > max_) max_ = val; } cout<<max_; return 0; } 이렇게 풀다가 오답이 나왔습니다. 결과는 케이스 1만 오답이고 나머지 2345는 정답인데정답은 83인데 제 코드는 81이 나옵니다큰 입력에 대해서는 정답인게 케이스 1에 뭔가 반례가 있어서 틀린 것 같은데 모르겠습니다...이전 단계 강의에서 늘상 하던 방식으로 걸리는 시간을 배열로 놓은거라 방법 자체는 맞는 것 같은데 이유를 모르겠습니다. 도와주세요
-
미해결[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
8장 startTime=new Date()의 라인 위치에 따라 값이 달라집니다
강의를 듣다가 이해되지 않는 부분이 생겨 질문드립니다.$screen.addEventListener('click', (event) => { if (event.target.classList.contains('waiting')) { event.target.classList.replace('waiting','ready'); event.target.textContent='초록색이 나오면 클릭하세요'; setTimeout(function(){ event.target.classList.replace('ready','now'); evnet.target.textContent='클릭하세요!'; startTime=new Date(); //startTime===undefined },Math.floor(Math.random()*1000)+2000); } else if (event.target.classList.contains('ready')) { alert('너무 빨리 클릭했습니다.'); event.target.classList.replace('ready','waiting'); event.target.textContent='클릭해서 시작하세요'; } else if (event.target.classList.contains('now')) { //끝 시간 재기 endTime=new Date(); $result.textContent=`${startTime} ms`; event.target.classList.replace('now','waiting'); event.target.textContent='클릭해서 시작하세요'; } });제가 작성한 반응속도 게임 만들기의 addEventListener부분입니다. 해당 코드의 변수 startTime에 Date가 할당되는 시기가 이벤트타겟의 값이 now로 변경되는 시기보다 뒤에 오게되면 undefined가 할당됩니다. 아래의 코드는 startTime의 값이 undefined가 아닌 제대로 된 날짜가 저장되도록 수정한 코드입니다.위 코드의 startTime 이 undefined가 되는 이유를 알려주세요.setTimeout(function(){ startTime=new Date(); //startTime===`Thu Oct 13 2022 18:13:10 GMT+0900 (한국 표준시)` event.target.classList.replace('ready','now'); evnet.target.textContent='클릭하세요!'; },Math.floor(Math.random()*1000)+2000);
-
미해결
failover에 대한 문의
spring cloud gateway + eureka + service application 2대로 구성해서 테스트 중인데, service application중 한대를 일부러 종료시키면 500 Server Error for HTTP GET ~~ java.net.UnknownHostException 오류가 발생합니다.gateway에 resilience4j를 추가해서 failover를 해야 하는걸까요? 아니면 기본 spring cloud gateway설정으로 eureka에 등록된 application이 다운됐을 경우에 대한 failover처리가 가능한가요?
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
강의록 문의드립니다
깃헙에 올려주신 강의록 관련 문의드립니다.제가 눈이 좋지 않아 인쇄해서 보는 것을 선호하는데 깃헙에 공유해주신 PDF파일들은 인쇄가 불가능하게 지정된것 같습니다. 인쇄를 할수 있는 버전으로 공유가 가능할지 확인 부탁드립니다.감사합니다.
-
해결됨프론트엔드 개발자를 위한, 실전 웹 성능 최적화(feat. React) - Part. 2
woff2 포멧 IE에서 사용가능 여부
안녕하세요 선생님.이번에 폰트 포멧에 대해서 공부를 해봤는데, woff2 가 인터넷 익스플로러에서 사용불가하다고 알고 있었는데 사용이 가능한가요?!https://caniuse.com/?search=woff2
-
해결됨[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)
recyclerview 오류
안녕하세요! 저는 현재 리사이클러 뷰 제작을 하고 있습니다.강의와 같이 따라 했는데도 불구하고 꿀팁에서 All을 클릭하면 자꾸 앱이 종료되더라구요.따로 오류 메세지도 안뜹니다.. 이유가 뭘까요?수업에서 제작한 ContentRVAdapter, ContentListActivity, TipFragment 캡쳐본 첨부합니다.도와주세요ㅠㅠ
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
쿠키 사용
로그인 : 테스터 화면에 안가고 로그인 화면에만 가는데 쿠키도 잘넘어오는데 왜그런걸까요?쿠키는 화면에 찍히는데 if (memberId == null) { return "home"; } 여기서 memberId가 null로 됩니다.그리고 강사님은 새로고침 하면 request headers에 쿠키가 있는데 저는 쿠키가 sessionId=0c96..... 로 뜹니다. 왜그런걸까요?
-
미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
현업에서 CNN은 어떻게 구현하나요?
좋은 강의 감사드립니다..수강 중 의문점이 있어 문의드려요.강의 중 [AI HW Lab2] CNN Verilog HDL Practice 1 (Simulation) - 문제설명편 ppt 의 약 9:14초 정도에서 "현업에서는 이러한 CNN_CORE를 사용하지 않아요" 라고 말씀하셨는데 그 뜻이 궁금합니다.veriolg가 아닌 HLS 등을 사용해서 구현한다는 건지 ? 아님 다른 가속용 IP core를 사와서 구현한다는 뜻인지? 아닌 다른 뜻이 있는지 알고 싶습니다.그 외에 현업에서 실제로 어떠한 방식으로 딥러닝 IP를 구현하는지 간단하게 설명 부탁드려도 될까요?
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
JPQL 문법 RollBack
JPQL 작성 시, 전체 조회하면 이상이 없는데 특정 칼럼을 지정하면 RollBack에러가 발생합니다. 어떤 문제인지 알고 싶습니다..
-
미해결Three.js로 시작하는 3D 인터랙티브 웹
Next.js로 dat.gui 사용하기
- 질문에 대한 답변은 강의자가 하는 경우도 있고, 수강생 여러분들이 해주시는 경우도 있습니다. 같이 도와가며 공부해요! :)- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!- 먼저 유사한 질문이 있었는지 검색해보세요.- 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.현재 Next.js로 threeJs 강의 수강 중에 있습니다. npm에 react-three 라이브러리가 있지만 사용하지 않고 강의 내용 그대로 코딩하고 있는데요, Next.js에서 dat.gui를 import 하면 window is not found 에러가 발생합니다. 해결 방법이 있을까요??
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
값이 다르게 나오는 이유가 뭘까요??
(사진)
-
미해결[2026년 출제기준] 웹디자인개발기능사 실기시험 완벽 가이드
네이게이션이 안보여요 쌤 ㅠㅠㅠ
<!DOCTYPE html> <html lang="ko"> <head> <meta charset="UTF-8"> <title>JUST쇼핑몰</title> <link rel="stylesheet" href="css/style.css"> </head> <body> <div class="star"> <!-- header --> <div class="header"> <div class="header-logo"> <a href="#none"><img src="images/logo-header.png" alt="헤더로고"></a> </div> <div class="navi"> <div></div> </div> </div> <!-- slide --> <div class="slide"> <div> <a href="#none"><img src="images/slide-01.jpg" alt="슬라이드01"></a> <a href="#none"><img src="images/slide-02.jpg" alt="슬라이드02"></a> <a href="#none"><img src="images/slide-03.jpg" alt="슬라이드03"></a> </div> </div> <!-- items --> <div class="items"> <div class="tab"> <div> </div> </div> <div class="banner"> <a href="#none"><img src="images/banner-01.jpg" alt="배너01"></a> </div> <div class="now"> <a href="#none"><img src="images/banner-02.jpg" alt="배너02"></a> </div> </div> <!-- footer --> <div class="footer"> <div class="footer-logo"> <a href="#none"><img src="images/logo-footer.png" alt="푸터로고"></a> </div> <div class="copy"> <p> 상호 : 엣지컴퍼니 | 대표자 : 홍길동 | 개인정보관리책임자 : 장길산 차장<br> 사업장주소 : 서울특별시 강남구 테헤란로 123-56 </p> </div> <div class="sns"> <a href="#none"><img src="images/sns-01.png" alt="sns01"></a> <a href="#none"><img src="images/sns-02.png" alt="sns02"></a> <a href="#none"><img src="images/sns-03.png" alt="sns03"></a> </div> </div> </div> <script src="script/jquery-1.12.4.js"></script> <script src="script/custom.js"></script> </body> </html> @charset "UTF-8"; .star{ width: 1200px; margin: auto; } .star div{} /* header */ .header{height: 100px;} .header > div{} .header-logo{ width: 200px; float: left; padding-top: 30px; } .navi{} .navi div{ width: 600px; float: right; background-color: black; } /* slide */ .slide{ position: relative; width: 1200px; height: 300px; } .slide div{ font-size: 0; } .slide div a{ animation: slide 10s linear infinite; position: absolute; top: 0; left: 0; } .slide div a:nth-child(1) { animation-delay: 0s; } .slide div a:nth-child(2) { animation-delay: 3.5s; } .slide div a:nth-child(3) { animation-delay: 7s; } @keyframes slide { 0% {opacity: 0;} 5% {opacity: 1;} 35% {opacity: 1;} 40% {opacity: 0;} 100% {opacity: 0;} } /* items */ .items{overflow: hidden;} .items div{ height: 200px; float: left; box-sizing: border-box; } .tab{} .tab > div{ width: 500px; background-color: aqua; } .banner{ width: 350px; } .now{ width: 350px; } /* footer */ .footer{overflow: hidden;} .footer div{ height: 100px; float: left; box-sizing: border-box; } .footer-logo{ width: 200px; padding-top: 30px; } .copy{ width: 800px; text-align: center; padding-top: 7px; } .sns{ width: 200px; padding: 20px; } 왜죠
-
미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
플러터 레포지토리 컴파일 에러
안녕하세요.Github에 공유해 주신 소스를 컴파일 하고 싶습니다.아래 그림과 같은 에러가 다수 존재합니다.환경이나 코드에 대한 수정사항을 알려주시면 감사하겠습니다.
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
SSR의 state초기화관련 질문입니다.
안녕하세요 제로초님 강의들으면서 해당 개념을 개인 프로젝트에서 구현하고 있는데 궁금한점이 있어서 질문드립니다.메인페이지, 프로필페이지에서 게시글을 삭제하면 알람을 띄우고있습니다.근데 메인페이지에서 게시글을 삭제한 뒤 프로필 페이지로 이동하면 알람이 또 뜨더라고요. (반대도 마찬가지입니다.)제 예상으로는 SSR을 적용하면 페이지 이동시에 state가 초기화되어서 위 문제가 발생하지 않는다고 예상했는데 어떤 문제인지 제 생각과는 다르게 동작하더라고요.혹시 어떤 부분이 문제가 있는지 피드백좀 부탁드려도될까요?// index.js import React, { useCallback, useEffect } from 'react'; import { useDispatch, useSelector } from 'react-redux'; import { Button, message } from 'antd'; import { PlusCircleOutlined } from '@ant-design/icons'; import Router from 'next/router'; import Link from 'next/link'; import wrapper from '../store/configureStore'; import axios from 'axios'; import { END } from 'redux-saga'; import AppLayout from '../components/AppLayout/'; import RecentPostList from '../components/HomePost/RecentPostList'; import HomeFooter from '../components/HomePost/HomeFooter'; import TopPostList from '../components/HomePost/TopPostList'; import { LOAD_RECENT_POSTS_REQUEST, LOAD_TOP_POSTS_REQUEST } from '../reducers/post'; import { LOAD_MY_INFO_REQUEST } from '../reducers/user'; import { HomeWrapper, HomeLogoHeader, HomeLogoText, PageMainText, PageSubText, HomeInputWrapper, TopPostsWrapper, HomePosts, TopPostsIcon, HomePostsText, RecentPostsIcon } from '../pagestyles'; const Home = () => { const dispatch = useDispatch(); const { me, logInDone, logOutDone } = useSelector((state) => state?.user); const { topPosts, recentPosts, hasMorePosts, loadRecentPostsLoading, removePostDone } = useSelector((state) => state.post); useEffect(() => { if (logInDone) { message.success('반갑습니다. 맛있는 식사하세요', 1.5); } }, [logInDone]); useEffect(() => { if (logOutDone) { message.success('정상적으로 로그아웃되었습니다.', 1.5); } }, [logOutDone]); useEffect(() => { if (removePostDone) { message.error('게시글이 삭제되었습니다.', 1.5); } }, [removePostDone]); const onSearch = useCallback((tag) => { Router.push(`/hashtag/${tag}`); }, []); useEffect(() => { function onScroll() { if (window.scrollY + document.documentElement.clientHeight > document.documentElement.scrollHeight - 300) { if (hasMorePosts && !loadRecentPostsLoading) { const lastId = recentPosts[recentPosts.length - 1]?.id; dispatch({ type: LOAD_RECENT_POSTS_REQUEST, lastId, }); } } }; window.addEventListener('scroll', onScroll); return () => { window.removeEventListener('scroll', onScroll); } }, [hasMorePosts, loadRecentPostsLoading, recentPosts]); return ( <AppLayout> <HomeWrapper> <HomeLogoHeader> <HomeLogoText> <PageMainText className='bolder'>Recipe.io</PageMainText> <PageSubText>Have a delicious meal today</PageSubText> </HomeLogoText> {me && <Link href='/posting'><a><Button type='primary' size='large' icon={<PlusCircleOutlined />} >Create Recipe</Button></a></Link>} </HomeLogoHeader> <HomeInputWrapper placeholder="Search for Hashtag" size='large' allowClear="true" enterButton onSearch={onSearch} /> <TopPostsWrapper> <HomePosts> <TopPostsIcon /> <HomePostsText className='bold'>Top Posts</HomePostsText> </HomePosts> <TopPostList topPosts={topPosts} /> </TopPostsWrapper> <div> <HomePosts> <RecentPostsIcon /> <HomePostsText className='bold'>Recent Posts</HomePostsText> </HomePosts> <RecentPostList recentPosts={recentPosts} /> </div> </HomeWrapper> <HomeFooter /> </AppLayout> ) }; export const getServerSideProps = wrapper.getServerSideProps(async (context) => { console.log(`context: ${context}`); const cookie = context.req ? context.req.headers.cookie : ''; axios.defaults.headers.Cookie = ''; if (context.req && cookie) { axios.defaults.headers.Cookie = cookie; } context.store.dispatch({ type: LOAD_MY_INFO_REQUEST, }); context.store.dispatch({ type: LOAD_TOP_POSTS_REQUEST, }); context.store.dispatch({ type: LOAD_RECENT_POSTS_REQUEST, }); context.store.dispatch(END); await context.store.sagaTask.toPromise(); }); export default Home;// profile.js import React, { useEffect } from 'react'; import { useSelector } from 'react-redux'; import { message } from 'antd'; import Head from 'next/head'; import wrapper from '../store/configureStore'; import axios from 'axios'; import { END } from 'redux-saga'; import AppLayout from '../components/AppLayout/'; import MyInfo from '../components/MyPage/MyInfo'; import { LOAD_MY_INFO_REQUEST, LOAD_LIKED_POSTS_REQUEST, LOAD_BOARD_POSTS_REQUEST } from '../reducers/user'; import { MypageWrapper, MypageText, PageMainText, PageSubText } from '../pagestyles'; const profile = () => { const { me } = useSelector((state) => state.user); const { removePostDone } = useSelector((state) => state.post); useEffect(() => { if (!me) { message.error('로그인이 필요한 서비스입니다.', 1.5); Router.push('/'); } }, [me]); useEffect(() => { if (removePostDone) { message.error('게시글이 삭제되었습니다.', 1.5); } }, [removePostDone]); return ( <> <Head> <title>마이페이지 | Recipe.io</title> </Head> <AppLayout> <MypageWrapper> <MypageText> <PageMainText className='bolder'>MY PAGE</PageMainText> <PageSubText>Check out posts and likes through your page</PageSubText> </MypageText> <MyInfo /> </MypageWrapper> </AppLayout> </> ) }; export const getServerSideProps = wrapper.getServerSideProps(async (context) => { console.log(`context: ${context}`); const cookie = context.req ? context.req.headers.cookie : ''; axios.defaults.headers.Cookie = ''; if (context.req && cookie) { axios.defaults.headers.Cookie = cookie; } context.store.dispatch({ type: LOAD_MY_INFO_REQUEST, }); context.store.dispatch({ type: LOAD_LIKED_POSTS_REQUEST, }); context.store.dispatch({ type: LOAD_BOARD_POSTS_REQUEST, }); context.store.dispatch(END); await context.store.sagaTask.toPromise(); }); export default profile;
-
미해결Nuxt.js 시작하기
검색기능능 멀티로 작업하려고 합니다.
안녕하세요.동영상 강의 잘 보고 있는 사람입니다.다름이 아니라Nuxt.js 검색기능 강좌 보고 있는 도중 궁금한 것이 있어 문의드립니다.input 타입 text에서 입력하고 검색하는 것은 어찌 영상 따라하면서 구현은 하였으나..실문에서는 input창 뿐만 아니라 다양한 검색조건이 있지 않습니까?예를 들어 날짜 입력 하거나 라디오, 체크박스, 셀렉트박스에서 검색할 부분 체크 한 다음에 최종 검색 버튼을 누르잖아요.그렇게 여러가지 선택해서 검색하려면 작업을 어떻게 해야할까요?궁급합니다.
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
EC2에 설치한 SONARQUBE 를 이용한 실습 강의 영상은 없나요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.안녕하세요.제가 강의 를 아마존에서 실습하는 강의까지 들었는데요.EC2 에 소나큐브 설치하는 것은 강의가 있어서 따라 했는데 실습 영상중에서는 EC2에 설치한 소나큐브 이용한 강의는 없는것 같아서요.혹시 나중에 업데이트 되는지 궁금합니다.강의 들을때는 소나큐브 컨테이너는 유료써야 된다구 해서 나름 큰맘먹구 따라했는데 실제 실습하는 영상은 없으니까.. 약간 허무해서요.시간되시면 한번 업데이트 부탁드려요.감사합니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-Q 반례 질문입니다.
http://boj.kr/d81e6db2daf5453d8b79a8da26301bb4 테스트케이스와 제가 생각한 다른 예제들도 통과하는데 어떤 테스트가 통과가 안되는지 너무 궁금합니다!