묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결HTML+CSS+JS 포트폴리오 실전 퍼블리싱(시즌1)
inline-block , position: absolute
span 태그에 position:absolute를 주면 display 속성이 inline-block으로 변경되는걸로 알고있습니다. 그래서 .square 태그에 position: relative .square span 태그에 position: absolute 를 주지 않고 .square span 태그에 display: inline-block 으로 주고 만들면 3개의 span 태그가 겹치는게 아니라 각각 분리되더라고요 분리되는 이유가 뭔지 알수 있을까요?
-
미해결스프링 핵심 원리 - 고급편
람다식에 대한 질문 드립니다.
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] "주의"부분을 보면 가급적이면 사용하지 않는 것이 좋다고 하셨고 람다식을 사용하는 방법이 있다는 얘기를 듣고 아래와 같이 코드를 작성 해보았습니다. 이러한 방향으로 작성해도 좋은지 궁금하여 질문 드립니다. 사실 아래와 같은 방향으로 가게된다면 많은 "인터페이스가 생기가 되는 것 같아서" 공통만 해결하고 실제 수업에 말하고자 하는 이점은 얻지 못하는 것 같아서 질문드립니다.
-
미해결실무에서 바로 쓰는 영어 이메일
강의 자료 요청 드려요.
강의 자료 요청 드려요. haewon.lee@halla.com
-
미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
next('route') 질문드립니다
강사님 안녕하세요 next('route') 는 다음 라우트 함수 next( ) 는 같은 라우트 내에서 다음 콜백함수 로 이해가 되었습니다 그런데, 16행 다음 18행이 실행되어서 혹시 그 이유를 가르쳐주시면 감사하겠습니다 읽어주셔서 감사합니다
-
미해결Slack 클론 코딩[백엔드 with NestJS + TypeORM]
Exception Filter와 관련하여 질문있습니다.
안녕하세요. 14:00 쯤에 미들웨어에서 발생한 에러는 Exception Filter에서는 catch되지 않는다고 말씀하셔서 확인 해보기 위해 main.ts에서 미들웨어를 만들어서 테스트 해봤는데요. 저는 미들웨어서 throw한 에러도 Exception Filter에서 잡히는 것 같아 질문드립니다. main.ts의 코드는 아래와 같습니다. //main.ts app.use((req, res, next) => { throw new HttpException('미들웨어 에러 테스트', 400); next(); }); //http-exception.filter.ts import { ArgumentsHost, Catch, ExceptionFilter, HttpException, } from '@nestjs/common'; import { Response } from 'express'; @Catch(HttpException) export class HttpExceptionFilter implements ExceptionFilter { catch(exception: HttpException, host: ArgumentsHost) { const ctx = host.switchToHttp(); const response = ctx.getResponse<Response>(); const status = exception.getStatus(); const error = exception.getResponse() as | string | { error: string; statusCode: number; message: string | string[] }; console.log('Exception Filter 동작 확인용'); console.log(error); return response.status(status).json({ code: status, data: typeof error === 'string' ? error : error.message, }); } } '/ '경로로 접속 시 콘솔은 다음과 같았습니다. 위 결과로 보아 미들웨어에서 발생한 에러도 Exception Filter에서도 에러를 잡아주는 것으로 판단 했는데요, 혹시 제가 잘못 테스트한 부분이 있으면 알려주시면 감사하겠습니다.
-
미해결Do it! 자바 프로그래밍 입문 with 은종쌤
removeMember 메서드작성할때 왜 boolean반환으로 작성하죠?
32:30 쯤에 잘 지워졌는지 확인하기 위해서 public boolean removeMember(int memberId){} 이렇게 작성하신다고 했는데 public void 로 작성하고 지워진경우 system.out.println으로 잘 지워졌다고 콘솔에 띄우고 안지워진경우 잘 안지워졌다고 콘솔에 띄우면 되는거 아닌가요?
-
미해결스프링 배치
jobLauncherTestUtils 빨간 줄 질문입니다.
jobLauncherTestUtils에 강의에서도 보면 빨간 밑줄표시가 되어 있는데요Could not autowire. No beans of 'JobLauncherTestUtils' type found경고 문구를 보면 위에처럼 해당 타입의 빈을 찾을수 없다는 표시인데 실행하면 잘 되더라구요.. 그냥 무시하기에는 찝찝해서 왜 이런건지 혹시 알 수 있을까요?
-
미해결해커를 위한 iOS 앱 모의 해킹 전문 과정
keychain_dumper 파일
강의 내 url에서 압축파일에 keychain_dumper 파일이 따로 있지않아서 별도로 dumper1.0.0 압축파일 받았는데 오류가 납니다. 방법이 있을까요? 아이폰 6 ios 12.4.6 버전 입니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
406 에러
안녕하세요. 강의 내용과 코드 동일하게 작성했는데, org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation 에러가 떠서 질문드립니다. json 라이브러리는 starter-web 추가시 함께 추가되는 걸로 알고 있는데, 라이브러리를 따로 추가하여야 할까요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
처음으로 helloServlet 실행 시 Whitelabel Error Page가 나옵니다.
코드를 동일하게 쳤는데도 localhost:8080/hello 로 들어가도 Whitelabel Error Page가 나오고 아무 반응이 없습니다. 어떤걸 제가 잘못한걸까요..ㅠ 추가적으로 캡쳐화면에서는 urlPatterns가 그냥 hello로 되어 있지만 /hello로 수정해도 동일합니다.
-
미해결우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
%r이 무엇인지 질문드립니다.
벡터 클래스에서 인스턴스 함수 __repr__에 return 'Vector(%r, %r)'에서 %r이 무슨 뜻인가요. 검색해봐도 나오지 않아서 질문드려요.
-
미해결선형대수학개론
pivot position과 det의 관계에 대해 좀 더 자세한 설명 부탁드립니다.
안녕하세요. 강의 잘 듣고 있습니다. Theorem 4를 설명하시면서 ad-bc가 0이 아니어야 한다는 조건이 pivot position이 2개이기 위한 조건이고, ad-bc=0인 경우 pivot position이 1개만 있을 수 있다고 이야기하셨는데, ad=bc 이면 a/c = b/d이니 소거하면 아래의 [c d]는 [0 0] 으로 바꿀 수 있어서 그렇다고 보면 맞을까요?
-
해결됨스프링 핵심 원리 - 기본편
섹션 7. 의존관계 자동주입에서 옵션처리관련 질문입니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]자동주입 옵션처리부분에서 "주입할 스프링 빈이 없어도 동작해야 할때가 있다." 라고 하셨는데, 이 경우가 언제인가요? @Autowired로 의존성 주입을 받는다는 것은 로직에서 해당 의존성이 필요한것이라고 생각합니다. 그러면 빈이 없다고 null이 반환되게 하면 NPE가 발생할텐데, 차라리 빈이 없으면 예외를 발생시키는게 더 좋은방법이 아닌가 싶어서, 이 옵션처리는 주로 언제 사용되는지 궁금합니다.
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
bdd10k 데이터셋 coco형식 변환 중 경로설정 문의
안녕하세요 강사님. 저번 답변은 갑사합니다!! 한가지 더 궁금한 것이 있어 질문드립니다. coco 데이터셋으로 변환할 때 경로설정에 관한 오류가 있어서 그런데요 보내주신 사이트에서 coco데이터셋으로 변경하려면 아래와 같이 명령어를 치면 된다고 나와있습니다. python3 -m bdd100k.label.to_coco -m det|box_track|pose \ -i ${in_path} -o ${out_path} [--nproc ${process_num}] 그래서 직접 하기 위해 우분투에 아래와 같이 입력했습니다. python3 -m bdd100k.label.to_coco -m det \ -i ${home/jkh} -o ${home/jkh} [--nproc ${4}] 입력 후 실행하니 아래와 같은 오류가 나왔습니다.(home/jkh는 다운받은 json파일이 있는곳입니다.) usage: to_coco.py [-h] [-i IN_PATH] [-o OUT_PATH] [-m {det,track}] [-ri] [-ic]to_coco.py: error: argument -i/--in-path: expected one argument 경로설정에 대한 오류인것 같은데 리눅스가 처음이라 경로설정을 어떻게 해야될지 모르겠습니다. 다운받은 json파일의 경로와 내보낼 경로를 설정할때 어떻게 입력해야 하는지에 대해 조금 더 자세하게 알려주실수 있을까요?
-
미해결스프링 핵심 원리 - 기본편
AppConfig의 역할이 Service의 구현 객체가 아닌 Repository 구현 객체를 리턴하도록 구현하면 안되나요?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용] 강의에선 AppConfig의 역할이 Service에 적절한 Repository 구현체를 주입해 Service 구현 객체를 리턴하는 것이라고 이해했습니다. 그러나, 아래와 같이 AppConfig와 MemberServiceImpl을 구현하지 않는 이유는 무엇인가요? 또한, 아래의 코드에서도 MemberServiceImpl은 외부 객체를 통해 객체의 생성과 선택을 위임한다는 점에서 여전히 의존관계를 주입받고 있다고 생각하는데, 제가 이해한 바가 맞나요? public class AppConfig { public static memberRepository() { return new MemoryMemberRepository(); } public MemberService memberService() { return new MemberServiceImpl(); } } public class MemberServiceImpl implements MemberService { private final MemberRepository memberRepository = AppConfig.memberRepository(); @Override public void register(Member member) { memberRepository.save(member); } @Override public Member findMemberBy(Long memberId) { return memberRepository.findById(memberId); } }
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
c언어 빌드 질문드립니다.
c언어 빌드할 때 make를 치니까 없다고 떠서 $ sudo apt-get install build-essential 을 해봤는데 아래 사진처럼 오류가 떴습니다. 어떻게 해결해야 할까요??
-
미해결실무에서 바로 쓰는 영어 이메일
"파일을 공유합니다." 란 비지니스 표현이 궁금합니다.
안녕하세요? 강의를 잘 듣고 있습니다. 저는 설계를 담당하고 있어서 첨부파일만 보내기 위해 메일을 쓸때가 많습니다. 이때 I'm emaling to share 3D model. please find attached file.이라고 자주 쓰는데요 이 표현이 적절한건지요? 비지니스적 표현이 있는지 궁금합니다. 감사합니다~
-
미해결[백문이불여일타] 데이터 분석을 위한 고급 SQL
실무 활용 강의 관련 문의
안녕하세요. 선생님! 선생님 초중고급 강의 커리큘럼 덕에 SQLD까지 따게 되었습니다. 양질의 강의 정말 감사드립니다. 다름아니라 이제 실무에서 사용하려는 데 이론 그대로 실무에 적용시키기는 조금 어려운 것 같아.. 실무 활용한 강의가 있을 지 궁금합니다. 사내에서는 DBeaber이라는 프로그램을 사용하는데 이 프로그램과 관련되거나 유사한 실무 활용법 강의 있을까요? 답변 주시면 정말 감사하겠습니다!
-
미해결
vuejs와 데이터베이스를 연동해서 웹페이지를 만드는데, 서버 쪽에 뜨는 해결이 잘 안 되는 에러가 있어서 질문드립니다
vuejs를 이용해서, server와 client를 vscode에서 만들어서 웹페이지를 열었는데, server쪽 터미널을 보니 아래 에러가 뜨는데, 어떤게 문제인지 아시는 고수분들 계신가요? error: undefined {"text":"Column 'pgm_id' in where clause is ambiguous","sql":"\n with menu as (\n SELECT\n a.menu_id as top_menu_id,\n a.menu_key as top_menu_key,\n a.menu_icon as top_menu_icon,\n a.menu_nm as top_menu_nm,\n a.menu_sort_seq as top_menu_seq,\n b.menu_id as dtl_menu_id,\n b.pgm_id,\n b.menu_key as dtl_menu_key,\n b.menu_icon as dtl_menu_icon,\n b.menu_sort_seq as dtl_menu_seq\n from TB_VOC_MENU_BAS a, TB_VOC_MENU_BAS b\n where a.menu_level = 1\n and a.menu_id = b.parent_menu_id\n and a.use_yn in ('Y')\n and b.use_yn in ('Y')\n and pgm_id != 'pgm_108'\n and pgm_id != 'pgm_501'\n \n )\n select\n top_menu_id,\n top_menu_key,\n top_menu_icon,\n top_menu_nm,\n dtl_menu_id,\n pgm_id,\n dtl_menu_key,\n dtl_menu_icon\n from menu\n order by top_menu_seq, dtl_menu_seq\n - parameters:[]","fatal":false,"errno":1052,"sqlState":"23000","code":"ER_NON_UNIQ_ERROR","timestamp":"2022-04-28 10:26:41"}- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
미해결Node.js로 웹 크롤링하기
for of와 Promise.allSettled 질문
exports.test = async () => { const work = xlsx.readFile(path.join(__dirname, "youtuber.xlsx")); const workData = work.Sheets.url; const result = xlsx.utils.sheet_to_json(workData); let array = []; for (const [i, e] of result.entries()) { array.push(e) } try { const browser = await puppeteer.launch({ headless: false, args: ["--window-size:1920,1080"], }); await Promise.allSettled(array.map(async (e) => { try { const page = await browser.newPage(); await page.setUserAgent(agent); await page.setViewport({ width: 1080, height: 1080, }); await page.goto(e.url, { waitUntil: "networkidle2", }); await page.waitForSelector("#channel-header-container img"); const result = await page.evaluate(() => { const channelName = document.querySelector("#text-container yt-formatted-string").textContent; const image = document.querySelector("#channel-header-container img").getAttribute("src"); const subscriber = document.querySelector("#meta yt-formatted-string[id=subscriber-count]").textContent; const activity = document.querySelector("#items ytd-grid-video-renderer:first-child #metadata-line span:nth-child(2)").textContent; return { channelName, image, subscriber, activity, } }); console.log(result); } catch (err) { console.log(err); } })); } catch (err) { console.error(err); } } for of 반복문은 처음과 끝의 코드가 종료가 돼야 다음 반복문을 돌고 Promise.allSettled는 모든 작업을 동시에 처리해서 둘의 차이는 순서 보장되냐 안되냐의 차이로 배웠습니다. 위 코드는 Promise.allSettled로 동시에 10개의 사이트에 접속하여 태그들을 긁고 리턴하는 함수입니다. 태그의 textContent는 모두 긁는데 img 태그의 src 값은 array.map에 가장 처음(0) 사이트만 긁어옵니다. waitForSelector를 사용하여 기다렸는데도 비동기라서 그런지 원인을 잘 모르겠습니다.(for of 문은 됩니다)