묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
파트1 강의에 대한 내용을 전부 알려면 무엇이 필요한가요?
파트1 강의에 대한 내용을 전부 알려면 c++ 의 어떠한 기능을 숙지하고 있어야 하나요?c++ 을 전부 마스터 해야 하나요? 아니면 특정 파트만 배우면 이 내용이 이해가 되나요?
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
ScannerWhileEx4
위의 이미지처럼 스캐너 넥스트 라인을 상품명 다음에 했을때 출력값에 상품명이 뜨지 않습니다. if다음에 바로 스캐너.넥스트라인을 두는것과 왜 이런 차이가 생기는건가요? 이해가 잘 되지않습니다
-
미해결
코틀린 설정 질문
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile plugins { kotlin("jvm") version "1.6.0" kotlin("plugin.spring") version '2.3.9' apply false kotlin("plugin.jpa") version "1.6.0" apply false id("org.springframework.boot") version "2.6.3" apply false id("org.spring.dependency-management") version "1.0.11.RELEASE" apply false } repositories { mavenCentral() } allprojects { group = "com.zerobase" repositories { mavenCentral() } } subprojects{ apply { plugin("org.jetbrains.kotiln.jvm") plugin("org.jetbrains.kotiln.plugin.spring") plugin("org.springframework.boot") plugin("io.spring.dependency-management") } dependencies { implementation("org.springframework.boot:spring-boot-starter") implementation("org.jetbrains.kotlin:kotlin-reflect") implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8") testImplementation("org.springframework.boot:spring-boot-starter-test") } tasks.withType<KotlinCompile> { kotlinOptions { freeCompilerArgs += "-Xjsr305=strict" jvmTarget = "11" } } tasks.withType<Test> { useJUnitPlatform() } } Build file 'C:\Users\hwang\Desktop\fintech\fintech\build.gradle.kts' line: 3Plugin [id: 'org.spring.dependency-management', version: '1.0.11.RELEASE', apply: false] was not found in any of the following sources:* Try:> Run with --info or --debug option to get more log output.> Run with --scan to get full insights.* Exception is:org.gradle.api.plugins.UnknownPluginException: Plugin [id: 'org.spring.dependency-management', version: '1.0.11.RELEASE', apply: false] was not found in any of the following sources:- Gradle Core Plugins (plugin is not in 'org.gradle' namespace)- Plugin Repositories (could not resolve plugin artifact 'org.spring.dependency-management:org.spring.dependency-management.gradle.plugin:1.0.11.RELEASE')환경변수랑 자바 세팅을 다 확인해 봤는데 뭐가 잘못된지 모르겠습니다.
-
미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
채점이 안돼요
비쥬얼스튜디오로 하는데 져지에서 이렇게 뜹니다ㅠㅠ 도와주실수 있나요??
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
유틸리티 배열 활용
#array.html <!DOCTYPE html> <html xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <h1>Arrays</h1> <ul> <li>username = <span th:text="${userA.username}"></span></li> <li>age = <span th:text="${userA.age}"></span></li> </ul> <h1>LocalDateTime - Utils</h1> <ul> <li>${#arrays.toStringArray(userA)} = <span th:text="${#arrays.toStringArray(userA)}"></span></li> <li>${#arrays.toIntegerArray(userA)} = <span th:text="${#arrays.toIntegerArray(userA)}"></span></li> <li>${#arrays.toLongArray(userA)} = <span th:text="${#arrays.toLongArray(userA)}"></span></li> <li>${#arrays.toDoubleArray(userA)} = <span th:text="${#arrays.toDoubleArray(userA)}"></span></li> <li>${#arrays.toFloatArray(userA)} = <span th:text="${#arrays.toFloatArray(userA)}"></span></li> <li>${#arrays.toBooleanArray(userA)} = <span th:text="${#arrays.toBooleanArray(userA)}"></span></li> </ul> </body> </html>@GetMapping("/array") public String array(Model model) { User userA = new User("userA", 10); User userB = new User("userB", 20); model.addAttribute("userA", userA); model.addAttribute("userB", userB); return "basic/array"; } @Data static class User { private String username; private int age; public User(String username, int age) { this.username = username; this.age = age; } }이렇게 했을 때 Caused by: java.lang.IllegalArgumentException: Cannot convert object of class "hello.thymeleaf.basic.BasicController$User" to an array of Class 이런 에러가 뜨는데 왜 에러가 발생하며, 어떻게 활용하면 될까요?
-
미해결자바 동시성 프로그래밍 [리액티브 프로그래밍 Part.1]
쓰레드풀에서 쓰레드를 재사용할 수 있는 이유가 궁금합니다.
강의 초반부 스레드는 start해서 작업이 끝나면 재사용할 수 없다고 하셨고 자바독에서도 아래와 같이 start()가 재사용되는 것은 legal하지 않다고 표현하고 있습니다It is never legal to start a thread more than once. In particular, a thread may not be restarted once it has completed execution.그런데 스레드풀 재사용 시에는 뭔가 다른 작업이 있을까 해서 강의와 함깨 디버깅해보니 addWorker()에서도 Worker에 할당된 스레드의 start()메소드로 호출하고 있었습니다. 스레드 풀의 경우 start()호출 후 메소드가 종료되었음에도 스레드를 재사용할 수 있는 이유는 무엇인가요? 질문을 작성하고 나서 조금 더 고민해보니 아래와 같은 결론에 도달했습니다.(혹시 틀린 내용이 있다면 수정 의견 부탁드립니다) 비슷한 고민을 하신 분이 있을 것 같아 글을 남겨둡니다.생성된 스레드의 start() 실행 -> Worker의 run()실행 -> Worker의 runWorker()실행 -> while()조건에 의해 무한 루프무한루프가 되는 이유 : getTask()를 통해 큐에서 작업을 꺼내와 실행하고 큐에 작업이 없을 경우 블록킹되므로 블로킹이 해제된 시점에서는 task변수에 작업이 할당되어 while조건문이 true가 됨
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
빈 등록
Component 에 이름없이 써보고 싶은데package hello.thymeleaf.basic; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import jakarta.servlet.http.HttpSession; import lombok.Data; import org.springframework.stereotype.Component; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @Controller @RequestMapping("/basic") public class BasicController { @GetMapping("text-basic") public String textBasic(Model model) { model.addAttribute("data", "Hello Spring!"); return "basic/text-basic"; } @GetMapping("text-unescaped") public String textUnescape(Model model) { model.addAttribute("data", "Hello <b>Spring!</b>"); return "basic/text-unescaped"; } @GetMapping("/variable") public String variable(Model model) { User userA = new User("userA", 10); User userB = new User("userB", 20); List<User> list = new ArrayList<>(); list.add(userA); list.add(userB); Map<String, User> map = new HashMap<>(); map.put("userA", userA); map.put("userB", userB); model.addAttribute("user", userA); model.addAttribute("users", list); model.addAttribute("userMap", map); return "basic/variable"; } @GetMapping("/basic-objects") public String basicObjects(Model model, HttpServletRequest request, HttpServletResponse response, HttpSession session) { session.setAttribute("sessionData", "Hello Session"); model.addAttribute("request", request); model.addAttribute("response", response); model.addAttribute("servletContext", request.getServletContext()); return "basic/basic-objects"; } /* Component helloBean을 지정한 이유 : 지정하지 않으면 HelloBean 의 빈 이름은 BasicController.HelloBean 으로 설정되기 때문 helloBean을 지정하기 싫으면 내부 클래스 말고 외부에 클래스를 만들어서 사용하면 된다. */ @Data static class User { private String username; private int age; public User(String username, int age) { this.username = username; this.age = age; } } } @Component public class HelloBean { public String hello(String data) { return "Hello " + data; } } 어떻게 수정하면 될까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
localhost:8080/hello가 실행되지 않습니다.
typo나 폴더 위치를 잘못 설정해서 localhost:8080/hello가 실행되지 않는 줄 알았는데, 몇 번을 재검토 해봐도 다 맞게 쓴 것 같아서 어디가 잘못 되었는지 궁금해서 질문드립니다. 환경설정밖에 안 하기는 했지만 입문강의임에도 내용이 잘 이해가 안 되는데 듣다보면 괜찮아질까요..?
-
미해결김영한의 실전 자바 - 기본편
문제 풀이 방식에서 컴파일 에러가 뜬 이유를 알고 싶습니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]물품 관리 프로그램을 작성할 때 위 사진에서 체크표시한 코드처럼 물품의 이름, 가격, 수량을 입력받는 즉시 물품배열에 대입해주었는데 컴파일에러가 뜨더라구요.이유를 생각해봤는데 물품'배열'에 대한 인스턴스는 생성해놨지만 해당 배열의 각각의 물품에 대한 인스턴스는 아직 생성하지 못한 상태여서 그런 건가요?그렇기 때문에 물품 정보를 입력받은 뒤 맨 마지막(밑줄 표시)에 메서드를 이용하여 객체를 만드는 동시에 물품 정보를 대입해주는 것이구요...?
-
해결됨스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
브라우저 쿠키 원리
이번 챕터를 수강하면서,쿠키 방식보다는 세션 방식이 더 보안성이 높다는 것.둘을 완전히 분리하여 사용하지 않고, 함께 사용해야 한다는 것.을 알게 되었습니다.세션 id를 브라우저에 전달하기 위해, 쿠키를 사용해야 한다고 이해했습니다. 1. 혹시, 세션 갖고만으로는 안되고 쿠키를 꼭 통해서 전달해야하는 걸까요? 조금은 외람된 질문일 수 있겠지만, 지식이 부족하여 질문드립니다.로그인한 사용자가 또다른 요청을 보낼 시, request header에 쿠키(세션id가 포함된)와 함께 요청을 보내는데, 2. 브라우저의 요청에 쿠키가 자동으로 실리는?(첨부되는) 브라우저의 작동 원리가 궁금합니다. 혹시 관련해서 참고할만한 레퍼런스가 있을까요? 브라우저 쿠키와 관련한 키워드로 구글링하는데, 쿠키카 자동으로 실리게 되는 세부적인 원리에 대한 내용을 찾기가 쉽지 않아 질문 드립니다..ㅜ (영문서여도 감사하겠습니다)
-
해결됨스프링 핵심 원리 - 기본편
OrderServiceImpl은 DIP도 잘 지킨 코드인가요 ??
OrderServiceImpl은 DIP도 잘 지킨 코드인가요 ?? Order와 할인정책 사이 관계를 볼 때, 단일책임 원칙은 할인 정책이 discount하는 일 1개만 하고 있으니 지켰다고 보는데 DIP도 지킨 코드인가요 ?? 할인정책 관련 코드가 OrderServiceImpl부분에 아예 없는게 잘 지키는 거라고 생각했는데 아닌가요 ???
-
미해결기초부터 따라하는 디지털포렌식
해당 강의를 기반으로 네이버 블로그에 정리를 해도 될까요?
해당 강의를 기반으로 해서 네이버 블로그에 정리해 학습할려고 하는데 혹시 가능할까요..?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
HashMap 과 Map의 사용
Map<String, User> map = new HashMap<>(); map.put("userA", userA); map.put("userB", userB); 왜 HashMap<String, User> map = new HashMap<>() 은 사용 못하는 걸까요?
-
해결됨코딩테스트 [ ALL IN ONE ]
노션 공유
안녕하세요!CS와 코딩테스트 두 과목 오늘 수강신청을 했고,공유해주셨다는 메일을 받았는데...노션을 보니 CS만 보이고 코딩테스트쪽은 공유된 문서가 안보여서요!!메일 이후에 따로 공유해주시는건지 궁금합니다.😀
-
해결됨스프링 DB 1편 - 데이터 접근 핵심 원리
DB 변경
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]DB를 H2에서 MySql로 변경하고 싶으면섹션 1의 예제에서는 ConnectionConst 클래스의 URL을 MySql 관련 URL로 바꾸기만 하면 되나요?
-
해결됨시나브로 자바스크립트
시용하시는 툴 질문드립니다.
안녕하세요, 강의 수강 중 사용하시는 툴? 익스텐션이 궁금해서 여쭤봅니다.'[2023-07-17] 오픈소스를 사용하다 문제에 부딪힐 때'의 강의에서 사파리 사이드바에서 검색도 가능하고, 탭을 관리할 수 있는 툴이 어떤 것인지 질문드립니다!
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-O 시간초과가 납니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. http://boj.kr/475f308856b14af58ad676f375a262f6선생님 다음 코드와 같이 만들어서 예제는 통과했는데 계속 시간초과가 납니다 ㅠㅠ 어떤 점이 문제인지 잘 파악이 안됩니다.
-
미해결함수형 프로그래밍과 JavaScript ES6+ 응용편
fxjs 라이브러리 takeL 관련하여 질문드립니다.
안녕하세요기본편 부터 응용편 까지 천천히 학습하고 있습니다.응용편 부터는 라이브러리를 가져와서 강의를 진행하시는데 강의 수강 중 궁금한 사항이 있어 질문드립니다. github에 올려주신 오픈소스를 참조하는데 takeL 부분이 이해가 되지 않아 문의드립니다. L.take = curry(function* (l, iter) { let prev = null; iter = iter[Symbol.iterator](); for (const a of iter) { if (a instanceof Promise) { yield (prev = a.then((a) => (--l > -1 ? a : Promise.reject(nop)))); prev = prev.catch(noop); } else { yield (--l, a); } if (!l) break; } }); L.take를 이렇게 표현하면 앞선 Promise가 resolve 되길 기다리는 Promise를 그대로 이어가면서 전달 가능한데 yield (prev = (prev || Promise.resolve()) .then((_) => a) .then((a) => (--l > -1 ? a : Promise.reject(nop)))); 이렇게 표현하신 이유가 어떤이유인지 알고싶습니다. 또 제가 작성한 수정한 부분에 문제가 있다면 알려주시면 감사하겠습니다. 또 궁금한 내용이 오픈소스에 for of 아래 a.catch(noop); Promise를 catch 하는 코드가 추가되어 있는데 이 부분 역시도 어떤의도로 구현한 것인지 궁금합니다. 수업내용에서는 비동기/동시성을 통해 한번에 Promise 콜백이 병렬적으로 평가되면서 배열에 담기는 시점에 콜스택에서 에러가 출력되지 않기 위해 사용하는 트릭으로 알고있는데요, L.take 에서 a.catch가 실행되는 시점에는 Promise가 reject로 풀려서 전달될 수 없을것 같은데 이 부분도 설명부탁드립니다.
-
해결됨[2025년 출제기준] 웹디자인기능사 실기시험 완벽 가이드
[필독] D,E 강의 설명 중 필수 이론 04 가상 클래스 질문
안녕하세요 선생님,저는spot 메뉴에서 ' | ' 바의 역할이 단어 칸 나누기라고 생각해서지금까지 키보드 위에 있는 저 바를 html 에 입력하고a태그로 메뉴를 구성했었거든요,필독 사항 강의 에서도 반드시 필요한 것은 아니고, 코드 간결을 위해서 사용한다고 말씀해주셨는데, | 부분을 실무에서 코사용할 때 after를 사용하나요? 키보드에 있는 걸 쓰는 것을 쌤은 비추를 하시는지 궁금해서 질문 드립니다..!
-
미해결스프링 핵심 원리 - 기본편
<섹션 7. 조회한 빈이 모두 필요할 때> 강의 질문
DiscountService 클래스에서 모든 Map으로 DiscountPolicy를 주입(@Autowired 생략) 받는다고 했는데 그렇다면 클래스에 @ComponentScan을 붙여서 등록된 빈들을 조회할 수 있도록 해야 하는 거 아닌가요?? 조금 헷갈리네요... ㅎㅎ