묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결선형대수학개론
The zero vector is in H
부분집합이 되기 위해서 세 가지 조건을 만족해야 한다는 것을 이해는 했습니다만, 첫번 째인 0벡터가 H에 해당되어야 한다는 점이 아직 이해가 잘 가지 않습니다. 제가 0벡터의 개념을 잘 이해하지 못 하는 거 같은데. 0벡터는 말 그대로 3차원 공간에서 원점 아닌가요? 근데 만약 원점을 지난다고 하더라도, 부분공간이 무조건 원점에 접해야 될 이유가 있어야 하는지도 직관적으로 이해가 잘 안 갑니다.
-
미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
POST관련 질문 드립니다
강의와 관련있는 질문을 남겨주세요.• 강의와 관련이 없는 질문은 지식공유자가 답변하지 않을 수 있습니다. (사적 상담, 컨설팅, 과제 풀이 등)• 질문을 남기기 전, 비슷한 내용을 질문한 수강생이 있는지 먼저 검색을 해주세요. (중복 질문을 자제해주세요.)• 서비스 운영 관련 질문은 인프런 우측 하단 ‘문의하기’를 이용해주세요. (영상 재생 문제, 사이트 버그, 강의 환불 등) 질문 전달에도 요령이 필요합니다.• 지식공유자가 질문을 좀 더 쉽게 확인할 수 있게 도와주세요.• 강의실 페이지(/lecture) 에서 '질문하기'를 이용해주시면 질문과 연관된 수업 영상 제목이 함께 등록됩니다.• 강의 대시보드에서 질문을 남길 경우, 관련 섹션 및 수업 제목을 기재해주세요. • 수업 특정 구간에 대한 질문은 꼭 영상 타임코드를 남겨주세요! 구체적인 질문일수록 명확한 답을 받을 수 있어요.• 질문 제목은 핵심 키워드를 포함해 간결하게 적어주세요.• 질문 내용은 자세하게 적어주시되, 지식공유자가 답변할 수 있도록 구체적으로 남겨주세요.• 정확한 질문 내용과 함께 코드를 적어주시거나, 캡쳐 이미지를 첨부하면 더욱 좋습니다. 기본적인 예의를 지켜주세요.• 정중한 의견 및 문의 제시, 감사 인사 등의 커뮤니케이션은 더 나은 강의를 위한 기틀이 됩니다. • 질문이 있을 때에는 강의를 만든 지식공유자에 대한 기본적인 예의를 꼭 지켜주세요. • 반말, 욕설, 과격한 표현 등 지식공유자를 불쾌하게 할 수 있는 내용은 스팸 처리 등 제재를 가할 수 있습니다. 안녕하세요, 실습을 진행하면서 추가적으로 datepicker를 사용해서 날짜 값을 받아와서 라우터를 통해 몽고디비에 저장하는 것을 시도해보았습니다. 버튼을 클릭하면 달력에서 해당 날짜를 받아오는 것 까지는 했는데, 해당 값을 라우터로 전송한 뒤 콘솔에 출력해보면 빈 객체가 전송이 됩니다. 라우터 부분입니다 어떤 방식으로 데이터를 전송해야 올바르게 날짜 값이 갈 수 있을까요? 감사합니다.
-
미해결C 와 C++ 을 동시에 배워보자 - 두들낙서의 C/C++
이렇게 하면 이상한 결과가 나옵니다
강사님 이렇게 하면 결과가 이상하게 나옵니다 1과 2를 넣으니 3이 아니라, 12974736 이 나옵니다. 뭐가 잘못된거죠? 결과가 아스키로 나온거 같은데요 int main() { int a, b; int hap; //int hap; // int hap = a + b; 여기에 두면 variable ,without being initialized가 나옴 printf("첫번째 숫자를 입력해 주세요:"); scanf("%d", &a); printf("두번째 숫자를 입력해 주세요:"); scanf("%d", &b); hap = a + b; printf("%d\n", &hap); }
-
해결됨모든 개발자를 위한 HTTP 웹 기본 지식
모바일에서 flow
안녕하세요 김영한님. 강의를 듣다가, 문득 모바일의 경우에는 flow가 어떻게 되는지 궁금해져서 질문남깁니다. 인터넷에서 통신은 결국 IP와 Port번호를 알아야 data를 전송할 수 있는 것으로 이해하고 있습니다. 그런데, 모바일은 IP가 계속 바뀌고 Port번호를 따로 설정하지 않아도 카톡 메시지를 서버로 부터 수신할 수 있습니다. 검색을 통해, FCM이나 APNs과 같은 Push 서버를 이용해서 보낸다는 개념은 이해하였습니다만, 이 Push 서버들이 어떻게 바뀌는 모바일의 IP를 알아내는 건지, port 포워딩?은 어떻게 해결하는지 궁금합니다. 바쁘시겠지만, 답변남겨주시면 정말 감사하겠습니다.
-
미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
while문 안에 try
답에서는 while문 안에 try구문을 썼는데 혹시 while 문 밖에 try를 써도 괜찮나요?
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
데이터 업로드 관련 질문입니다.
postman으로는 데이터가 정상적으로 업로드 되는데 주피터 노트북으로는 업로드가 안됩니다. 해결하는 방법이 있을까요?
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 유튜브 사이트 만들기
선생님은 혹시 이런 에러 안뜨셨나요?
선생님 따라서 강의보고 작성하는 데 key 에러가 많이 뜨네요. 찾아보니까 component안에 prop을 줄때 key값을 안줘서 나오는 현상 같은데 어디를 어떻게 적용할지 모르겠네요. https://github.com/ohjooyeong/youtubeclone-with-react
-
실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
객체를 리턴해도
삭제된 글입니다
-
미해결웹 게임을 만들며 배우는 자바스크립트
리팩토링에 관한 질문입니다.
안녕하세요 제로초님 지뢰찾기가 어려워서 쭉 복습중인데, 드디어 조금 갈피가 잡혀서 기쁩니다. 좋은 강의 감사합니다! 수업시간에 따라한 코드리팩토링을 시도해보았어요. 그런데 이벤트단위로 쪼개서 리팩토링을 하는 게 좋을지, 아니면 세세하게 쪼개서 함수로 만들지 고민이 되어요. 질문 어떤 식이 다시 봤을 때 이해하기 쉬울까요? 시도한 리팩토링은 괜찮나요? var tbody = document.querySelector('#table tbody'); var dataset = []; var 중단플래그 = false; var 열은칸 = 0; var 코드표 = { 연칸: -1, 물음표: -2, 깃발: -3, 깃발지뢰: -4, 물음표지뢰: -5, 지뢰: 1, 보통칸: 0 }; var 줄; var 칸; var 주변; function 지뢰위치() { var 칸채우기 = Array(hor * ver).fill().map(function (인덱스) { //가로 * 세로 return 인덱스; }); //자바스크립트는 0부터 센다 var 지뢰만들기 = []; while (칸채우기.length > hor * ver - mine) { var 지뢰배치표 = 칸채우기.splice(Math.floor(Math.random() * 칸채우기.length), 1)[0]; 지뢰만들기.push(지뢰배치표); } }; function 깃발법칙() { if (e.currentTarget.textContent === '' || e.currentTarget.textContent === 'X') { //빈칸이거나 X일 때 e.currentTarget.textContent = '!'; //깃발과 물음표는 데이터일 필요가 없다. 화면에 표시하는 용도니까 e.currentTarget.classList.add('flag'); if (dataset[줄][칸] = 코드표.지뢰) { dataset[줄][칸] = 코드표.깃발지뢰; } else { dataset[줄][칸] = 코드표.깃발; } } else if (e.currentTarget.textContent === '!') { //느낌표라면 e.currentTarget.textContent = '?'; //우클릭 한 번은 느낌표, 두 번은 물음표 e.currentTarget.classList.remove('flag'); e.currentTarget.classList.add('question'); if (dataset[줄][칸] = 코드표.깃발지뢰) { dataset[줄][칸] = 코드표.물음표지뢰; } else { dataset[줄][칸] = 코드표.물음표; } } else if (e.currentTarget.textContent === '?') { //물음표라면 e.currentTarget.classList.remove('question'); if (dataset[줄][칸] === 코드표.물음표지뢰) { e.currentTarget.textContent = 'X'; dataset[줄][칸] = 코드표.지뢰; } else { e.currentTarget.textContent = ''; dataset[줄][칸] = 코드표.보통칸; } } }; function 오픈법칙() { dataset[줄][칸] = 1; //배열 안에 숫자를 넣자(기본설정 = 0) var 주변 = [dataset[줄][칸-1], dataset[줄][칸+1]]; //왼쪽, 오른쪽 확인 if (dataset[줄-1]) { //윗줄 검사 주변 = 주변.concat([dataset[줄-1][칸-1], dataset[줄-1][칸], dataset[줄-1][칸+1]]); } else if (dataset[줄+1]) { //아랫줄 검사 주변 = 주변.concat([dataset[줄+1][칸-1], dataset[줄+1][칸], dataset[줄+1][칸+1]]); } var 주변확인 = 주변.filter(function(v) { return [코드표.지뢰, 코드표.깃발지뢰, 코드표.물음표지뢰].includes(v); //모든 지뢰를 세자 } }; function 주변법칙() { if (주변확인 === 0) { console.log('주변을 엽니다'); var 주변칸 = []; if (tbody.childre[줄-1]) { 주변칸 = 주변칸.concat([ tbdoy.children[줄-1].children[칸-1], tbdoy.children[줄-1].children[칸], tbdoy.children[줄-1].children[칸+1] ]); if (tbody.childre[줄-1]) { 주변칸 = 주변칸.concat([ tbdoy.children[줄].children[칸-1], tbdoy.children[줄].children[칸+1] ]); if (tbody.childre[줄-1]) { 주변칸 = 주변칸.concat([ tbdoy.children[줄+1].children[칸-1], tbdoy.children[줄+1].children[칸], tbdoy.children[줄+1].children[칸+1] ]); } //열려있는 칸을 또 열릴 필요없게 수습하자 dataset[줄][칸] = 1; //배열 안에 숫자를 넣자(기본설정 = 0) 주변칸.filter(function(v) {return !!v}).forEach(function(옆칸) { //칸 위치 파악 var 부모tbody = e.currentTarget.parentNode.parentNode; var 부모tr = e.currentTarget.parentNode; //몇 줄? var 옆칸줄 = Array.prototype.indexOf.call(부모tbody.children, 부모tr); var 옆칸칸 = Array.prototype.indexOf.call(부모tr.children, e.currentTarget); //e.currentTarget = td if (dataset[옆칸줄][옆칸칸] !== 코드표.연칸) { 옆칸.click(); } }); } } //지뢰를 제외한 모든 칸이 열리면 승리함 if (열은칸 === hor * ver - mine) { document.querySelector('#result').textContent = '승리하셨습니다~!'; } } }; function 지뢰만드는규칙() { for (var k = 0; k < 지뢰만들기.length; k++) { //배열은 0부터 시작하기에 -1이 나와선 안 된다 var 세로 = Math.floor(지뢰만들기[k] / ver); var 가로 = 지뢰만들기[k] % ver; tbody.children[세로].children[가로].textContent = 'X'; //지뢰를 심는다, 화면 dataset[세로][가로] = 코드표.지뢰; //데이터, 화면과 데이터는 일치해야 됨! } }; //지뢰찾기 실행 document.querySelector('#exec').addEventListener('click', function() { //이전 게임 초기화 tbody.innerHTML = ''; document.querySelector('#result').textContent = ''; dataset = []; 열은칸 = 0; 중단플래그 = false; //input의 아이디들 var hor = parseInt(document.querySelector('#hor').value); var ver = parseInt(document.querySelector('#ver').value); var mine = parseInt(document.querySelector('#mine').value); //지뢰위치 지뢰위치(); //지뢰테이블 for (var i = 0; i < ver; i += 1) { //2차원 배열, 세로 만들기 var arr = []; //지뢰표에 배열을 깔자 var tr = document.createElement('tr'); dataset.push(arr); for (var j = 0; j < hor; j += 1) { //가로 만들기 arr.push(코드표.보통칸); var td = document.createElement('td'); //오른쪽 클릭방지 td.addEventListener('contextmenu', function(e) { e.preventDefault(); if (중단플래그) { return; } //칸 위치 파악 var 부모tbody = e.currentTarget.parentNode.parentNode; var 부모tr = e.currentTarget.parentNode; //몇 줄? 줄 = Array.prototype.indexOf.call(부모tbody.children, 부모tr); //배열이 아니여도 indexOf()를 쓸 수 있다 칸 = Array.prototype.indexOf.call(부모tr.children, e.currentTarget); //e.currentTarget = td //깃발법칙 깃발법칙(); ); //클릭 시, 주변 지뢰 파악 td.addEventListener('click', function(e) { if (중단플래그) { return; } //칸 위치 파악 var 부모tbody = e.currentTarget.parentNode.parentNode; var 부모tr = e.currentTarget.parentNode; //몇 줄? 줄 = Array.prototype.indexOf.call(부모tbody.children, 부모tr); //배열이 아니여도 indexOf()를 쓸 수 있다 칸 = Array.prototype.indexOf.call(부모tr.children, e.currentTarget); //e.currentTarget = td if ([코드표.연칸, 코드표.깃발, 코드표.깃발지뢰, 코드표.물음표지뢰, 코드표.물음표].includes(dataset[줄][칸])) { return; } //지뢰의 유무확인 e.currentTarget.classList.add('opend'); 열은칸 += 1; if (dataset[줄][칸] === 코드표.지뢰) { e.currentTarget.textContent = '펑'; document.querySelector('#result').textContent = '다시 도전하세요!'; 중단플래그 = true; } else { //지뢰가 없다면 dataset[줄][칸] = 1; //배열 안에 숫자를 넣자(기본설정 = 0) 주변 = [dataset[줄][칸-1], dataset[줄][칸+1]]; //왼쪽, 오른쪽 확인 오픈법칙().length; e.currentTarget.textContent = 주변확인 || ''; //숫자 0은 표시가 되지 않도록! dataset[줄][칸] = 코드표.연칸; //지뢰없는 부분을 한꺼번에 열리도록 만들자 주변법칙(); ); tr.appendChild(td); //td는 tr에 속하고 } tbody.appendChild(tr); //tr은 tbody에 속한다 } //지뢰 심기: 규칙을 찾아서 랜덤숫자의 위치에 지뢰를 배치시키자 지뢰만드는규칙(); });
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
안녕하세요 시퀀스관련 문의드립니다.
안녕하세요 언제나 강의 잘 듣고 있습니다. 오라클을 사용하고 서버가 여러대인 상황에서 시퀀스 사용에 대해 질문이 있어서요 시퀀스가 유니크한것을 보장하기도 하지만 디비에 인서트되는 순서 보장을 하기 위해서 사용하기도 하는데 allocationsize를 사용하게 될 경우 서버간 할당받는 시퀀스 영역대가 달라 순서보장이 안될것 같아서요, 혹시 이런 경우는 어떻게 처리할까요? 그리고 오라클 디비를 사용하는데 Identity 전략을 사용하면 어떤일이 발생하나요?
-
해결됨모든 개발자를 위한 HTTP 웹 기본 지식
Persistent Connection 질문입니다.
안녕하세요 김영한님. Persistent Connection 질문입니다. 제가 간단한 웹 프로젝트를 운영하고 있는데, 자동으로 Persistent Connection가 적용된 것처럼 보입니다. 원래 따로 설정을 해주어야 적용이 되는 건지, g유니콘이나 그런 앱에서 알아서 처리를 해주는 건지, HTTP 자체적으로 기본설정이 되어 있는 건지, 궁금합니다!
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
.jsx로 저장해도 되나요?
안녕하세요, 선생님 youtube에서 기본강의 보고 찾아온 학생입니다. 코드를 보면 jsx문법을 사용하고 있는 것 같은데 .js를 .jsx로 저장해도 문제가 없을까요? 어느 날부터 .js 파일을 저장하면 사진처럼 < 다음에 자동 줄 바꿈이 되어버리는 오류가 있어서요. prettier 확장 파일도 지워보고 재설치 후 세팅도 바꾸면서 이유를 찾아보려고 했는데 원인을 모르겠네요.. .js가 아닌 .jsx로 저장하면 자동으로 정렬되는 현상이 없는데 왜 그럴까요?
-
미해결스프링 핵심 원리 - 기본편
@autowired 가 이해가 잘 안가는데요
질문내용들을 읽어보니 저랑 비슷하게 질문한글들을 몇개 봤는데 이해가 아직 앋가서요 ㅠㅠ testBean 클래스는 지난강의에 알려주셨던 임의의 클래스를 스프링이 생성해서 스프링빈에 등록된다는건 이해했습니다 !! 근데 @bean 어노테이션이 없는데 autowired 만으로도 bean 객체가 생성되는건가요..? ======================================================================================================================================= 잠깐 일중에 생각을 좀 해봤는데요 !! TestBean 클래스 자체가 빈객체라고 보면 MemberSerivceImpl 클래스 에서 필요한 MemberRepository를 autowired로 스프링이 자동 주입해주듯이 TestBean 클래스에서 autowired 어노테이션이 붙은 애들도 자동주입해주는거라 보면 될거같은데 맞게 이해한건가요..?
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
인피니트 스크롤링 반복
강좌 내용대로 적용했는데, 스크롤을 하단으로 내리면, 총 게시물 숫자가 50이 될때까지 request, success가 5번 반복됩니다. 그리고 게시물이 추가될 때마다 스크롤이 젤 하단에 머물어 추가된 게시글 젤 하단에 스클롤이 멈춰 있습니다. 이유가 뭘까요?
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
nest js 입문 관련 질문입니다.
로초쌤 덕분에 자신감이 생기고 있습니다. 감사의 말씀을 항상 드립니다. 다름이 아니라 포폴용으로는 블로그 추천하시기도 해서 Nest/Next 조합으로 블로그를 만들려고 하는데, 내친 김에 Typescript도 같이 배우려고 합니다. ORM을 기존엔 sequelize를 썼는데, 이번엔 typeorm이나 prisma 둘 중 하나를 시도하려고 하는데 블로그용으로 어떤거를 더 추천하는지 여쭤보겠습니다.
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
알수 없는 오류...
안녕하세요~ John Ahn 강사님강사님의 강좌를 보고 학습중인 학생입니다.다름이 아니라 잘되다가 문제가 생겼습니다..처음엔 //eslint-disable-next-line 을 사용한 후 잘 되는듯 하더니.. 마지막강의를 테스트 하는도중 위의 사진과 같은 에러가 떴는데 왜 그런지 알고 싶습니다..(오류메세지대로 확인해봐도 노드모듈이 왜...크리에이트프록시미들웨어가 왜 함수가 아닌지....도통 감을 못잡겠습니다. 뭘 잘못건드린건지.. 오타가있는건지...)긍정적인 검토 부탁드리며, 답글 기다리겠습니다.github 주소 : https://github.com/kebin0613/Node-Study.git
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
프라이머리키가 안떠요 ..
강사님처럼 pk값과 같이 가져오는게 안되네요 .. 왜그런걸까요?? 프라이머리키도 같이 있는게 떠야하는데,... 안뜨구... 저는 심지어 주황색으로 어노테이트 북마크도 되지 않습니다.. 어노테이트 클릭도 못하게 되어있어요 검은색 드라큘라 바탕은 강사님 수업을 캡쳐한것이고 흰색바탕은 제가 실행한걸 캡쳐한거에요!
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
셀단위 이동이 아닐때의 구현 질문
안녕하세요! 강의를 보던 중 궁금한 점이 생겨 글을 남기게 되었습니다. 이번 강의에서 만드신 게임의 동작방식을 보면 플레이어가 셀단위로 이동을 하는걸 알 수 있는데요. 이렇게 셀단위로 이동할 경우 서버에서의 충돌체크나 AI의 길찾기를 모두 셀단위를 기준으로 하게 되어 간편하게 할 수 있는것 같습니다! 그런데 이런 방식이 아니라 Part#4에서 만드셨던것처럼 자유롭게 케릭터가 이동 가능한 경우, 서버에서의 충돌처리나 이동가능 체크, 길찾기는 어떤방식으로 하게 되나요? 가장 단순하게 생각하면 셀을 아주 미세하게 쪼개서 대량으로 만들고 케릭터의 크기만 키우는 방법이 있을것 같은데요. (셀 간의 간격이 좁으므로 셀단위 이동이라는 느낌이 안들게 되겠죠) 이렇게 할 경우 너무 많은 셀을 만들게 되어 메모리는 그렇다 쳐도 AI의 길찾기 속도 저하등 퍼포먼스 문제가 발생하여 일반적으로는 사용되지 않을것 같습니다. 그렇다면 Part#4와 같은 게임에서는 어떤 방식을 사용하여 처리하는 지가 궁금합니다. (충돌처리 방법, 서버 맵데이터를 뽑는 방법 등등..) 내용이 광범위 하다면 검색 키워드나 관련 정보의 URL이라도 부탁드리겠습니다. 감사합니다!
-
미해결공공데이터로 파이썬 데이터 분석 시작하기
'tooltip' 오류
m = folium.Map(location=[lat, long], zoom_start=12) folium.Marker([37.5545, 126.867], tooltip="해법수학").add_to(m) m 위와 같은 코드 작성시에, TypeError: __init__() got an unexpected keyword argument 'tooltip' 이와 같은 오류가 생깁니다. conda install -c conda-forge folium 이대로 설치도 했고, 혹시나 업데이트가 안되어 있나해서 업데이트도 했는데 동일 오류가 발생합니다. 어떻게 해야 해결할 수 있을까요? 답변 미리 감사드립니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
H2서버 초기화 문제
강사님 H2 DB가 쿼리를 INSERT할때마다 초기화가 되네요 !혹시 H2에 설정을 해야하는 부분이 있을까요? 원래대로라면 ID 1,2 이렇게 차례대로 들어가야 하는데 INSERT할때마다 초기화가 됩니다.