묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨HTML+CSS+JS 포트폴리오 실전 퍼블리싱(시즌1)
30분경 article 사이의 공백에 대하여
section 밑에 자식요소 article inline -block 주고 부모 요소 section에 text-align:center를 주면 수평정렬 된다는 점 이해했습니다. 근데 article 사이사이 하얀색 여백을 없앨 수는 없나요? li 태그로 가로 정렬되어도 사이사이 여백이 있어서 nav로 만들때 간격이 생기네요..
-
해결됨쉽게 배워보는 파이참(PyCharm) 핵심 가이드
맥북 세팅 위치
파일에 들어가도 setting이 안뜨네요ㅠㅠ 어디에서 찾을 수 있나요?
-
해결됨성공적인 SQL 인젝션 공격을 위한, SQL 기본 문법
서브쿼리 7:48부분 select name, (select email from member where seq=a.seq) from member a;
선생님이랑 똑같이 입력했는데 레코드가 1개 이상이라고 에러가 나는데 왜 그런건가요? 혹시 제가 실수로 같은 seq,name,emai인 것들을 여러 번 추가했는데 그래서 그런건가요? 강의와 관련있는 질문을 남겨주세요.• 강의와 관련이 없는 질문은 지식공유자가 답변하지 않을 수 있습니다. (사적 상담, 컨설팅, 과제 풀이 등)• 질문을 남기기 전, 비슷한 내용을 질문한 수강생이 있는지 먼저 검색을 해주세요. (중복 질문을 자제해주세요.)• 서비스 운영 관련 질문은 인프런 우측 하단 ‘문의하기’를 이용해주세요. (영상 재생 문제, 사이트 버그, 강의 환불 등) 질문 전달에도 요령이 필요합니다.• 지식공유자가 질문을 좀 더 쉽게 확인할 수 있게 도와주세요.• 강의실 페이지(/lecture) 에서 '질문하기'를 이용해주시면 질문과 연관된 수업 영상 제목이 함께 등록됩니다.• 강의 대시보드에서 질문을 남길 경우, 관련 섹션 및 수업 제목을 기재해주세요. • 수업 특정 구간에 대한 질문은 꼭 영상 타임코드를 남겨주세요! 구체적인 질문일수록 명확한 답을 받을 수 있어요.• 질문 제목은 핵심 키워드를 포함해 간결하게 적어주세요.• 질문 내용은 자세하게 적어주시되, 지식공유자가 답변할 수 있도록 구체적으로 남겨주세요.• 정확한 질문 내용과 함께 코드를 적어주시거나, 캡쳐 이미지를 첨부하면 더욱 좋습니다. 기본적인 예의를 지켜주세요.• 정중한 의견 및 문의 제시, 감사 인사 등의 커뮤니케이션은 더 나은 강의를 위한 기틀이 됩니다. • 질문이 있을 때에는 강의를 만든 지식공유자에 대한 기본적인 예의를 꼭 지켜주세요. • 반말, 욕설, 과격한 표현 등 지식공유자를 불쾌하게 할 수 있는 내용은 스팸 처리 등 제재를 가할 수 있습니다.
-
미해결스프링 핵심 원리 - 기본편
싱글톤 객체의 공유
안녕하세요 강사님, 오랜만에 질문을 드립니다. 싱글톤 패턴은 하나의 객체만을 사용하기 때문에 모든 사용자가 하나의 객체를 서로 공유하여 사용하게 될 텐데요. 교재를 보니 이로 인한 여러가지 문제점들에 대해서 다음 강에 설명하시는 거 같네요. 여기서 궁금한 것은, stateful 문제, 쓰기 문제 등의 문제점들을 제외하고는 하나의 객체를 수많은 사용자가 공유한다는 사실 그 자체에서는 문제가 전혀 없는 것인가요? 객체라는 것을 프로그램 내부에서 기능을 수행하기 위한 도구(?) 쯤으로 생각하고 있어서 이런 의문이 생기는 거 같네요. 하나의 도구를 전 세계의 수많은 사용자들이 동시에 사용하는데 문제가 없을까? 하는.. 감사합니다.
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
머신비전에서의 딥러닝 적용유무에 대해서 궁금합니다
안녕하세요. 제가 머신비전쪽에서 불량검출 목적으로 딥러닝을 사용하려고 해서 강의를 수강하고 있습니다. 실제 카메라와 조명을 이용해서 사진을 찍고난 후 이것을 라벨링을 하려고 합니다. 그런데 제가 조사한 툴들은 입력은 이미지는 PNG, BMP 등 무손실 압축파일형식을 지원하는데 라벨링을 한 출력은 JPG로만 저장을 가능케 하더라고요. VOC나 Open Image를 봐도 jpg로 훈련 셋을 제공하고 있더라고요. 불량검출쪽에서 jpg를 잘 안쓴다고 하는데, 실제 경험해본 사례나 조언해주실 내용이 있으신가요?jpg로 훈련을 시켜도 잘 검출이 되려나요? 감사합니다
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
JdbcMemberRepository만들때
DataSource를 사용하기 위해 주입받기위해 public JdbcMemberRepository(Datasource dataSource) { this.datasource = dataSource; } 이구문을 썼는데 DataSource 스프링에서 자동으로 생성관리하는 빈이라고 한다면 위의 함수에 @Autowired를 써주면 될것같은데 왜 안써주는건가요? 그리고 그걸 왜 굳이 @Congiration이는 설정 파일에서 그곳에서 @Autowired를 사용하는 함수를 만들고 그곳에서 @Bean 설정할때 JdbcMemberRepository생성하면서 인자값으로 넣어주나요? 결론은 JdbcMemberRepository에서 Autowired로 주입하지 않고 왜 Configurtion 파일 그곳에서 DataSource를 주입하는지 이해가 안갑니다.
-
모든 개발자를 위한 HTTP 웹 기본 지식
URI
삭제된 글입니다
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
panel의 용도
canvas밑에 panel을 추가하는 이유는 button의 anchor를 사용하기위함뿐인가요??
-
미해결실전! 스프링 데이터 JPA
Spring Data JPA로 Redis를 사용할 수 있을까요?
안녕하세요 영한님 언제나 좋은 강의 너무 감사합니다 ! 다름아니라 질문이 있습니다 보통 Mysql, h2 데이터베이스를 연결하는데, 혹시 Redis 를 캐시용도가아니라, 진짜 DB처럼 이용하는 방식으로 JPA를 사용할 수 없을까요?
-
해결됨Axure RP 9,10 - 서비스 기획자를 위한 최적의 프로토타이핑 툴
플로우 라이브러리 도형이 왜 미리 색이 채워져 있는지 모르겠어요
안녕하세요~ 사진처럼 플로우 도형 넣으면 항상 회색으로 채워져있는데 컬러는 하얀색이고, 도형 가운데가 반으로 나뉘어 있거든요?왜 이런지 모르겠네요지금까지는 가운데 초록점을 아래로 내려서 하얗게 만들어주고 있어요 수동으로요 ㅎㅎ;
-
미해결인공지능 기초수학
교안 부탁 드립니다.
안녕하세요! 좋은 강의 감사 드립니다. 교안이 있다면 학습에 큰 도움이될 것 같습니다! 혹시 가능하시다면 아래 메일 주소로 부탁드리겠습니다! 감사합니다! doch2202@htus.ac.kr
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
빌드 문제
안녕하세요. 좋은 강의 잘 듣고있습니다. 말씀하신대로 cmd에서 빌드를 하려고하는데 실행창에서 실행할 수 없는 파일이라고 합니다. 환경변수 JAVA_HOME만들고 C:\Program Files\Java\jdk-11.0.9 변수값을 설정하고 Path에 %JAVA_HOME%\bin를 추가했는데 cmd에서 실행명령어가 잘못된걸까요?
-
미해결홍정모의 따라하며 배우는 C언어
1.13 강의에서 a.exe 오류가 뜨시는 것을 보여주셨는데 저는 오류가 안 뜨고 작동이 되는데 왜 그런건가요?
(사진)
-
미해결애플 웹사이트 인터랙션 클론!
질문있습니다.
텍스트들이 opavity 0과 1로 변하고 20~0 ,0 ~-20 으로 가는 부분 진행중에 있어서 문제 사항이 있어서 질문드립니다. 맨처음 시작시 sticky-elem 의 값이 tranlateY(40%)가 되서 시작이 되고 0.1 에서 0.2 부분까지는 잘되지만 0.25에서 0.3 가는 부분에서 텍스트가 덜컹거립니다. 어느 부분이 문제인지 궁굼하니다. (()=>{ let yOffset = 0; // window.pageYOffset 대신 쓸 변수 let prevScrollHeight = 0; // 현재 스크롤 위치보다 이전에 위치한 스크롤 섹션들의 스크롤 높이의 합 let currentScene = 0; // 현재 활성화된( 눈 앞에 보고 있는 ) 씬 ( scroll-section) let enterNewScene = false; // 새로운 scene 이 시작되는 순간 true; const sceneInfo = [ { // scrollSection : 0 type : 'sticky', heightNum : 5, // 브라우저 높이의 5배로 scollHeight 세팅 scrollHeight : 0, objs: { container: document.querySelector("#scroll-section-0"), messageA: document.querySelector("#scroll-section-0 .main-message.a"), messageB: document.querySelector("#scroll-section-0 .main-message.b"), messageC: document.querySelector("#scroll-section-0 .main-message.c"), messageD: document.querySelector("#scroll-section-0 .main-message.d"), }, values: { messageA_opacity_in: [0, 1, { start: 0.1, end: 0.2 }], messageA_translateY_in: [20, 0, { start: 0.1, end: 0.2 }], messageA_opacity_out: [1, 0, { start: 0.25, end: 0.3 }], messageA_translateY_out:[0, -20,{start:0.25, end: 0.3}], } }, { // scrollSection 번호 : 1 type : 'normal', heightNum : 5, // 브라우저 높이의 5배로 scollHeight 세팅 scrollHeight: 0, objs: { container: document.querySelector("#scroll-section-1") } }, { // scrollSection 번호 : 2 type : 'sticky', heightNum : 5, // 브라우저 높이의 5배로 scollHeight 세팅 scrollHeight: 0, objs: { container: document.querySelector("#scroll-section-2") } }, { // scrollSection 번호 : 3 type : 'sticky', heightNum : 5, // 브라우저 높이의 5배로 scollHeight 세팅 scrollHeight: 0, objs: { container: document.querySelector("#scroll-section-3") } } ]; function setLayout() { // 각 스크롤 섹션의 높이 세팅 for(let i = 0; i < sceneInfo.length; i++){ sceneInfo[i].scrollHeight = sceneInfo[i].heightNum * window.innerHeight; sceneInfo[i].objs.container.style.height = `${sceneInfo[i].scrollHeight}px`; } let yOffset = window.pageYOffset; let totalScrollHeigt = 0; for(let i =0; i < sceneInfo.length; i++){ totalScrollHeigt += sceneInfo[i].scrollHeight; if(totalScrollHeigt >= yOffset){ currentScene=i; break; } } document.body.setAttribute('id', `show-scene-${currentScene}`); } function calcValues(values, currentYOffset){ let rv; // 현재 씬에서 스크롤된 범위를 비율로 구하기 const scrollHeight = sceneInfo[currentScene].scrollHeight; const scrollRatio = currentYOffset / scrollHeight; if( values.length === 3){ // start ~ end 사이에 애니메이션 실행 const partScrollStart = values[2].start * scrollHeight; const partScrollEnd = values[2].end * scrollHeight; const partScrollHeight = partScrollEnd - partScrollStart; if(currentYOffset => partScrollStart && currentYOffset <= partScrollStart){ rv = (currentYOffset - partScrollStart) / partScrollHeight * (values[1] - values[0]) + values[0]; } else if ( currentYOffset < partScrollStart){ rv = value[0]; } else if (currentYoffset > partScrollEnd){ rv= value[1] ; } } else { rv = scrollRatio * (values[1] - values[0]) + values[0]; } return rv; }; function playAnimation(){ const values = sceneInfo[currentScene].values; const objs = sceneInfo[currentScene].objs; const currentYOffset = yOffset - prevScrollHeight; const scrollHeight = sceneInfo[currentScene].scrollHeight; const scrollRatio = currentYOffset / scrollHeight; switch(currentScene) { case 0 : const messageA_opacity_in = calcValues(values.messageA_opacity_in, currentYOffset); const messageA_opacity_out = calcValues(values.messageA_opacity_out, currentYOffset); const messageA_translateY_in = calcValues(values.messageA_translateY_in, currentYOffset); const messageA_translateY_out = calcValues(values.messageA_translateY_out, currentYOffset); if(scrollRatio <= 0.22){ // in objs.messageA.style.opacity = messageA_opacity_in; objs.messageA.style.transform = `translateY(${messageA_translateY_in}%)`; } else { // out objs.messageA.style.opacity = messageA_opacity_out; objs.messageA.style.transform = `translateY(${messageA_translateY_out}%)`; } case 1 : break; case 2 : break; case 3 : break; } }; function scrollLoop(){ prevScrollHeight = 0; enterNewScene = false; for(let i = 0; i< currentScene; i ++){ prevScrollHeight += sceneInfo[i].scrollHeight; } if(yOffset > prevScrollHeight + sceneInfo[currentScene].scrollHeight){ enterNewScene = true; currentScene++; document.body.setAttribute('id', `show-scene-${currentScene}`); } if(yOffset < prevScrollHeight){ enterNewScene = true; if(currentScene===0) return; // 브라우저 바운스 모바일 currentScene--; document.body.setAttribute('id', `show-scene-${currentScene}`); } if(enterNewScene) return; playAnimation(); } window.addEventListener('scroll', ()=>{ yOffset = window.pageYOffset; scrollLoop(); }); window.addEventListener('resize',setLayout); window.addEventListener('load', setLayout); setLayout(); }) ();
-
미해결디자인 패턴 with JAVA (GoF)
질문입니다
spring을 공부하다 보면 XXFactory라는 클래스라는 이름을 가진 것들이 있었는데, 프레임워크도 내부적으로 이런 디자인 패턴을 사용해서 고안된 것이라고 이해해도 될까요??
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
예제 파일
예제파일들이 몇개씩 사라진거 같아요..! 여기 강의에도 예제 파일이 안뜨네요ㅠㅠ
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
질문이있습니다..
강의를 듣다가 관계형 db와 기본적인 sql 지식이 부족하다고느껴 책들을 찾아봤습니다 http://www.yes24.com/Product/Goods/69775589 http://www.yes24.com/Product/Goods/67882661 두가지중에 어떤것이 나을까요? 그리고 여기 나와있는 목차들말고도 추가로 알아야 할부분이있을까요?? 서점에 직접 가서 봤는데도 어떤것이 필요할지 그림이 안그려져서 구입못하고 나왔습니다 ㅠㅠ
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
검색이 되는걸 확인하는게 안떠요....
캡쳐 사진처럼 test까지만 쳐도 test_module 자동완성이 저는 왜 안될까요.. 수기로 끝까지 치면 코딩에 문제는 없다만 강의 초반부터 몇글자 쳤을때 주르륵 뜨는게 선생님이 훨씬 많으시더라구요! autucomplete-python 은 다운이 되어있습니다..!
-
해결됨하루만에 만드는 깃허브 블로그
거의 따라가는데 여기서 에러가 생기네요
C:/gitblog/vendor/bundle/ruby/2.7.0/gems/execjs-2.7.0/lib/execjs/external_runtime.rb:39:in `exec': SyntaxError: 식별자가 필요합니다. (ExecJS::RuntimeError)
-
미해결크롬 확장 프로그램으로 업무 생산성 높이기
강의 소리가 안 들려요
강의 소리가 안 들려요