묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 핵심 원리 - 기본편
왜 스프링에 의존적이면 안되나요?
클래스간 의존적이면 OCP DIP 등 원칙에 위배 된다고해서 추상화에 의존적으로 설계하라가 객체지향의 원칙인건 이해가되는데, 스프링프레임워크안에서 스프링을 쓰는입장인데 왜 스프링에 의존적이면 안되나요?
-
해결됨스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
어플리케이션 로직이 필요한 검증의 분리
안녕하세요. 항상 강의 너무 잘 듣고 있습니다! 개인 프로젝트로 질문/답변 게시판 웹사이트 구현을 진행하고 있습니다. 대부분의 로직에 질문/답변 요청의 작성자임을 확인하는 로직이 필요한데 해당 검증 로직은 필연적으로 어플리케이션(DB단 까지)로직이 필요합니다. 제 생각에 검증기validator 클래스를 도입하는 것 보다 Filter나 인터셉터를 활용하는 방식이 좋아보이는데 맞을까요?? 현재 코드는 아래와 같습니다. 게시글의 수정페이지에 대한 Get매핑과 수정하는 PostMapping입니다. Post - 게시글, Account - 계정(작성자) @GetMapping("qna/edit/{postId}")public String PostEditForm(@PathVariable Long postId, Model model){ //사용자 검증 if(!isValidEditRequest(postId)){ return "denied"; } Post post = postService.findById(postId); model.addAttribute("post",post); return "qna/edit";}@PostMapping("qna/edit/{postId}")public String PostEdit(@PathVariable Long postId, PostDto postDto){ //사용자 검증 if(!isValidEditRequest(postId)){ return "denied"; } //수정 postService.edit(postId,postDto); //수정 후 수정된 게시글로 이동 return "redirect:/qna/show/"+postId;}private boolean isValidEditRequest(Long postId) { return postService.isWrittenBy(postId, getAccount().getId());} 질문은 아래와 같습니다. 1. Validator, Filter, Interceptor가 service를 참조해도 괜찮을까요? 2. 해당 로직을 처리하는 정형화된 방식이 Spring Security에 있을까요?? 감사합니다!
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
Python 프로젝트에 적용하기에 가장 적합한 형태의 모델은 어떤 형식인가요?
Open CV를 활용한 파이썬 PC 프로그램을 만들고자 하는데요 기존에는 classification 만 하려는 목적으로 .h5 형태의 모델을 사용했었는데 Object Detection 바꾸게 되었습니다 처음엔 YOLO 전이학습이 가장 쉽게 모델을 추출할수 있는것 같아서 YOLOV5 전이학습을 통해 나온 .pt 모델을 사용하려고 했는데 이방법을 어려울것 같다고 하셔서요 혹시 어떤 형태의 Object Detection 모델이 GPU기반 프로그램에서 Open CV 와 활용했을때 가장 효율이 좋고 쉽게 사용할수 있을까요? 또 전이학습을 통해 .pt 파일이 아닌 .weights 와 .cfg 를 추출하는 방법이 있을까요? 답변부탁 드리겠습니다 교수님..... 감사합니다!
-
해결됨윤재성의 만들면서 배우는 Spring MVC 5
url에 대한 질문이 있습니다
강의를 진행하실때 board/main.jsp에서 글쓰기 버튼 url을 적으실때 <a herf="${root }board/write" class="btn btn-primary">글쓰기</a> 로 진행하셨습니다 근데 공부하면서 생각해보니깐 위와 같이 적지않고 그냥 현재 페이지가 board/main이므로 상대경로인 <a herf="write" class="btn btn-primary">글쓰기</a> 와 같이 적어도 되는데 이건 개발자의 개발 스타일인가요? 아니면 혹시나 url이 꼬일 수 있으니 절대경로로 url 지정해주는건가요?
-
미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
ES6 중복 제거 코드 (참고)
const a = [...new Set(array)]
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
안녕하세요 gradlew build하는 과정
안녕하세요!! 강의 보고 배우고 있는 학생입니다!! gradlew.bat build 입력을 하면 gradlew.bat: command not found라는 문구가 뜨는데 왜 그런 걸까용,.,?
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
산술 shift와 최상위 비트 관련
산술 shift에서 최상위 비트는 그대로 유지가 된다고 알고 있는데 0x 1001 0100(-108)과 0x 0100 0100(68)에서 각각 left shift 1을 하면 0x 0010 1000(40)과, 0x 1000 1000(-120)으로 최상위비트가 변경이 되는데 왜 이러는 것인지 궁금합니다... 최상위 비트 유지는 right shift에 한해서만 되는 것인가요? p.s. 사칙연산 강의 관련한 내용이지만 add [num], byte 1에서 resb로 이미 설정을 했음에도 resb는 데이터를 할당할 때 내린 명령이라 1에 byte를 붙여야 된다고 말씀하셨는데 resb로 설정된 것은 num인데 1과 resb 사이에 어떤 연관이 있는 것인지 궁금합니다
-
미해결함수형 프로그래밍과 JavaScript ES6+
강의내용 질문드립니다!
강의내용 15:36초부분에서 질문드립니다.. 강의 94번쨰 코드라인에서 에러가발생했음에도 불구하고 왜 then으로 처리되는건가요?? 만약 then으로 빠질 수 밖에 없는상황이라면 아래와같이 catch문을 작성해줬을떄 catch문으로 빠질 수 있는 상황이 어떤 부분에서 에러가 발생했을때 처리해 줄 수 있나요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
ContextSwitching 강의를 듣다가 궁금한 것이 생겼습니다.
식당을 예로 들어서 말씀해주셔서 저도 식당에 비유해서 질문 드리자면 여러 직원(쓰레드?)이 있을 때 영혼이 하나의 직원에서 다른 직원 쪽으로 바꿔 빙의할 때 중간에 식당 관리자(커널)이 개입하는 걸로 이해했습니다. 그렇다면 관리자가 빙의시킬 직원을 고를 때 어떤 직원부터 빙의시킬 지 선택하는 기준이 있을 것 같은데 그런 스케쥴링 하는 알고리즘? 같은 것이 커널에 있는 것인가요? 그렇다면 어떤 형태의 알고리즘을 채택하는 것이고 게임 프로그래밍에 있어서 이러한 스케쥴링을 이해하는 것이 좋을지 궁금해서 질문 드립니다! 항상 강의 재밌게 잘 보고 있습니다! 감사합니다!
-
미해결
인텔리제이로 프로그램 실행이 잘되다가 갑자기 Process finished with exit code 1가 뜨면서 서버가 돌아가지 않습니다.
이전에는 자바 14 버전으로 할때는 잘되다가 갑자기 오늘부터 Process finished with exit code 1 오류가 뜨더라구요 그래서 자바 11버전 설치한 후 JAVAHOME환경 변수 설정도 바꿔준 후 setting에서 Gradle JVM까지 버전 11으로 잘 설정했습니다. 그래도 여전히 같은 오류가 뜨고 서버가 실행되지 않습니다. 어떻게 해야할까요 Run부분을 보면 "C:\Program Files\Java\jdk-14.0.2\bin\java.exe" 계속 14버전이 뜨던데 이부분이 문제인걸까요? 환경변수 바꿔줘도 계속 java가 14버전으로 실행되는것인가요,,,ㅜㅜ
-
해결됨15일간의 빅데이터 파일럿 프로젝트
hue에서 파일 업로드가 정상적으로 되지 않습니다.
좋은 강의 만들어주셔서 감사합니다. 자세한 설명 덕분에 순조롭게 잘 따라가고 있습니다. 현재 hue에서 파일 업로드를 진행하고 있는데요, CarMaster는 정상적으로 올라가지만 buy list는 업로드가 되지 않습니다. . 첫번째 상태로 유지되다가" undefined 성공적으로 업로드 되었다"라고 뜨고 실제로는 아무런 변화도 일어나지 않습니다. 에러 로그를 어디서 확인할 수 있는지 궁금합니다. 감사합니다
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
h2데이터베이스에서 JDBC URL 연결
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]현재 window를 사용하고 있습니다. 그리고 예전에 sonarqube를 설치한적이 있습니다. 그런데 왜 갑자기 소나큐브를 찾는지 모르겠습니다..ㅠㅠ 처음 h2.bat을 실행하고 JDBC URL을 'jdbc:h2:~/test'로 했을 경우 접속이 됩니다. test.mv.db 파일 생성도 확인하였습니다. 그리고 다시 JDBC URL을 'jdbc:h2:tcp://localhost/~/test'로 연결했을 경우 뜨는 에러입니다. 구글링으로 계속 찾아보려고 하는데... 뭘 고쳐야하는지 잘 모르겠습니다. 도와주세요ㅠㅠ
-
미해결윤재성의 만들면서 배우는 Spring MVC 5
dynamic web project를 생성할 때 WebContent가 생성이 되지 않고 webapp이 생성이 됩니다. 도와주세요 ㅠㅠ
안녕하세요 강사님. 개발을 공부하고 있는 학생입니다. eclipse에서 Dynamic Web Project를 생성할 때 WebContent 대신에 src/main/webapp이 생성 되는데요. 구글링을 통해서 그 이유가 저의 eclipse가 Maven 형식으로 세팅이 되어 있기 때문이라고 알아냈습니다.(사실 지금 이 수업을 듣기 전에 "윤재성의 스프링 프레임워크 개발자를 위한 실습을 통한 입문 과정" 을 듣고 왔으며 전에 있던 수업에서 사용하던 eclipse를 현재의 수업에서도 사용하고 있는 중 입니다.) 그러나 아무리 구글링을 하여도 webapp에서 다시 WebContent로 바꾸는 방법은 알아내지 못했습니다. 항상 친절하게 답변을 해주셔서 너무 감사드립니다.
-
미해결게임 엔진을 지탱하는 게임 수학
강의 노트가 어디 있나요?
강의 노트가 설명 하단에 링크에 있다는데 정확히 어디에 있는지 잘 모르겠습니다. 강의 노트가 어디 있는지 자세히 알려주실 수 있나요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
javax.persistence.PersistenceException 에러
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 안녕하세요 ! 강의를 진행하고 있다가 SpringConfig를 수정한 후 회원 가입 테스트 코드를 돌렸더니 javax.persistence.PersistenceException: org.hibernate.exception.ConstraintViolationException: could not execute statement 이러한 오류가 나서 문의드립니다. 같은 분 오류 찾아서 spring.jpa.hibernate.ddl-auto=create 으로 바꿔시고 실행 한번 하면, 기존 테이블이 삭제되면서 다시 생성되는데요. 서버 한번 종료하고, none으로 다시 바꿔서 진행해주세요. 이대로 진행했는데도 고쳐지지 않아 질문 남깁니다. 답변 주시면 감사하겠습니다! <에러 사진>
-
미해결Vue.js 완벽 가이드 - 실습과 리팩토링으로 배우는 실전 개념
권한 요청드립니다.
인프런 아이디 : ykh4933@gmail.com 인프런 이메일 : ykh4933@gmail.com깃헙 아이디 : duddl2102@naver.com깃헙 Username : Kim-SeoYeong
-
미해결쉬우면서 강력한 유니티(Unity) 에디터 프로그래밍
Raycast() 함수 공식
14:47에 "공식은 인터넷에 나와있어요" 부분 뭐라고 검색하면 나오는 지 알 수 있을까요?
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
복사 대입 연산자, 복사 생성자 질문입니다.
Knight& operator=(const Knight& knight){} 복사 대입 연산자에서 반환 타입이 참조인 이유는 그냥 Knight로 반환하면 임시 객체가 생성되어서 그것을 방지하기 위해 참조로 반환하는 것이 맞나요?? 그리고 Knight knight2 = knight1; Knight knight3(knight1); 둘 다 복사 생성자를 호출하는데, 혹시 둘의 차이가 있나요?
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
body관련 질문입니다.
form data를 확인하기 위해서 개발자도구를 켜보니 강의 화면과 다르게 form data표시가 없었습니다. 찾아보니까 header옆에 payload칸에서 찾을 수 있었는데 강의 내용과 크게 다른건 없는건가요? 그냥 크롬 버전이 업그레이드 되면서 옆으로 빠지기만 한 건지 내용적인 부분에서 차이가 있는지 질문드립니다. 또 그럼 Get을 이용한 통신에서는 서버로 부터 응답받은 정보는 어떻게 확인이 가능한지, body에 넣어서 준다면 응답의 body는어디서 확인하는지 궁금합니다.
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
안녕하세요 강사님 도커 컨테이너의 삭제에 관해 질문드립니다.
도커 컨테이너는 리눅스 커널로 부터 컴퓨터의 리소스를 할당받아서 동작한다고 배웠는데요. 이때 디스크(저장 장치)도 할당받는다고 생각했습니다. 그런데 컨테이너를 삭제하면 할당받은 CPU, 메모리 사용량 등 모든 자원을 컴퓨터에게 반납하는건 이해가 가는데. 디스크 자원의 경우 저장된 값이 모두 삭제가 되고 디스크를 반납 하는건가요? 이 부분이 이해가 가지 않아서 질문 남겨봅니다. 감사합니다 😊