묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[Unity] 함께 만들어가는 방치형 게임 개발
안녕하세요 질문있습니다
안녕하세요 로딩도 만드신다고 햇는데 혹시 로비창도 강의 있나요??
-
미해결코드로 배우는 React 19 with 스프링부트 API서버
input box에 데이터 입력후 확인 버튼 누르고 input 데이터 수정하면 오류 발생 ...
안녕하세요 Redux 수업 다 듣고 이해 되지 않아서 따로 프로젝트를 뽑아서 Redux를 연습 하고 있어요...일단 이해는 다된거 같아요...아래 dispatch 하는 부분에서 오류가 뜨네요..먼저 처리 순서가 ... input에 데이터를 입력하고 로그인 버튼을 클릭하고 다시 input에 데이터를 입력하면 오류가 뜨네요cannot assign to read only property 'current' of object '# object '버튼 클릭하는 부분에 dispatch하는 내용을 넣었구요..구글에는 깊은 복사 뭐 이런거 있던데 그거랑 관련 없는거 같구... ===================================리듀스 기본을 알면 저 문제 해결될꺼라는 어떤분의 답변이 야속하네요 ... 코드 시작=============================import { useState } from "react"; import { useDispatch } from "react-redux"; import {login} from "../slices/loginSlice" const initState = { email:'', password:'' } function LoginComponent(props) { const [loginParam, setLoginParam] = useState({...initState}) const disPatch = useDispatch() const handleChange = (e)=> { loginParam[e.target.name] = e.target.value setLoginParam({...loginParam}) } const handleLoginClick = (e)=>{ console.log(".......") disPatch ( login(loginParam) ) } const handleLogoutClick = (e)=>{ disPatch( login(initState) ) } return ( <div> <div className="flex flex=nowrap gap-x-8 place-content-center "> <div> <div> login </div> <div> <input className="text-base w-300 p-6 rounded-r border border-solid border-neutral-500 shadow-md" name="email" type ={'text'} value={loginParam.email} onChange ={handleChange}> </input> </div> <div> <input className="text-base w-300 p-6 rounded-r border border-solid border-neutral-500 shadow-md" name="password" type={'password'} value={loginParam.password} onChange={handleChange} > </input> </div> <div> <button className = "rounded p-4 w-36 bg-blue-500 text-xl text-white" onClick={handleLoginClick} > Login.. </button> </div> </div> <button onClick={handleLogoutClick}> logout </button> </div> </div> ) } export default LoginComponent; =============================
-
미해결[2023 코틀린 강의 무료제공] 기초에서 수익 창출까지, 안드로이드 프로그래밍 A-Z
room database 설치 질문
room 데이터 베이스의 의존성 주입을 하고 있는데 계속 에러가 났습니다. 근데 viewBinding 부분을 지우니 해결이 되었습니다 무슨 문제였을까요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
16234 질문입니다!
16234번 테스트 케이스는 다 맞는데, 채점시에는 % 조금넘어가다가 바로 틀리는데, 어디가 틀렸는지 도저히 모르겠어서 질문드립니다. http://boj.kr/741c9846e8eb45d59f29b0a85fa3cfe9 그리고 선생님 풀이코드를 봤는데, 전역스코프에있는 벡터 v사용하시는데 dfs 파라미터에 넣으신 이유가 있을까요?? 이 질문을 드린게 함수 파라미터에서 '&'를 이용한 참조에 의한 전달을 하는 방식은 함수 파라미터에 해당 자료구조를 명시하지 않아도 상위 스코프를 순차적으로 순회하면서 동일한 이름의 자료구조를 발견하면 알아서 참조해서 사용한다고 알고있어서 그랬습니다.만약 값 전달이 목적이라면 (전역단에 빈 자료구조 'ds'생성)ds ds;func (param1, param2, ds) {~~}int main() { while (1) func(~~); ~~}이런식으로 함수를 정의하면 반복되는 로직에서 func를 부를 때 ds를 비워주는(fill, memset, clear, ...) 로직을 수행하지 않고 코드를 작성할 수 있을것 같은데, 이렇게 매번 빈 자료구조를 사용하는 로직에서는 값전달방식이 나을까요 아니면 그냥 무조건 참조 + flush가 나을까요?
-
미해결스프링 핵심 원리 - 기본편
@RequiredArgsConstructor도 @Autowired 기반인가요?
@RequiredArgsConstructor를 통한 의존관계 자동 주입이 결국 @Autowired를 사용한 것인가요
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
controller 질문드립니다
안녕하세요 코팩님 전자액자 복습 중에 문득 헷갈리는게 생겨서 질문드립니다.class _HomeScreenState extends State<HomeScreen> { Timer? timer; PageController controller = PageController();여기에서 controller 부분이 잘 이해가 안 가는데요,controller를 사용하려면 위와 같이 PageController controller = PageController();와 같은 형식으로 정의를 해야하는 건가요?웹뷰 프로젝트에서도 controller 정의하실때 WebviewController controller = WebviewController()..~~ 식으로 정의하셨는데,위와 같은 형식으로 정의를 하는 것인지와 또 controller 바로 앞 타입의 정체와 우항의 정체는 정확히 무엇인지 궁금합니다. 좌항 controller 앞의 PageController는 무엇의 타입이고 (정체가 무엇인지),우항도 정체가 무엇인지,또 controller를 사용하고자 하면 저런 형식으로 정의해야하는 것인지 궁금합니다!
-
미해결[C#/.NET 7.0]어서와, WPF는 처음이지?
코드 퍼스트
안녕하세요 entity보고있는데요 혹시 지금 강의에서 보여준 방법이 코드퍼스트인지 궁금합니다그리고 그 차이점과 wpf현업에서 사용하는 방법도 알려주세요
-
미해결3D 모델링 입문을 위한 라이노(Rhino) '꿀팁' Part.2
변형기능에 대해 질문이 있습니다
개체의 중심점을 잡고 비틀기를 하였을때 이렇게 완성 되는 이유는 무엇일까요..?
-
미해결3D 모델링 입문을 위한 라이노(Rhino) '꿀팁' Part.1
강의 80% 수강 완료는 여기다 인증하면 되는 걸까요 ?:)
안녕하세요 강사님!강의 80% 수강 완료는 여기다 인증하면 되는 걸까요 ?:)
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 챗봇 사이트 만들기
질문있어요
앞에 질문에 답변을 받았지만 링크로 참조하라는 답변이었는데 저는 그걸로는 해결을 할 수 없었습니다. 혹시 괜찮으시면 직관적인 해결법을 알려주실 수 없나요?send를 누르면 터미널에 이렇게 뜹니다. Server Running at 5000 C:\project\vswork\chatbot-app-master\node_modules\google-gax\node_modules\google-auth-library\build\src\auth\jwtclient.js:193 throw new Error('The incoming JSON object does not contain a client_email field'); ^ Error: The incoming JSON object does not contain a client_email field at JWT.fromJSON (C:\project\vswork\chatbot-app-master\node_modules\google-gax\node_modules\google-auth-library\build\src\auth\jwtclient.js:193:19) at GoogleAuth._cacheClientFromJSON (C:\project\vswork\chatbot-app-master\node_modules\google-gax\node_modules\google-auth-library\build\src\auth\googleauth.js:313:16) at ReadStream.<anonymous> (C:\project\vswork\chatbot-app-master\node_modules\google-gax\node_modules\google-auth-library\build\src\auth\googleauth.js:347:36) at ReadStream.emit (node:events:519:28) at endReadableNT (node:internal/streams/readable:1696:12) at process.processTicksAndRejections (node:internal/process/task_queues:82:21) Node.js v20.16.0 PS C:\project\vswork\chatbot-app-master> 아래와 같이 값이 입력이되어있는데도말입니다. 루트파일에다가 구글 인증json을 위치를 끌어다 넣어도 그렇습니다. 가르쳐줘서 고맙습니다. 근데 이렇게 문제가 생겨서 이 구간을 벗어나고 싶습니다 ㅠㅠ
-
미해결[초중급편] 안드로이드 데이팅 앱 만들기(Android Kotlin)
auth.currentUser?.uid.toString() 가 null 이 나와요
auth.currentUser?.uid.toString() 가 null 이 나와요잘나왔었는데 몇시간뒤에 하니까 null 이 나옵니다. 로그인 -> 어플종료 -> 다시 어플 키면 uid가 나오는데MypageActivity가면 uid가 null입니다. firebase는 이상없이 작동합니다 package com.example.sogating.setting import android.os.Bundle import android.util.Log import android.widget.ImageView import android.widget.TextView import androidx.activity.enableEdgeToEdge import androidx.appcompat.app.AppCompatActivity import androidx.core.view.ViewCompat import androidx.core.view.WindowInsetsCompat import com.example.sogating.R import com.example.sogating.auth.UserDataModel import com.example.sogating.utils.FirebaseAuthUtils import com.example.sogating.utils.FirebaseRef import com.google.firebase.database.DataSnapshot import com.google.firebase.database.DatabaseError import com.google.firebase.database.ValueEventListener class MyPageActivity : AppCompatActivity() { private val TAG = "MyPageActivity" private val uid = FirebaseAuthUtils.getUid() override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_my_page) getMyData() } private fun getMyData() { val myImage = findViewById<ImageView>(R.id.myImage) val myUid = findViewById<TextView>(R.id.myUid) val myNickname = findViewById<TextView>(R.id.myNickname) val myAge = findViewById<TextView>(R.id.myAge) val myCity = findViewById<TextView>(R.id.myCity) val myGender = findViewById<TextView>(R.id.myGender) val postListener = object : ValueEventListener { override fun onDataChange(dataSnapshot: DataSnapshot) { // Get Post object and use the values to update the UI Log.d(TAG, dataSnapshot.toString()) val data = dataSnapshot.getValue(UserDataModel::class.java) // myUid.text = data!!.uid // myNickname.text = data.nickname // myAge.text = data.age // myCity.text = data.city // myGender.text = data.gender } override fun onCancelled(databaseError: DatabaseError) { // Getting Post failed, log a message Log.w(TAG, "loadPost:onCancelled", databaseError.toException()) } } // why null ? Log.d(TAG, uid) FirebaseRef.userinfoRef.child(uid).addValueEventListener(postListener) } } package com.example.sogating.utils import com.google.firebase.auth.FirebaseAuth class FirebaseAuthUtils { companion object { private lateinit var auth: FirebaseAuth fun getUid() : String { auth = FirebaseAuth.getInstance() return auth.currentUser?.uid.toString() } } } 자세한 소스 입니다. https://github.com/dongmyoungLee/sogating_app
-
미해결
수정해보았는데 답장이 오지 않습니다2
수정해보았는데 답장이 오지 않습니다.를 쓰고 Ai인턴에게 답을 받았지만 도움이 되지않습니다. 어떤 글을 참고하라고 하는데 그것을 봐서는 모르겠고 직관적으로 어떻게 수정을 해야하는지 알려주었으면 좋겠습니다. 써주신 글로 알아먹을 수 있다면 좋겠지만 마음도 다급하고 모르겠습니다. ㅠㅠsend를 누르면 터미널에 이렇게 뜹니다. Server Running at 5000 C:\project\vswork\chatbot-app-master\node_modules\google-gax\node_modules\google-auth-library\build\src\auth\jwtclient.js:193 throw new Error('The incoming JSON object does not contain a client_email field'); ^ Error: The incoming JSON object does not contain a client_email field at JWT.fromJSON (C:\project\vswork\chatbot-app-master\node_modules\google-gax\node_modules\google-auth-library\build\src\auth\jwtclient.js:193:19) at GoogleAuth._cacheClientFromJSON (C:\project\vswork\chatbot-app-master\node_modules\google-gax\node_modules\google-auth-library\build\src\auth\googleauth.js:313:16) at ReadStream.<anonymous> (C:\project\vswork\chatbot-app-master\node_modules\google-gax\node_modules\google-auth-library\build\src\auth\googleauth.js:347:36) at ReadStream.emit (node:events:519:28) at endReadableNT (node:internal/streams/readable:1696:12) at process.processTicksAndRejections (node:internal/process/task_queues:82:21) Node.js v20.16.0 PS C:\project\vswork\chatbot-app-master> 아래와 같이 값이 입력이되어있는데도말입니다. 루트파일에다가 구글 인증json을 위치를 끌어다 넣어도 그렇습니다. 가르쳐줘서 고맙습니다. 근데 이렇게 문제가 생겨서 이 구간을 벗어나고 싶습니다 ㅠㅠ
-
미해결Python Streamlit을 활용한 대시보드 만들기 (feat. 빅데이터 분석기사 실기 준비)
5단계 강의 코드관련(Streamlit st.data_editor() & st.column_config)
선생님 안녕하세요~좋은 강의 제공해주셔서 감사드립니다. Github에 해당 강의 코드가 없는것 같아 확인차 문의드립니다. 감사합니다.
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
카카오 맵 오류
import { useEffect } from "react"; declare const window: typeof globalThis & { kakao: any; }; export default function KakaoMapPage(): JSX.Element { useEffect(() => { const container = document.getElementById("map"); const options = { center: new window.kakao.maps.LatLng(33.450701, 126.570667), level: 3, }; const map = new window.kakao.maps.Map(container, options); console.log(map); }, []); return ( <> <script type="text/javascript" src="//dapi.kakao.com/v2/maps/sdk.js?appkey=키" ></script> <div id="map" style={{ width: 500, height: 400 }}></div> </> ); } Error: Hydration failed because the initial UI does not match what was rendered on the server. Warning: Expected server HTML to contain a matching <div> in <div>.See more info here: https://nextjs.org/docs/messages/react-hydration-error 카카오 맵 하는데 오류 왜 뜨는건가요??
-
미해결스타트업 성장과 함께하는 AWS 클라우드 아키텍쳐 올인원
AWS Private-Subnet, NAT Gateway Keep-Alive 질문
안녕하세요. 우선 제가본 강의중에 제일 좋은강의를 만들어주셔서 감사합니다.private-subnet(ec2) >> NAT Gateway >> public-subnet(gateway) 경로를 통해 API를 호출하고 있습니다. 문제는 API 호출 시 첫 번째 요청은 느리지만, 이후의 요청은 빠르게 처리되며, 몇 분 후 다시 호출하면 같은 현상이 반복된다는 것입니다. AWS 문서를 확인해본 결과, NAT Gateway의 Keep-Alive 최대 시간이 360초라는 것을 알게 되었습니다.이와 같이 첫 번째 API 호출이 느렸다가 이후 호출이 빨라지는 문제를 해결할 방법이 있을까요?제가 생각해본 해결책은 private-subnet을 public-subnet으로 이동시켜 Keep-Alive 시간을 증가시키는 것이었지만, 다른 방법이 있을지 조언을 구하고자 합니다.
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
[파이썬 Print 사용법 (1-4) - New 2023] Escape 코드
이전 강의에 Escape 코드에 관해 설명하였다고 언급하시고 넘어가셨는데, 다루어지지 않은 내용인 것 같습니다. 이 내용은 어디서 찾을 수 있는 걸까요 ?
-
미해결Node.js로 웹 크롤링하기
크롬 확장프로그램 관련 질문드립니다.
본 강의와 관련이 없을 수 있는데,크롤링 공부를 하는 중에 궁금한게 생겨 질문드립니다.puppeteer로 생성한 브라우저에서 크롬 확장프로그램을 설치할 수 있는 방법이 있나요?있다면 어떤 키워드로 검색을 해서 찾아봐야하는지 알려주시면 감사하겠습니다.
-
미해결
1-A 질문드립니다!
안녕하세요 큰돌님! 1-A 문제에서 배열을 뽑을 때 순서가 중요하지 않다고 생각해서조합으로 문제를 해결해 보려 했는데 자꾸 채점에서 틀려버리네요 코드는 다음과 같습니다!http://boj.kr/01cc1502b13546118275e1c61ec93a10 나름대로 여러가지 테스트 케이스를 해봐도정답이 나오는 것 같은데어떤 부분이 문제일까요? ㅠ
-
미해결기초부터 따라하는 디지털포렌식
USB.001 파일 다운 문제
USB.001 파일 다운로드 링크 클릭 및 다른 탭에도 해봤지만 요청한 파일이 없다고 뜨는데 확인해주실수 있나요,,,?
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
TSharedPtr<Wraight>의 스레드 안정성있는 삭제 방법
이전 질문들과 겹치는 것을 알고 있으나, 코드 테스트 이후에도 아래와 같은 의문이 풀리지 않아 글을 쓰게 되었습니다. 의문: 전역변수로 지정된 TSharedPtr<RefCountable변수형> "몬스터"가 있습니다. 이를 타 스레드에서 는 복제하여 사용하는 도중, 메인 스레드에서 "몬스터"를 이제 제거하고 싶어 nullptr을 대입합니다. 이때 아래와 같은 문제가 발생합니다.int32 ReleaseRef() { int32 refCount = --_refCount; // 타 스레드에서 이 타이밍에 "몬스터" 복제하는 문제 if (refCount == 0) { delete this; } return refCount; } 실제 테스트:class Wraight : public RefCountable { public: int testValue = 0; }; using WraightRef = TSharedPtr<Wraight>; class Missile : public RefCountable { public: void SetTarget(WraightRef target) { _target = target; // GWraight가 이미 완전히 삭제된 이후 생성된 경우, nullptr 오류 방지 if (!_target.IsNull()) _target->testValue = 5; } private: WraightRef _target; }; using MissileRef = TSharedPtr<Missile>; // 스레드들 접근가능한 전역변수 WraightRef GWraight; int main() { // 10번 실험 for (int i = 0; i < 10; i++) { // 타겟 소환 GWraight = (new Wraight); GWraight->ReleaseRef(); // 100'000개의 수많은 미사일 생성 및 타겟 지정 thread t1([]() { for (int i = 0; i < 100'000; i++) { MissileRef missile(new Missile()); missile->ReleaseRef(); missile->SetTarget(GWraight); } }); // 타겟 1ms 뒤에 소멸 thread t2([]() { this_thread::sleep_for(1ms); GWraight = nullptr; }); t1.join(); t2.join(); this_thread::sleep_for(3000ms); } }해당 코드 실행 이후, 아래와 같은 문제점이 생겼습니다. 케이스A미사일 발사 후, 제거되는 ~MissileRef()의 ReleaseRef() 내부 delete에서 오류가 발생 합니다. 예상되는 원인:int32 ReleaseRef() { int32 refCount = --_refCount; if (refCount == 0) { // 1. 타 스레드에서 복제 delete this; // 2. 복제된 객체는 이미 삭제된 _ptr을 들고있음 // 3. 복제에 따라 _refCount = 1 } return refCount; } // 4. 이후에 복제된 객체 삭제되면서 refCount = 0 // 5. 이중 delete 실행 -> 오류 케이스B타겟인 GWraight가 TSharedPtr<Wraight>(nullptr)를 복사할 때, ReleaseRef() 내부 delete에서 오류가 발생 합니다. 예상되는 원인:int32 ReleaseRef() { int32 refCount = --_refCount; if (refCount == 0) { // 1. 타 스레드에서 복제 // 2. 복제에 따라 _refCount = 1 // 3. 이후에 복제된 객체 삭제되면서 refCount = 0 // 4. delete 실행 delete this; // 5. 이중 delete 실행 -> 오류 } return refCount; } 다른 질문에서 refCount가 0이 될 때, 참조 객체가 남아있는 것은 TSharedPtr로 구현되었을 경우 발생하지 않는 문제라고 하셨습니다. 하지만, 어떤 구조로 객체를 삭제해야 위와 같은 문제가 발생하지 않는지 감이 오지 않습니다...