묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결웹 게임을 만들며 배우는 React
비동기로 동작하는 setState에 대해서
안녕하세요 제로초님setState 질문이 있는데요아래 코드에서 1번 코드의 경우 setState함수는 비동기라서 해당 이벤트 함수가 실행된 후 setState함수를 모아서 일괄 처리하기 때문에 +3이 아닌 +1로 렌더링된다 라고 알고 있는데요2번 코드에서는 왜 +3으로 렌더링되는지 이해가 되지 않아서요. setNum((prev) => prev + 1) 처럼 이전 state 값을 받아오는 형태도 아닌데 어떤 원리로 1번 코드와 2번 코드가 서로 다르게 동작하는 것인지 궁금합니다 import React, {useState} from 'react'; export function App(props) { let [num, setNum] = useState(0); const increase1 = () => { // 1번 코드 setNum(num + 1); setNum(num + 1); setNum(num + 1); // 2번 코드 setNum(num = num + 1); setNum(num = num + 1); setNum(num = num + 1); console.log(`${num}번째 1+ 이벤트 발생 ---> num: ${num}`); } console.log(`렌더링 ---> num : ${num}`); return ( <div className='App'> <button type="button" onClick={increase1}>+1</button> <p>{num}</p> </div> ); }
-
해결됨비개발자를 위한 RPA 강의 (UiPath 기본편)
다른 엑셀파일에 저장하고자 하는 경우
안녕하세요!우선, 지난 번 문의에 친절한 설명 감사 드립니다 🙂 엑셀 파일에 저장된 내용을 읽고 데이터테이블로 저장한 후 엑셀로 다시 쓰기 할때,다른 엑셀 파일에 저장하는 방법이 있을까요 ?강의 내용에는 동일한 파일에 시트 하나 더 생성해서 데이터 쓰기를 했습니다만,다른 파일에 저장하는 내용도 알고 싶습니다. 미리 감사 드립니다!
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
querydsl
[질문 내용]안녕하세요 자바 17에 스프링 3이상으로 실습해보고있습니다.처음엔 의존관계 설정을implementation 'com.querydsl:querydsl-jpa:5.0.0:jakarta' annotationProcessor "com.querydsl:querydsl-apt:${dependencyManagement.importedProperties['querydsl.version']}:jakarta" annotationProcessor "jakarta.annotation:jakarta.annotation-api" annotationProcessor "jakarta.persistence:jakarta.persistence-api" 이렇게 해줬는데 clean만 빌드가 되며 compileJava가 빌드가 안되고 그래들에서 의존관계에 빨간불이 뜨며 persistence를 찾을 수 없다는 에러 메세지가 나왔습니다찾아보던 도중 persistence버전을 3.0.1로 높이면 해결이 된다라는 글을 보고 버전을 올려줬습니다. 그 후 빌드를 해줬더니 jakarta로 import해주었던게 다 javax로 바뀌어있더라고요 그래서 일일히 들어가 다시 jakarta로 바꿔주니까 clean과 compileJava 둘 다 정상적으로 빌드되었습니다.하지만 그래들은 저렇게 아직 빨간불이 뜹니다 이대로 진행해도 되는걸까요 ? 왜 persistance 버전을 높이면 javax로 돌아가는건가요 ?
-
해결됨직장인에게 꼭 필요한 파이썬-아래아한글 자동화 레시피
엑셀로 시험지를 만드는 루틴
(수능) 수학시험지를 읽어서 개별문항을 저장하고 시험지를 만드는 섹션을 보았는데요.반대로 엑셀에서 데이터를 받아와서 (문제, 지문, 보기, 해설) 한글 파일에 정의된 스타일로 써넣는 코드를 어디서 부터 시작해야 할까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
[6-J] 질문드립니다.
#include <bits/stdc++.h> using namespace std; #define ll long long ll N, M; vector<ll> attractions; // mid 시간안에 놀이기구를 다 탈 수 있는지 확인하는 함수 bool CanRide(ll mid) { ll cnt = 0; for(int i=0; i<M; i++) { cnt += mid/attractions[i]; } return cnt >= N - M; } // 마지막 아이가 타게되는 놀이기구 index 출력 ll GetIdx(ll mid) { ll cnt = M; for(ll i=0; i<attractions.size(); i++) { cnt += (mid-1) / attractions[i]; } for(ll i=0; i<attractions.size(); i++) { if(mid % attractions[i] == 0) cnt++; if(cnt == N) { return i+1; } } return -1; } int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); cin >> N >> M; for(int i=0; i<M; i++) { ll tmp; cin >> tmp; attractions.push_back(tmp); } ll left = 1, right = 60000000009, mid; if(N < M) { cout << N; return 0; } while(left <= right) { mid = (left + right) / 2; if(CanRide(mid)) { right = mid - 1; } else { left = mid + 1; mid = left; } } cout << GetIdx(mid); return 0; }안녕하세요, 문제가 풀리지 않아 선생님의 풀이를 보고 충실히 따라 구현하여 제출하였는데 78%쯤에서 계속 틀렸다고 나와 질문드립니다.이분탐색 범위도 맞게 설정된거 같고, 자료형도 범위에 맞게 long long으로 잘 사용한거 같은데 어디가 틀렸는지 찾을 수 없어 질문드립니다.
-
미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
ERROR [ExceptionsHandler] this.validate is not a function 무슨 에러일까요 ㅠ
안녕하세요 postman에서 login 요청을 보내려고 할때 터미널에서 ERROR [ExceptionsHandler] this.validate is not a function 라고 오류가 납니다 validate를 함수로 작성해주었는데 이러한 오류가 나서 어떻게 해결해야 할지 고민입니다.
-
해결됨[React 2부] 고급 주제와 훅
[4.4장 메모이제이션 훅] 4.4.2 useMemo 에서 every 함수에 관한 질문입니다.
안녕하세요 선생님 every 배열을 비교하는 방법이 궁금해서 로그를 찍어보았습니다.// export default App; import MyReact from "./lib/MyReact"; import React from "react"; const Board = ({ posts, tag }) => { MyReact.resetCursor(); const [darkTheme, setDarkTheme] = React.useState(false); const filterPosts = () => { console.log("filterPosts"); return posts.filter((post) => (tag ? post.tag === tag : true)); }; const filteredPosts = MyReact.useMemo(filterPosts, [posts, tag]); console.log("Board rendered"); return ( <> <div> <button onClick={() => setDarkTheme(!darkTheme)}>Theme Change</button> <span>{darkTheme ? "dark" : "light"}</span> </div> <FilteredPosts value={filteredPosts}></FilteredPosts> </> ); }; const FilteredPosts = MyReact.memo(({ value }) => { console.log("FilteredPosts rendered") return ( <ul> {value.map(({ id, content, tag }) => { return ( <li key={id}> {content} <span>#{tag}</span> </li> ); })} </ul> ); }); export default () => { const [tag, setTag] = React.useState(""); return ( <> <button onClick={() => setTag("")}>ALL</button> <button onClick={() => setTag("tag1")}>Tag1</button> <button onClick={() => setTag("tag2")}>Tag2</button> <Board posts={[ { id: "id1", content: "content1", tag: "tag1" }, { id: "id2", content: "content2", tag: "tag1" }, { id: "id3", content: "content3", tag: "tag2" }, ]} tag={tag} /> </> ); }; function useMemo(nextCreate, deps) { console.log("deps = ", deps); if (!memorizedStates[cursor]) { const nextValue = nextCreate(); memorizedStates[cursor] = [nextValue, deps]; cursor = cursor + 1; return nextValue; } const nextDeps = deps; const [prevValue, prevDeps] = memorizedStates[cursor]; console.log("prevDeps => ", prevDeps); console.log("nextDeps => ", nextDeps); if ( prevDeps.every((prev, index) => { console.log( "comparing -> ", prev, nextDeps[index], prev === nextDeps[index], index ); return prev === nextDeps[index]; }) ) { console.log("it is same"); cursor = cursor + 1; return prevValue; } console.log("it is not same"); const nextValue = nextCreate(); memorizedStates[cursor] = [nextValue, deps]; cursor = cursor + 1; return nextValue; }여기서 궁금한 점은1번째 빨간 paragraph는 theme change를 눌러서 변경이 없는 경우입니다. comparing => 로그를 확인하면every가 2개를 비교하는데 첫번째는 array(posts)를 비교하고두번째는 tag를 비교하는것을 확인 할 수 있습니다. 2번째 빨간 paragraph는 Tag1 버튼을 누른 경우입니다.이때 저는 첫번째 비교는 true이고 두번째 비교에서 빈문자열 vs tag1이니 여기서 false가 나길 기대했지만 결과는 그렇지 않았고 첫번째 array(posts) 비교에서 false가 나왔습니다. 3번째 빨간 paragraph는 다시 theme change를 눌렀고 이는 정상적으로 array(posts) , tag1 비교를 수행한것을 확인할 수 있습니다. 왜 이런것인가요?
-
미해결스프링 프레임워크는 내 손에 [스프2탄]
spring Legacy Project에서 MVC 프로젝트가 없습니다. 어떻게 해야하나요?
안녕하세요. 24.03.24일 날 스프2탄을 구매하였습니다. 시작부터 문제가 발생되어서 글 남깁니다. 강사님의 영상을 따라 eGovFrame-4.0.0을 다운로드 하였고 1. 프로젝트를 생성하기위해 Spring Legacy Project 클릭 ---문제 발생 ---- 2.Simple Projects만 보이고 MVC프로젝트가 보이질 않습니다. 구글링을 해보고 시도 하였지만 해결되지 못했습니다. 초보의 입장에서 난감해하고 있습니다. 해결방법과 그따른 영상을 업데이트를 해주실수 있을까요?
-
미해결실리콘밸리 엔지니어가 가르치는 파이썬 장고 웹프로그래밍
크롬에서 서드 파티 쿠키 제한이라는 에러가 뜨는데 혹시 추가로 어떤걸 업데이트 해야지 정상작동 되는지 알 수 있을까요?
버튼 클릭 후 먹통이여서 콘솔을 보니 써드 파티 쿠키 제한이라고 나오더라구요. 혹시 이 이유로 정상작동이 안된건지... 알고싶습니다. 그러하다면 어떻게 바꿔야 하는지도 알려주시면 감사하겠습니다~!
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
처음에는 하나만 생기지만 2번째 맵부터 너무 많이 생깁니다.
처음에는 NPC가 한명만 생기지만 2번째 맵부터는 여러명의 NPC 생기는 버그가 있습니다 CloseAllGates() 함수에 for문 안에 찍었는데 여러번 찍히는 것을 확인했습니다. 이유가 뭔지 잘 모르겠습니다
-
미해결
안드로이드 Directory not created
안드로이드에서 파일 디렉터리가 생성이 안되는데 이유 아시는 분 있으신가요?
-
미해결피그마(Figma)를 활용한 UI디자인 입문부터 실전까지 A to Z
디자인 가이드라인 선택
안녕하세요.'UI Component에 대한 개념, 그리고 Figma의 Component 기능을 사용하는 이유' 강의를 듣던 중 궁금증이 생겨 질문 드립니다.에릭님을 포함한 현직자 분들은 아래 디자인 가이드라인 중, 어떤 디자인 가이드라인을 따르시나요?1. Google Material Design2. Human interface GuidelineOS에 따라 참고하는 가이드라인이 달라질 거 같은데, 현직자 분들이 선호하는 디자인 가이드라인이 궁금합니다!
-
미해결[NarP Series] MVC 프레임워크는 내 손에 [나프2탄]
나프2탄 51강 서비스계층 구현하기
선생님이 보여주신 화면에서 서비스 인터페이스를 작성하고 자바 클래스를 작성할 때 impl을 하면 add unimplemented method 부분이 나오는데 제가 작성한 화면에서는 나오지 않습니다 이유가 무엇일까요?
-
미해결CAN 통신 - 자동차 신입이 알아야 할 모든 것
강의자료 문의
안녕하세요. 이번에 강의를 수강한 학생입니다.혹시 강의에 사용된 PPT자료를 별도로 받을 수 있을까요? 감사합니다.
-
해결됨김영한의 실전 자바 - 기본편
강의 시간에 사용하는 메모장에 대한 질문입니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)아니오2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예[질문 내용]안녕하세요. 강의 항상 잘 듣고 있습니다.강의와는 상관없는 질문입니다만 수업시간에 사용하는 메모장? 어플인가요?? 아니면 맥에 기본으로 있는 메모장인걸까요??깔끔해보여서 질문드립니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
DB연결 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 강의대로 h2데이터베이스 잘 들어가지는데 빌드하고 실행하면 조회와 멤버 등록에서 오류가 납니다 [2m2024-03-25T10:58:04.317+09:00[0;39m [31mERROR[0;39m [35m10840[0;39m [2m---[0;39m [2m[demo] [nio-8080-exec-5][0;39m [2m[0;39m[36mo.a.c.c.C.[.[.[/].[dispatcherServlet] [0;39m [2m:[0;39m Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: java.lang.IllegalStateException: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection] with root cause org.h2.jdbc.JdbcSQLInvalidAuthorizationSpecException: Wrong user name or password [28000-224] 오류는 이렇게 납니다. 어떻게 해야 하나요? 강의대로 application.properties도 잘 했고, h2디비 실행도 잘 됩니다. 디비 켜놓고 해도 오류나네요 ㅜㅡ
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
재심사를 받게되면 기존의 통과된 업체에는 따로 재심사를 받을 필요는 없나요??
안녕하세요.좋은 경험담 잘 들었습니다. 강의를 듣다가 궁금한점이 생겼는데,신한카드는 심사가 통과 되었고, 국민카드는 심사를 통과하지 못한경우 일단 신한카드를 이용하고 국민카드는 재심사를 요청하면된다고 말씀하셨습니다. 그런데 재심사를 받는다는건 서비스의 내용을 수정한 후, 재심사를 요청하게 될 텐데 이 경우 서비스에 변경된 부분이 있으니, 심사를 통과했던 카드사에 재심사를 받아야 되거나 하는 경우는 없는건가요??
-
미해결선형대수학개론
CH 4.4. 에서 similar할 때 P 행렬에 대한 질문
안녕하세요. 언제나 좋은 강의 감사드립니다.다름이 아니오라 $ \mathbb{R}^{n} $space에서 $ n \times n $ 행렬 $ A, B $ 가 similar할 경우,즉 $ A = PBP^{-1} $ 관계가 성립할 때 행렬 $ P $ 가 어떤 열벡터로 구성되는지 궁금해서 글남깁니다.질문은 총 2가지이며, 아래와 같습니다. Q1. diagonalization이 가능할 때 P의 열벡터행렬 $ A $ 가 diagonalization이 가능할 경우 행렬 $ P $ 는 linearly dependent한 eigen vector로 구성된 걸로 알고있는데, 그렇다면 eigen vector들은 $ \mathbb{R}^{n} $ 스페이스의 basis 벡터 중 일부인가요? Q2. diagonalization이 가능하지 않을 때 P의 열벡터행렬 $ A $ 가 diagonalization이 가능하지 않을 경우, 행렬 $ P$ 는 $ \mathbb{R}^{n} $ 스페이스의 basis 벡터 중 일부로 구성되어 있나요?아 혹시 $ n \times n $ 행렬 $ P $ 는 similarity transformation 정의상 invertible하기 때문에 그 행렬의 열벡터들은 선형독립이고, $ \mathbb{R}^{n} $ space를 span하기 때문에 당연히 $ \mathbb{R}^{n} $ space의 basis가 되는건가요??
-
미해결김영한의 실전 자바 - 기본편
중급
혹시 hasNextLine() , while(hasNext()) 이런건 다음 중급 강의에서 다뤄주시나요/ 다뤄주신다면 몇강에서 다뤄주시나요?
-
해결됨파이썬으로 나만의 블로그 자동화 프로그램 만들기
예제로 알려주시는 파일 어디서 다운받나요?
예제로 알려주시는 파일 어디서 다운받나요?