묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[켠김에 출시까지] 유니티 방치형 키우기 게임 (M1 + C1)
Stateless서버에서의 유저인스턴스
session방식이 아닌 토큰방식을 쓰는데유저 요청시 정보를 매번 DB에서 긁어와야 할까요? 아니면 Service마다 accountId를 키로해서 각 유저 정보를 저장해놓고 사용하는게 좋을까요?메모리에 일부 정보를 저장해 두었다가 유저 요청시, DB에 접근하지 않고 검증할 수 있는 부분은 메모리 단에서 거르는 방식으로 DB접근 오버헤드를 줄이면 좋을거 같은데유저 정보를 메모리에 들고있는다고 하면 Stateful방식을 쓰지 Stateless방식을 쓰는 이점이 있나 해서 질문드립니다
-
미해결
앱의 수준에 관한 질문
안녕하세요 강사님, 본 과정에서 만들어지는 앱은 학생들이 언어를 배워보는 경험을 목표로 하시는건지 아니면 React native를 모르는 전문개발자가 실제 상용 목적의 앱을 만들 수 있도록 하는 것을 목표하는 것인지 궁금합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
9회 빅분기 3-1
설명변수 포함이라는 말 때문에 p-value 구하고 2개 + 상수항 포함으로 3을 적었네요..문제에 상수항은 빼라는 말이 있었나요...?
-
해결됨한 입 크기로 잘라먹는 Next.js(v15)
코드 정렬 기능
🚨 아래의 가이드라인을 꼭 읽고 질문을 올려주시기 바랍니다 🚨질문 하시기 전에 꼭 확인해주세요- 질문 전 구글에 먼저 검색해보세요 (답변을 기다리는 시간을 아낄 수 있습니다)- 코드에 오타가 없는지 면밀히 체크해보세요 (Date와 Data를 많이 헷갈리십니다)- 이전에 올린 질문에 달린 답변들에 꼭 반응해주세요 (질문에 대한 답변만 받으시고 쌩 가시면 속상해요 😢)질문 하실때 꼭 확인하세요- 제목만 보고도 무슨 문제가 있는지 대충 알 수 있도록 자세한 제목을 정해주세요 (단순 단어 X)- 질문의 배경정보를 제공해주세요 (이 문제가 언제 어떻게 발생했고 어디까지 시도해보셨는지)- 문제를 재현하도록 코드샌드박스나 깃허브 링크로 전달해주세요 (프로젝트 코드에서 문제가 발생할 경우)- 답변이 달렸다면 꼭 확인하고 반응을 남겨주세요- 강의의 몇 분 몇 초 관련 질문인지 알려주세요!- 서로 예의를 지키며 존중하는 문화를 만들어가요. - 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 강의자님께서는 강의에서 어떤 코드 정렬 기능을 쓰고 계신지 궁금합니다. 단축키를 이용하시는 것 같은데 저는 똑같이 안되는 것 같습니다.
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
4-0 질문 있습니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.안녕하세요 선생님 제가 풀이한건데 문제에 예시 입력을 했을 때 맞게 나오고 다르게 해봤는데 맞게 나왔는데 어떤 부분 때문에 틀렸는지 도저히 몰라 질문 남깁니다. 어떤 반례가 있길래 이럴까요??#include<bits/stdc++.h> using namespace std; string s; int n,cnt,ret =-987654321,start; stack<char>st; int main(){ ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL); cin >> n >> s; for(char c : s){ if(st.size() && st.top() == '(' && c == ')'){ cnt += 2; st.pop(); }else if(st.size() && st.top() == ')' && c == '('){ while (!st.empty()) st.pop(); st.push(c); cnt = 0; }else{ st.push(c); } ret = max(ret, cnt); } cout << cnt << "\n"; return 0; }
-
미해결스프링 핵심 원리 - 기본편
@Configuration
[질문 내용]AppConfig 같은 클래스를 만들고 바로 상단에 @Configuration 어노테이션을 설정하면 그 클래스는 스프링 컨테이너라고 봐도 된다는 거죠?
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
order 테이블의 id값이 왜 4, 11인가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 강의에서 order 테이블을 조회하면 id값이 4, 11로 나오는데 저는 1, 2로 나옵니다. 아무리 생각해봐도 4, 11로 나올 이유가 없어보이는데 왜 4,11로 나오는지 궁금합니다
-
미해결
베릴로그 송수신기
송신기와 수신기를 만들려고 합니다.송신기는 64비트 데이터를 관리하고 이를 한 비트씩 시리얼 방식으로 shift하여 송신합니다. 송신기의 FSM은 다음과 같은 상태를 가집니다:IDLE: 송신 대기 상태.LOAD: 데이터 로드 상태 (Payload 포함).SHIFT: 데이터를 1비트씩 시리얼로 전송.WAIT: 수신으로 전환 조건을 확인.송수신 통합 구조송신기에서 자동으로 숫자가 증가하면서 데이터가 생성되고, 비교 결과가 참이면 데이터를 수신기로 전달합니다. 이를 위해 tx, rx 모듈과 ID_Comparator를 사용합니다. 송신기의 조건은 자동으로 숫자가 올라가며, 숫자가 비교기랑 맞으면 자동으로 수신에 넘어가는걸 만들고 싶어요. 근데 잘 숫자가 자동으로 올라가는 부분과 숫자 저장하는 부분이 잘 되지 않습니다 ㅜㅜmodule Rx(clock, control, KEY0, KEY1, SW, HEX0, HEX1, HEX2, HEX3, HEX4, HEX5, LEDR);// clock=P11, control=KEY1, KEY0=clr, SW[9]=Eninput clock, control;input KEY0, KEY1; // KEY0과 KEY1을 독립적으로 선언input [9:0] SW;output [0:6] HEX0, HEX1, HEX2, HEX3, HEX4, HEX5;output [9:0] LEDR;wire [15:0] preamble;wire [11:0] SFD;wire [1:0] DestinationID, SourceID;wire [31:0] payload;wire [2:0] state, next_s;wire [63:0] Data;wire trans, MS, count;// halfsecond 모듈halfsecond half_sec(clock, KEY0, SW[9], count);// savedata 모듈savedata s0(.clock(clock),.En(SW[9]), // Enable을 SW[9]로 연결.control(control),.SW(SW),.preamble(preamble),.SFD(SFD),.DestinationID(DestinationID),.SourceID(SourceID),.payload(payload),.state(state),.next_s(next_s),.Data(Data),.LEDR(LEDR),.MS(MS),.count(count));// transdata 모듈transdata t0(.clock(clock),.clr(KEY0), // clr을 KEY0로 연결.control(control),.Data(Data),.trans(trans),.count(count));// 7-segment 출력num_7seg H0(Data[3:0], HEX0);num_7seg H1(Data[7:4], HEX1);num_7seg H2(Data[11:8], HEX2);num_7seg H3(Data[15:12], HEX3);num_7seg H4(Data[19:16], HEX4);num_7seg H5(Data[23:20], HEX5);endmodulemodule savedata(clock, En, control, SW, preamble, SFD, DestinationID, SourceID, payload, state, next_s, Data, LEDR, MS, count);input clock, En, control, count;input [9:0] SW;output reg [15:0] preamble;output reg [11:0] SFD;output reg [1:0] DestinationID, SourceID;output reg [31:0] payload;output reg [2:0] state, next_s;output reg [63:0] Data;output reg MS;output [9:0] LEDR;reg P;reg [1:0] S;wire match_preamble;wire match_sfd;wire [15:0] expected_preamble = 16'b1010101010101010;wire [11:0] expected_sfd = 12'b101010110100;Compare_Preamble_SFD c0(clock, SW[9], preamble, expected_preamble, SFD, expected_sfd, match_preamble, match_sfd);parameter S0 = 3'b000, S1 = 3'b001, S2 = 3'b010, S3 = 3'b011, S4 = 3'b100, S5 = 3'b101, S6 = 3'b110, S7 = 3'b111;always@(posedge clock or negedge En)beginif (!En)state <= S0;else if (count)state <= next_s;endalways@(posedge clock or posedge SW[9] or posedge SW[8] or negedge En)beginif(SW[9])beginData <= 0;preamble <= 0;SFD <= 0;DestinationID <= 0;SourceID <= 0;MS <= 0;payload <= 0;state <= S0;P <= 1'b0;S <= 2'b00;endelse if (SW[8])beginSourceID <= SW[1:0];MS <= SW[2];endelse if (!En)beginif(state == S0)beginstate <= next_s;endelse if(state == S1 && P == 1'b0)beginpreamble <= {preamble[7:0], SW[7:0]};state <= next_s;P <= 1'b1;endelse if(state == S1 && P == 1'b1)beginpreamble <= {preamble[7:0], SW[7:0]};state <= next_s;P <= 1'b0;endelse if(state == S2 && S == 2'b00)beginSFD <= {SFD[7:0], SW[3:0]};state <= next_s;S <= 2'b01;endelse if(state == S2 && S == 2'b01)beginSFD <= {SFD[7:0], SW[3:0]};state <= next_s;S <= 2'b10;endelse if(state == S2 && S == 2'b10)beginSFD <= {SFD[7:0], SW[3:0]};state <= next_s;S <= 2'b00;endelse if(state == S3)beginDestinationID[1:0] <= SW[1:0];state <= next_s;endelse if(state == S4)beginSourceID[1:0] <= SW[1:0];state <= next_s;endelse if(state == S5)beginpayload <= payload + SW[7:0];state <= next_s;endelse if(state == S6)beginData <= {preamble, SFD, DestinationID, SourceID, payload};state <= next_s;endendendassign LEDR[2:0] = state;assign LEDR[5:3] = next_s;assign LEDR[8:6] = {P, S};assign LEDR[9] = MS;endmodulemodule transdata(clock, clr, control, Data, trans, count);input clock, clr, control;input [63:0] Data;output reg trans;reg [63:0] shift;reg en;reg [5:0] bit_count;output count;halfsecond h0(clock, clr, control, count);always@(posedge clock or posedge clr)beginif (clr)begintrans <= 1'b0;shift <= 64'b0;en <= 1'b0;bit_count <= 6'b0;endelse if (control == 0 || count == 1)beginshift <= Data;en <= 1'b1;bit_count <= 6'b0;endelse if (en)begintrans <= shift[63];shift <= {shift[62:0], 1'b0};bit_count <= bit_count + 1;if (bit_count == 6'b111111)beginen <= 1'b0;endendendendmodulemodule Compare_Preamble_SFD (input clk,input clr,input [15:0] received_preamble,input [15:0] expected_preamble,input [11:0] received_sfd,input [11:0] expected_sfd,output reg match_preamble,output reg match_sfd);always @(posedge clk or posedge clr)beginif (clr)beginmatch_preamble <= 0;match_sfd <= 0;endelsebeginmatch_preamble <= (received_preamble == expected_preamble);match_sfd <= (received_sfd == expected_sfd);endendendmodulemodule num_7seg (S, HEX);input [3:0] S;output [0:6] HEX;assign HEX[0] = (~S[3]&~S[2]&~S[1]&S[0])|(~S[3]&S[2]&~S[1]&~S[0])|(S[3]&~S[2]&S[1]&S[0])|(S[3]&S[2]&~S[1]&S[0]);assign HEX[1] = (~S[3]&S[2]&~S[1]&S[0])|(S[2]&S[1]&~S[0])|(S[3]&S[1]&S[0])|(S[3]&S[2]&~S[0]);assign HEX[2] = (~S[3]&~S[2]&S[1]&~S[0])|(S[3]&S[2]&~S[0])|(S[3]&S[2]&S[1]);assign HEX[3] = (~S[3]&~S[2]&~S[1]&S[0])|(~S[3]&S[2]&~S[1]&~S[0])|(S[2]&S[1]&S[0])|(S[3]&~S[2]&S[1]&~S[0]);assign HEX[4] = (~S[3]&S[0])|(~S[3]&S[2]&~S[1])|(~S[2]&~S[1]&S[0]);assign HEX[5] = (~S[3]&~S[2]&S[0])|(~S[3]&~S[2]&S[1])|(~S[3]&S[1]&S[0])|(S[3]&S[2]&~S[1]&S[0]);assign HEX[6] = (~S[3]&~S[2]&~S[1])|(~S[3]&S[2]&S[1]&S[0])|(S[3]&S[2]&~S[1]&~S[0]);endmodulemodule halfsecond(Clr, Clk, En, Q);input Clk, Clr, En; output reg Q;reg [25:0] D; always @ (posedge Clk)beginif (~Clr)beginD <= 25'b0;Q <= 1'b0;endelse if (En)beginif (D == (25'd24999999)) // 0.5초 주기beginD <= 25'b0;Q <= 1'b1;endelsebeginD <= D + 1'b1;Q <= 1'b0;endendelsebeginD <= 26'b0;Q <= Q;endendendmodule
-
미해결
OOP named construct 질문
2강 OOP 약 18분~19분 내용클래스에 const에 붙이는건 이해했는데,네임드 컨스트럭트를 const로 만들려면 어떻게 해야하나요?빌드타임과 관련이 있는건가요?
-
미해결
언리얼5 블루프린트에서의 서버/클라 액터 구별 질문
리슨 서버 환경이라고 가정했을 때, 해당 액터(캐릭터, 폰, 플레이어컨트롤러 등) 가 서버 소유인지 클라 소유인지, 지금 local controlled 인지 구별하기 위해서 제공하는 노드가이렇게 되어 있는 것 같은데요.액터 역할은 로컬역할과 리모트 역할이 있고 종류는 Authority/autonomous/Simulated 가 있죠?근데 저 사진에서 Authority와 Remote 라는 것은 무엇을 의미하는 것인가요???? (역할의 구별과 종류가 혼용되어 있어 이해가 어렵습니다....) 제가 이해하기로는 모든 액터는 서버에서 Authority 이기 때문에 네트워크가 서버일 경우 로컬역할/리모트 역할 구별없이 무조건 Authority 핀이 실행될 거 같고, Remote가 실행되는 경우는 현재 네트워크가 클라이언트이며 로컬역할이 autonomous 일때만 실행될 거 같은데 맞나요?? 그렇다면 네트워크가 클라이언트이고 로컬역할이 simulated일 때만 실행되게하는 것은 어떻게 해야 하나요?? Switch Has Authority 노드의 정확한 동작 이해가 필요합니다....
-
해결됨직장인에게 꼭 필요한 파이썬-아래아한글 자동화 레시피
개요 다루기 질문(2)
아래 질문한 사람입니다. ^^답변 감사드립니다.추가적으로 ctrl k + o 개요 번호모양 없음 지정하는 방법과 스타일의 커서 위치로 스타일 바꾸기가 가능할까요!?요렇게 해봤는데 제가 바꾸고자 하는 스타일을 지정하는 방법을 모르겠습니다. ㅠ hwp.open(hwpx_file, arg="suspendpassword:false; forceopen:true; versionwarning:false") print('---------------------') print(hwp.find(src=contents[1], direction='AllDoc'), hwp.current_page) print('---------------------') print(hwp.find(src=contents[1], direction='AllDoc'), hwp.current_page) print('---------------------') #hwp.HAction.Run("StyleShortcut3") hwp.hwp.HAction.GetDefault("StyleChangeToCurrentShape", hwp.hwp.HParameterSet.HStyleItem.HSet) hwp.hwp.HAction.Execute("StyleChangeToCurrentShape", hwp.hwp.HParameterSet.HStyleItem.HSet)
-
미해결이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
헤더에서 cpp 작은 창 띄우는 것 어떻게 하나요?
저 밑에 작은 창 생기는 거 어떻게 설정하나요?
-
미해결[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
npx husky install
yarn add --dev husky 명령어를 사용후,npx husky install 명령어를 사용했는데 husky - install command is DEPRECATED 라는 오류가 계속해서 발생합니다. .git도 생성되어 있는데 어떻게 해결해야할지 모르겠어서 질문합니다
-
미해결블렌더 입문 : UX/UI 디자이너를 위한 3D 아이콘으로 배우는 블렌더!
카메라 위치 초기화가 안될때
카메라 위치 초기화 단축키가 안먹을때 어떻게 해야하나요영문 (대문자)로 키보드 적용 했고 오브젝트 카메라도 선택했는데 적용이 안됩니다..ㅜ
-
미해결스프링 부트 - 핵심 원리와 활용
WAR, JAR 차이점 (구성하는 파일에 대해)
안녕하세요. 강사님 05:00 분에 WAR를 설명하십니다.WAR : 정적리소스(HTML) + 클래스파일 이라고 설명하십니다.JAR 도 WAR와 마찬가지로 위와같이 HTML, 클래스파일을 갖을 텐데요. 강사님께서는 HTML을 WAR설명때만 언급을 하십니다. WAR 와 JAR가 갖는 파일들에 대해 차이점을 구별하지 못하고 있습니다. 단순 내부구조가 복잡하거나 단순한 걸로 구별을 해야할까요?
-
미해결Vue 3 & Firebase 10 커뮤니티 만들기 풀스택 - "활용편" (with Pinia, Quasar, Tiptap, VueUse)
unplugin-vue-router 가 안되네요.
install도 잘 했습니다. npm i -D unplugin-vue-router router>index.js도 강의와 같이 설정했고요. 이유를 모르겠습니다.
-
미해결데이터 분석 SQL Fundamentals
오류가 뜹니다..
postgresql설치 후에 연결을 하는데 비밀번호를 맞게 입력했는데도 FATAL: password authentication failed for user "postgres"이런 오류가 뜨는데 어떻게 해야할까요ㅜㅜ맥북 사용중입니다
-
미해결Go Hard to C (feat. Algorithm)
교재 다운
수업자료 교재 다운이 안됩니다..
-
미해결[유니티 레벨 업!] 모듈식으로 개발하는 퀘스트&업적 시스템
퀘스트 누적 클리어 횟수에 대해 여쭤보고싶습니다.
퀘스트 시스템에 같은 코드네임의 퀘스트의 누적 클리어 횟수를 넣어주려고 하는데 어떻게 해야할까요 저장할때 가져오는 퀘스트는 클론이라 퀘스트에 정수 변수를 만든다음 추가하는 방식이 불가능하고퀘스트가 저장될때마다private JArray CreateSaveDatas(IReadOnlyList<Quest> quests, string key){ // 기존 데이터 로드 JArray saveDatas = LoadExistingSaveData(key); // 기존 세이브 파일에서 JArray 로드 foreach (var quest in quests) { Debug.Log("before " + quest); if (quest.IsSaveable) { Debug.Log("after " +quest); QuestSaveData saveData = quest.ToSaveData(); // 기존 데이터에서 같은 codeName 찾기 var existingData = saveDatas.FirstOrDefault(item => item["codeName"]?.ToString() == saveData.codeName); // 누적 퀘스트 카운트 계산 saveData.questClearCount = GetQuestClearCount(saveDatas, quest.CodeName); if (existingData != null) { saveData.questClearCount++; // 기존 데이터 갱신 existingData["questClearCount"] = saveData.questClearCount; } else { // 새 데이터 추가 Debug.Log("처음"); saveDatas.Add(JObject.FromObject(saveData)); } // 현재 퀘스트의 카운트 업데이트 quest.questClearCount = saveData.questClearCount; } } return saveDatas;}private JArray LoadExistingSaveData(string key){ if (File.Exists(saveFilePath)) { // 파일에서 JSON 데이터를 읽어옵니다. string jsonString = File.ReadAllText(saveFilePath); var root = JObject.Parse(jsonString); // 저장된 특정 경로 데이터(JArray)를 반환 if (root[key] != null) { return (JArray)root[key]; } } // 기존 파일이 없거나 해당 키가 없으면 빈 JArray 반환 return new JArray();}private int GetQuestClearCount(JArray saveDatas, string codeName){ // JArray에서 해당 codeName을 가진 항목 찾기 var questData = saveDatas.FirstOrDefault(item => item["codeName"]?.ToString() == codeName); // 항목이 존재하고 "questClearCount"가 있을 경우 반환 if (questData != null && questData["questClearCount"] != null) { return (int)questData["questClearCount"]; } // 항목이 없거나 "questClearCount"가 없는 경우 기본값 반환 Debug.LogWarning($"Quest with codeName '{codeName}' not found or questClearCount is missing."); return 0;}기존의 세이브파일에서 참조해서 추가하는 방식으로는 다른요소로 저장할때마다도 추가가 됩니다.계속 어떻게 수정해야할지 고민중이긴한데 어떻게 해야할지 모르겠습니다.저장할 퀘스트의 id를 퀘스트DB에 있는 id와 비교해서 원본 퀘스트를 찾은 다음 그 퀘스트를 가져와서 원본 퀘스트의 변수를 수정해주는 방식이 좋을까요
-
미해결
리액트네이티브 빌드 에러
npm install 후, 빌드를 하려고하면 다음과 같은 오류가 뜹니다.> Task :app:configureCMakeDebug[arm64-v8a] FAILEDC/C++: CMake Error at C:/practice1/node_modules/react-native/ReactAndroid/cmake-utils/ReactNative-application.cmake:42 (add_library):C/C++: Syntax error in cmake code when parsing stringC/C++: C:\practice1\node_modules\react-native\ReactAndroid/cmake-utils/default-app-setup/OnLoad.cppC/C++: Invalid character escape '\p'.C/C++: Call Stack (most recent call first):C/C++: CMakeLists.txt:31 (include) 경로 구분 문제인건 알곘는데 Globs.cmake에서 수정을 아무리해도 실행을 하면 다시 원래대로 돌아가요. 뭐가문제일까요?