묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결Flutter 입문 - 안드로이드, iOS 개발을 한 번에 (with Firebase)
flutter 2.12 -> 2.7 다운그레이드 문제
안녕하세요! 최신 버전의 flutter로 파이어베이스 연동 후 어느 정도 하다가 null safety 관련 수정할 것이 너무 많아 먼저 버전을 낮춘 후 진행을 하려고 합니다. pubspec에서 sdk 버전을 아래처럼 2.7.0로 낮추고 다른 패키지들도 버전을 수정하였습니다. environment: #2.12.0 sdk: ">=2.7.0 <3.0.0" # 4월12일에 올려주신 깃헙 코드와 같이 패키지 버전 다운그레이드 cupertino_icons: ^0.1.2 # image_picker: ^0.7.4 image_picker: ^0.6.1+4 firebase_auth: ^1.0.3 google_sign_in: ^5.0.1 flutter_signin_button: ^2.0.0 cloud_firestore: ^1.0.4 firebase_storage: ^8.0.3 그 후 디버깅을 했을때 아래와 같은 오류 메시지가 나옵니다. 이것은 안드로이드 스튜디오 관련 오류일까요? 새 프로젝트에서 버전을 똑같이 낮추고 간단하게 앱바만 만든 후 테스트 했을때는 오류없이 잘 출력됐었습니다. 기존 프로젝트말고 새 프로젝트에서 처음부터 버전을 낮춘채로 다시 코딩하는게 좋을까요? 감사합니다!
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
이클립스 사용
인텔리제이를 사용하던데 이클립스로 따라가도 문제 없나요. 아니면 인텔리제이 무료버전이 나을까요?
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
detach에 대해서..
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://docs.google.com/document/d/1j0jcJ9EoXMGzwAA2H0b9TOvRtpwlxI5Dtn3sRtuXQas/edit#heading=h.w2tomwsznga7)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://docs.google.com/document/d/1xCQKit-1V6l6ObeCe49St33RHPzLF_P_c3o7aSDTKs0/edit#heading=h.7dhnp46ven0v)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]제가 선생님 수업을 듣고 detach에 대해 좀 더 자세히 알고싶어서 혼자서 코드를 만지작 해보았습니다. 제가 이해한 내용에 따르면 em.persist()를 하는 순간 영속성 컨텍스트에 저장되고, commit 되는 순간에 영속성 컨텍스트에 저장되어 있으면 insert를 하는 것이라 생각했습니다. 제가 짠 코드는 다음과 같습니다. 저는 두개의 Member 객체를 만들었습니다. 이름은 member1과 member2입니다. em.persist(member1); em.persist(member2); 를 한 후 commit을 해보니 당연히 두 객체 다 db에 잘 저장되었습니다. 그 후 저는 db를 초기화 시키고 다시 똑같이 member 객체 두개를 만들었습니다. 이번에는 detach의 작동 원리에 대해 알아보고 싶어서 em.persist(member1); em.persist(member2); em.detach(member2);를 한 후 commit을 하였습니다. 제가 이해한 내용에 따르면, member1과 member2는 persist 되었으니 영속성 컨텍스트에서 관리되는 상태이고, member2는 그 후 detach를 당해 영속성 컨텍스트에서 제외되었습니다. 그럼 이 상황에는 member1만 영속성 컨텍스트에 남아있어서, commit을 하는 시점에 member1은 db에 insert가 되어야 하는거 아닌가요? 그런데 직접 실행해보니 member1과 member2 모두 db에 저장되지 않았습니다. 아래 사진은 저의 코드 사진입니다.
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
coreMacro.h 에 define xalloc을 할 경우
CoreMacro.h 에서 xalloc을 define해줄 때 std::ios_base에서 xalloc이라는 이름의 함수가 있어서 오류가 나는 것 같습니다. 올려주신 코드를 내려받아서 빌드해봐도 같은 오류가 생기던데 뭔가 다른 문제가 있어서 오류가 계속 생기는 것일까요?
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
투포인터를 사용하지는 않았는데...
function solution(arr1, arr2) { let answer = []; let temp_obj = {}; const sum_arr = [...arr1, ...arr2]; for (let i = 0; i < sum_arr.length; i++) { temp_obj[sum_arr[i]] = temp_obj[sum_arr[i]] + 1 || 1; } for (let key in temp_obj) { if (temp_obj[key] === 2) { answer.push(Number(key)); } } return answer; } let a = [1, 3, 9, 5, 2]; let b = [3, 2, 5, 7, 8]; console.log(solution(a, b)); 위 처럼 풀었는데 전개연산자를 사용할경우 시간복잡도가 안나와있어서 위와같이 풀면 시간복잡도가 어떻게 되는지 궁금합니다.
-
미해결문과생도, 비전공자도, 누구나 배울 수 있는 파이썬(Python)!
함수의 호출과 관련하여 질문드립니다.
함수의 정의와 호출 강의 보면서 코드를 조금 수정해서 결과를 보았는데 예상과는 다르게 결과가 나와 이유를 알고 싶습니다. 아래 그림과 같이 print() 사이에 wow_f(1,2)를 입력하였는데, wow_f(1,2)에 대한 결과값이 출력이 되지 않는 이유를 알고 싶습니다. 좋은 강의를 무료로 배포하여주셔서 감사합니다.
-
해결됨풀스택 리액트 토이프로젝트 - REST, GraphQL (for FE개발자)
msgs.map is not a function
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. import { useState, useEffect, useRef } from "react"; import { useRouter } from "next/router"; import MsgItem from "./MsgItem"; import MsgInput from "./MsgInput"; import fetcher from "../fetcher"; import useInfiniteScroll from "../hooks/useInfiniteScroll"; const MsgList = (smsgs, users) => { const { query: { userId = "" }, } = useRouter(); const [msgs, setMsgs] = useState(smsgs); const [editingId, setEditingId] = useState(null); const [hasNext, setHasNext] = useState(true); const fetchMoreEl = useRef(null); const intersecting = useInfiniteScroll(fetchMoreEl); const onCreate = async (text) => { const newMsg = await fetcher("post", "/messages", { text, userId }); if (!newMsg) throw Error("something wrong"); setMsgs((msgs) => [newMsg, ...msgs]); }; const onUpdate = async (text, id) => { const newMsg = await fetcher("put", `/messages/${id}`, { text, userId }); if (!newMsg) throw Error("something wrong"); setMsgs((msgs) => { const targetIndex = msgs.findIndex((msg) => msg.id === id); if (targetIndex < 0) return msgs; const newMsgs = [...msgs]; newMsgs.splice(targetIndex, 1, newMsg); return newMsgs; }); doneEdit(); }; const onDelete = async (id) => { const receivedId = await fetcher("delete", `/messages/${id}`, { params: { userId }, }); setMsgs((msgs) => { const targetIndex = msgs.findIndex((msg) => msg.id === receivedId + ""); if (targetIndex < 0) return msgs; const newMsgs = [...msgs]; newMsgs.splice(targetIndex, 1); return newMsg; }); }; const doneEdit = () => setEditingId(null); const getMessages = async () => { const newMsgs = await fetcher("get", "/messages", { params: { cursor: msgs[msgs.length - 1]?.id || "" }, }); if (newMsgs.length === 0) { setHasNext(false); return; } setMsgs((msgs) => [...msgs, ...newMsgs]); }; useEffect(() => { if (intersecting && hasNext) getMessages(); }, [intersecting]); return ( <> <MsgInput mutate={onCreate} /> {userId && <MsgInput mutate={onCreate} />} <ul className="messages"> {msgs.map(x => ( <MsgItem key={x.id} {...x} onUpdate={onUpdate} onDelete={() => onDelete(x.id)} startEdit={() => setEditingId(x.id)} isEditing={editingId === x.id} myId={userId} user={users[x.userId]} /> ))} </ul> <div ref={fetchMoreEl} /> </> ); }; export default MsgList; -------- 에러 error - components/MsgList.js (72:14) @ MsgList TypeError: msgs.map is not a function 이유가 뭘까요 대체...
-
미해결Vue.js 제대로 배워볼래?(Vue.js 프로젝트 투입 일주일 전)
Proxy error: Could not proxy request /api/productList from localhost:8080 to http://127.0.0.1:3000. See https://nodejs.org/api/errors.html#errors_common_system_errors for more information (ECONNREFUSED).
몇일째 이걸로 잡혀있어요 ㅠㅜㅠ 외부 호스트에서 접근 해서 그렇다는데 ㅠㅜㅠㅜ Proxy error: Could not proxy request /api/productList from localhost:8080 to http://127.0.0.1:3000. See https://nodejs.org/api/errors.html#errors_common_system_errors for more information (ECONNREFUSED). 개발자 모드에서는 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'data') at _callee$ (mixins.js?9c9e:8) at tryCatch (runtime.js?96cf:63) at Generator.invoke [as _invoke] (runtime.js?96cf:294) at Generator.eval [as next] (runtime.js?96cf:119) at asyncGeneratorStep (asyncToGenerator.js?1da1:3) at _next (asyncToGenerator.js?1da1:25) 이라고 뜨는데 아마 서버에서 값을 못가져 오는 거 같은데 ㅠㅜㅠㅜ 선생님 너무 답답해여 ㅠ
-
미해결퍼블리셔 취업을 위해 제대로 배워보는 html과 css, 그리고 웹표준
실무에서 이벤트 페이지를 작업할 때 이렇게 만드나요??
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 최근에 제가 실무에서 이벤트 페이지를 만들었는데 일일이 코딩을해서 작업을 했었습니다. 그런데 이렇게 사진으로 하면 편하긴 할 것 같은데 실무에서도 실제도 이렇게 작업을 하는건가요?? 반응형으로 만들 때에도 이렇게 해도 작업을 해도 반응형으로 작업이 되나요?..
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
dispatch가 안되는 것 같습니다.
안녕하세요 제로초님. 강의들으면서 따라하던 와중에 문제가 생겨서 해결해보려 하였으나 도저히 모르겠어서 질문 드립니다. 제가 콘솔로그도 보고 redux 툴로도 보는데 보시다시피 HYDRATE말고는 아무런 액션도 들어가지를 않습니다. 프론트의 index.js부터 시작해서 _document.js, _app.js reducer, saga 백앤드의 posts.js 라우터까지 계속 보면서 제로초님 깃허브의 내용을 그대로 제가 따라했는지 체크하면서 하고 있지만 어디서부터 잘못된건지 감이 안잡힙니다. 혹시 이럴때는 어떤 순서대로 버그를 추적하면 될지 조언 부탁드립니다!..
-
미해결함수형 프로그래밍과 JavaScript ES6+
질문)curry 관련
노란색 인자가 받는 곳과 순서가 맞는지 궁금합니다^^
-
미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
궁금해서 질문 남갑니다
안녕하세요 그냥 듣다가 궁금해서 질문 남깁니다 middlewears에서 isLoggedIn과 isNotLoogedIn를 통해 검사하는데 로그인한 상태에서 회원가입 이나 로그인하는 페이지는 볼 수 없지 않나요? 제가 1차원적으로 생각한건지 싶어서 질문 남깁니다 감사합니다!
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
자바스크립트 적용하기 1 부분 질문이요
이렇게 작성햇는데 저는 왜 웹브라우저 변동이 없어요 ㅠㅠ
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
UnknownHostException
자문자답합니다. 랜덤으로 생성된 user-service의 포트 번호로는 정상적으로 통신이 되는데 gateway 포트 번호인 8000번을 통해 통신할 때는 "java.net.UnknownHostException: failed to resolve 'DESKTOP-XXXXXXX' after 4 queries"라는 에러가 뜨면 아래와 같이 user-service 프로젝트의 application.yml에 hostname을 추가해주면 해결됩니다. eureka: instance: hostname: localhost <참고> https://stackoverflow.com/questions/66133925/spring-boot-api-gateway-unable-to-resolve-name
-
미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
상속과 속성 관련 질문 드립니다
class Zero extends Human { constructor(type, firstName, lastName) { super(type); this.firstName = firstName; this.lastName = lastName; } sayName() { super.breathe(); alert(`${this.firstName} ${this.lastName}`); } } 이 class 선언에서 질문이 있습니다! 1. 이미 super(type); 으로 type 값을 부모 요소에서 가져오기로 결정했는데, 굳이 생성자에서 argument로 type을 받는 이유가 있을까요? 2. 또, 제가 dart 언어를 공부하다 와서 헷갈리는 부분일수도 있지만, JS에서 class 내의 property를 설정해주기 위해서는 꼭 생성자의 argument로 넘겨주어야 하는 건가요? 3. 이어서 첫번째 질문으로 돌아가자면, class 선언문 내에 const type = super(type); 이런 식으로 property를 설정해주고 생성자에서 super(type);을 빼주면 안될까요? 이상 3가지 질문을 드리고 싶습니다. 좋은 강의 감사드립니다!
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
매개변수로 TSharedPtr<Wraight> 형과 멀티쓰레드 관련 질문있습니다.
매개변수로 TSharedPtr<Wraight> 형을 받았을 때 멀티쓰레드 환경으로부터 안전하다는 부분이 이해가 잘 안됩니다. 함수내의 로직 안에서 최소 레프카운트 1은 보장되기에 지워질 가능성은 0%라는 부분, 개체의 생명주기를 보장받을 수 있다는 부분은 이해가 됩니다. 그렇지만 매개변수 TSharedPtr<Wraight> 형으로 받을 때, 복사생성자가 호출되어 Set(rhs._ptr); 이 실행될 때, 다른 쓰레드에서 해당 TSharedPtr<Wraight>이 Release() 된다면 마찬가지로 매개변수로 전달받다가 문제되는 상황 아닌가요? 궁금합니다
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part3: 자료구조와 알고리즘
수업 이해도 질문
매번 강의 잘 시청하고 있습니다. 강의 듣다가 제대로 이해하고 있는가와 질문 사항이 있어 이렇게 글을 남깁니다. 1.알고리즘 와 같은 그래프일경우 경로:1->2->(1->3)3->(1->3->4)4 이며 코스트:(3+6)9 2.코드 for (auto it = discover.begin(); it != discover.end(); ++it) { /.........code..../ } ===========>역할:지금까지 다녀온 길중에 최소 코스트가 있는지 탐색한다. for (int there=0;there<6;there++) { /.........code..../ } ============>역할:현재위치에서 인접한 간선중에서 최소 코스트를 탐색한다. 3.메모리 강의 내용을 토대로 코딩문제 사이트에서 문제를 풀었더니 메모리초과가 발생합니다. 혹시 강의의 코드에서 메모리를 줄일수 있는 부분이 있다면 어떤 것들이 있습니까? 답변해주신다면 대단히 감사하겠습니다.
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
질문입니다
res = list(res) 에서 list() 가 리스트로 자료형을 변환시켜주는 역할을 하는건가요?? 저는 list() 가 리스트 생성만 있는줄 알았는데 list가 생성되어서 res가 원소로 들어가버리면 2차원 구조가 되는게 아닌가해서 질문드립니다!
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
Read-Writer Lock 관련 질문드립니다.
안녕하세요. 제가 제대로 이해한 게 맞을까요. 1. Write lock ㄱ. 같은 스레드끼리는 상호배타적이지 않음 ㄴ. 다른 스레드가 접근했을 때는, spin(5000번). 시간 초과나면 CRASH 2. Read lock ㄱ. 같은 스레드는 Write lock을 획득한 상태에서 Read lock 획득 가능. 다른 스레드는 불가 ㄴ. Write lock을 획득한 스레드가 없다면(lock을 소유한 스레드가 없다면) 다른 스레드들도 경합 없이 Read lock을 획득할 수 있음(lock을 소유한 스레드가 있다면, 소유하지 않을 때까지 spin) ㄷ. Read lock을 획득한 상태에서는 Write lock이 획득될 수 없음(읽기 동작 중엔 쓰기가 안 됨) 3. 궁금한 점 ㄱ. 동일한 스레드가 공유 자원에 Write lock을 복수로 획득하고 쓰기 동작을 하는 게 문제가 전혀 안 생기는 건가요? 아니면 문제 생길 수도 있는 것을 고려하여 사용해야 하는 걸까요. ㄴ. 동일 스레드는 Write lock을 획득한 상태에서 Read lock을 획득할 수 있는 것은 싱글 스레드 기준 쓰기/읽기 동작이 동시에 일어날 수 없기 때문일까요? 감사합니다.
-
미해결실전! 웹사이트제작! Step by Step! (대방산업_InteractiveWeb)
제이쿼리 구문
안녕하세요~어제 질문 드렷다가 오늘 바로 수강해서 듣기 시작햇는데 저는 말씀드렷다 시피 웹디자인 기능사 실기 준비할때는 제이뭐리를 밑에 구문저럼 간단하게 적용하는 방법 까지만 배웟었는데 이 강의에는 복잡하게 구문이 들어가 있는것 같아서 당황스러워서 질문 달아봅니다..ㅠㅠ 실무할때나 포트폴리오 웹사이트를 만들려고 할때 제이쿼리 구문에 대해서 더 공부해서 이 강의 에서처럼 구문 적용을 해야 하는건가요?