묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결자바 기초부터 마스터하기 with 은종쌤 (Do it 자바 프로그래밍 입문) - Part 1(기초편)
함수와 메서드 < 강의내용 10분에서 오류요!
강의에서 출력결과가 마지막에 5050 으로나오는데 저는 1로만 출력이 안되네요 제가 뭘 잘못한거겠죠? ㅠㅠ 어디가 잘못된지 모르겠어요 선생님!
-
미해결PHP 7+ 프로그래밍: 객체지향
35강 미들웨어에서 인증 과정을 Auth클래스로 만들면, 어느 디렉토리에 둘까요?
35강 중간에 AuthMiddleware 클래스를 만드는 부분에서, 인증을 하는 부분을 따로 Auth클래스를 만들어서 할 수도 있다라는 내용이 잠깐 지나갑니다.이때, Auth클래스는 어떤 디렉토리를 만들어서 두면 좋을까요? 유틸 디렉토리를 만들어서 둘까 했지만, Auth클래스를 유틸 클래스라고 하기엔 좀 모호한것 같아서요.
-
미해결자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide)
구조 분해는 componentN으로 순서에 의존하는거같은데 이 의존을 없앨 수 없나요?
구조분해가 순서에 의존하는 것 같은데, 이러한 순서에 대한 의존성을 제거할 수는 없는 것인가요? data class Foo( var a:String, var b:Int, var c:Long, var d:String ) fun main(){ val foo = Foo("hello", 33, 44L, "Bye") //기존 방식 val (a, b, c, d) = foo //원하는 방식 val (c, a) = foo }
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
제네릭 클래스(연장 전반전) user.name
안녕하세요,제네릭 클래스(연장 전반전) 5:30 부분에서 궁금한 점이 있어 질문드립니다. CoffeeByUser 클래스의 method로서 ready() 를 정의해주었는데, 이때 출력구문에 들어간 user.name 에 대해 잘 이해가 되지 않아 여쭤봅니다. user는 CoffeeByUser 클래스의 아직 자료형이 정의되지 않은 '변수'인데, 어떻게 User 클래스의 변수인 name과 함께 쓰여서 user.name이 될 수 있는건가요?만약 user.name이 아니라 단순히 user 혹은 name 으로 변경한다면 출력값이 다른 걸까요? 감사합니다.
-
해결됨스프링 핵심 원리 - 기본편
서비스 계층에서 인터페이스와 Impl 구분에 대해서
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]안녕하세요. 다른 사람의 코드를 읽던 중에 궁금한 것이 생겨서 질문 남깁니다.제가 읽은 코드에는 ~~Service(인터페이스) 와 ~~ServiceImp로 작성을 했습니다. 이 전에도 이런 구조를 사용하는 코드를 종종 봤습니다. 저는 지금까지 그냥 바로 인터페이스 없이 ~~Service를 만들고 비즈니스 로직을 작성 했습니다.제가 찾아본 결과로는 인터페이스와 구현을 구분하는 이유는 2가지 였습니다.OCP 법칙을 더 잘 지키기 위해서추상과 구현을 OCP 법칙을 지키고 다형성을 확보하기 위해서AOP Proxy과거 스프링에서 AOP를 사용할 땐 JDK Dynamic Proxy를 사용하기 때문에 인터페이스가 필요했다. 하지만 지금은 GCLIB를 사용할 수 있기 때문에 사실상 의미를 잃었다.추가적으로 인터페이스를 나누고 인터페이스에 javadoc용 주석을 남겨두면 유지보수 측면에서 읽기에 더 나은 부분이 있지 않을까 정도 생각해 보았습니다.서비스 계층에서 인터페이스와 구현을 나누는 것과 하나의 서비스 클래스에 구현하는 것 중에 대부분의 경우 어떤 것을 더 권장하시는지 궁금합니다. 감사합니다!
-
미해결스프링 핵심 원리 - 기본편
xml 관련 질문 드립니다.
[질문 내용]처음 스프링을 배울 때 spring legacy 프로젝트로 배웠습니다. 따라서 root-context.xml, servlet-context.xml 방식으로 배웠습니다. 이전에 질문 드렸을때, "SpringApplication.run() 메서드는 기본적으로 @SpringBootApplication이 위치한 패키지와 하위 패키지를 시작점으로 모든 클래스를 스캔합니다 따라서 @Configuration, @Component, @Service, @Repository 등의 애노테이션이 있는 클래스를 찾아서 스프링 애플리케이션의 컨텍스트를 생성하는데 사용합니다." 라고 답변을 받았습니다. 하지만 legacy 프로젝트를 실행할때에는 @SpringBootApplication을 따로 적지 않았는데, 어떻게 해당 xml(root, servlet)에서 bean을 읽어오는지 의문이 듭니다. 추가로 xml로 작성하였을때도 SpringApplication.run() 메서드가 자동으로 읽는지도 문의드립니다.
-
해결됨자바 기초부터 마스터하기 with 은종쌤 (Do it 자바 프로그래밍 입문) - Part 2(마스터편)
미로찾기 문제에 VISIT의 쓰임
이해하는데 시간이 좀 걸려서, 다른 분들도 고민하실까봐 글 남겨요 public static int VISIT = 2;미로찾기 문제에서 나오는 상수 VISIT 의 쓰임새는탐색한 모든 위치를 VISIT 주는 것이 아니라,정답의 길만 VISIT을 주고있어요 따라서 그 위쪽 로직에서newPosition.direction = direction +1;을 주는 겁니다. NOTVISIT 이여도 이미 갔던 path를 다시 안가기 위해서요
-
미해결자바 기초부터 마스터하기 with 은종쌤 (Do it 자바 프로그래밍 입문) - Part 1(기초편)
선생님 저는 왜 여기서 오류가 발생하는걸까요?
섹션6 객체지향 핵심 복습 문제 풀이 중에서 새로운 클래스를 만들 때 선생님이 하시는 것처럼 똑같이 따라했는데 이렇게 오류가 뜹니다... he method getNestCall() of type RoundRobin must override or implement a supertype methodRemove '@override' annotation이런 내용이 함께 뜨네요 그런데 implements Scheduler 부분을 제가 직접 입력하고 오버라이드 추가 하겠다고 클릭하면 이렇게 오류가 안떠요!
-
미해결스프링 핵심 원리 - 기본편
MemberServiceTest에서 MembeService를 AppConfig에서 꺼내기 애매한 이유
24:18 쯤 MemberServiceTest.java 코드 작성 중에MembeService를 AppConfig에서 꺼내기 애매하다고 하셨는데 그 이유가 궁금합니다!@BeforeEach로 각 테스트마다 AppConfig에서 MembeService를 생성해주는게 왜 좋은지 질문드립니다!
-
미해결스프링 핵심 원리 - 기본편
asserThat이 되지 않습니다.
================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]게시판에서 assertThat 관련 질문 나온 것들 다 봤는데도 assertThat이 되지 않습니다.build.gradle에 testImplementation 'org.assertj:assertj-core:3.11.1' 이것도 추가해봤지만 되질 않습니다..alt+enter를 치면 사진처럼 math어쩌구 저거만 뜹니다. 어떻게 해야할까요?
-
미해결자바 기초부터 마스터하기 with 은종쌤 (Do it 자바 프로그래밍 입문) - Part 1(기초편)
화질
720p보다 더 고해상도로는 못 보는 건가요? 눈이 너무 아파요 ㅠㅠ
-
미해결스프링 핵심 원리 - 기본편
NoUniqueBeanDefinitionException 예외를 처리했는데도 발생하는 이유
안녕하세요. 스프링 빈 조회 - 동일한 타입이 둘 이상부분을 듣고있는데, 궁금한 점이 생겨서요 ! AnnotationConfigApplicationContext package hello.core.beanfind; import hello.core.discount.DiscountPolicy; import hello.core.discount.FixDiscountPolicy; import hello.core.discount.RateDiscountPolicy; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.NoUniqueBeanDefinitionException; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import static org.junit.jupiter.api.Assertions.*; public class ApplicationContextExtendsFindTest { AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext(TestConfig.class); @Test @DisplayName("부모 타입으로 조회시 자식이 둘 이상 있으면, 중복 오류가 발생한다") void findBeanByParentTypeDuplicate() { DiscountPolicy bean = ac.getBean(DiscountPolicy.class); assertThrows(NoUniqueBeanDefinitionException.class, () -> ac.getBean(DiscountPolicy.class)); } @Configuration static class TestConfig { @Bean public DiscountPolicy rateDiscountPolicy() { return new RateDiscountPolicy(); } @Bean public DiscountPolicy fixDiscountPolicy() { return new FixDiscountPolicy(); } } } 위 코드의 findBeanByParentTypeDuplicate 테스트를 실행했을 때, 자식이 둘 이상이고, DiscountPolicy bean = ac.getBean(DiscountPolicy.class); 부분이 있어서 오류가 발생하는 것은 이해했습니다! 그런데, assertThrows(NoUniqueBeanDefinitionException.class, () -> ac.getBean(DiscountPolicy.class)); 이렇게예외를 처리하는 구문이 있는데도, 왜 테스트가 pass 되지 않는 것인지 궁금합니다 !! 에러를 왜 못잡아낼까요 ??
-
미해결스프링 핵심 원리 - 기본편
스프링 컨테이너 관련 질문 드립니다.
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]커뮤니티 내 질문을 읽다가 의문이 들어서 질문드립니다.ApplicationContext를 굳이 만들지 않아도 main 메서드 내 SpringApplication.run() 메서드 내부에서 컨테이너를 생성한다고 답변 주신걸 보았습니다.하지만 ApplicationContext를 만들 때 AppConfig.class로 커스텀한 config파일을 지정하는 걸로 보이는데, SpringApplication.run() 메서드는 따로 클래스를 지정 하지 않아도 @Configuration 애노테이션이 있는 모든 클래스를 스캔하는건가요?
-
미해결스프링 핵심 원리 - 기본편
18:00 AppConfig 오류 관련 질문
18:00 정도에 basicScan() 테스트를 실행하면서 AppConfig 클래스의 OrderServiceImpl의 생성자 관련 오류가 발생한 이유가 궁금합니다. basicScan()에서 ac 를 만드는 과정에 인자로 들어간 것은 AutoAppConfig.class인데 왜 AppConfig 클래스에서 오류가 발생하나요?
-
미해결스프링 핵심 원리 - 기본편
beanDefinition cannot resolve symbol 에러
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예[질문 내용]여기에 질문 내용을 남겨주세요. 안녕하세요 해당 강의 부분 코드를 실습 하던 중 beanDefinition 부분에 빨간 줄이 뜨고 cannot resolve symbol 이라고 에러가 뜹니다. 빌드하면 다음과 같은 에러가 뜨는데 어떻게 해야할까요?다른 질문들과 구글링을 통해 Build 에서 rebuild 하기File 에서 cache 삭제하고 다시 시작하기 방법은 해봤는데해결되지 않았습니다,,* Where:Build file 'C:\Users\User\OneDrive\���� ȭ��\spring-study\core\build.gradle' line: 3* What went wrong:Plugin [id: 'org.springframework.boot', version: '2. 7.11'] 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.springframework.boot:org.springframework.boot.gradle.plugin:2. 7.11') Searched in the following repositories: Gradle Central Plugin Repository* Try:> Run with --info or --debug option to get more log output.> Run with --scan to get full insights.
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
람다식 질문 있습니다!
선생님 안녕하세요!스트림 강의를 듣다가 람다식 부분이 이해가 되지 않아 질문 드립니다!아래 3 번째 줄, .filter(x -> x>=90) 부분이 이해가 잘 되지 않는데요.int[] scores = {100, 95, 90, 85, 80}; Arrays.stream(scores) .filter(x -> x>= 90) .forEach(x -> System.out.println(x)); // 100, 95, 90 화살표 왼쪽 X 는, scores 변수 값들을 의미 하는 걸까요?화살표 오른쪽 X 는, return x >= 90 과 같다고 이해하면 될까요?그러면 return 된 값은 어디로 저장이 되는 걸까요? 흑흑. 람다식 너무 어렵습니다 😢
-
미해결스프링 핵심 원리 - 기본편
UnsatisfiredDependencyException, NoUniqueBeanDefinitionException
강의에 나온 테스트를 그대로 따라 진행하였는데, AutoAppConfigTest는 통과가 되었는데,CoreApplicationTests에서 에러가 두개가 나옵니다. Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'memberServiceImpl' defined in file [/Users/aiden/Desktop/CP/study/core/out/production/classes/hello/core/member/MemberServiceImpl.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type 'hello.core.member.MemberRepository' available: expected single matching bean but found 2: memoryMemberRepository,MemberRepositoryCaused by: org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type 'hello.core.member.MemberRepository' available: expected single matching bean but found 2: memoryMemberRepository,MemberRepository 둘 에러 전부 memoryMemberRepository 와 MemberRepository와 관련있어보이는데 어떻게 해야할까요?
-
해결됨나도코딩의 자바 기본편 - 풀코스 (20시간)
질문드립니다
이전 제네릭스 강의에서 int[ ] iArray 는 Integer[ ] iArray로 wrapper해야 printAnyArray(iArray)로 호출이 가능하다고 하셨는데 이번 강의에서 orderCoffee(35); 호출시에는 이런 wrapper 과정이 없이 기본자료형인 int 숫자가 들어갈 수 있는 이유가 궁금합니다.이와 비슷한 다른 질문을 보고 개인적으로 유추해봤을땐 제네릭메소드 호출시 숫자를 Integer로 자동으로 래핑되서 가능한 것 같은데 그러면 iArray를 호출시에는 왜 알아서 wrapper가 안되서 오류가 뜬 건지 질문드립니다.
-
미해결자바 기초부터 마스터하기 with 은종쌤 (Do it 자바 프로그래밍 입문) - Part 1(기초편)
강의노트 어디서 보나요
강의노트 문서는 어디서 봐야하나요
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
Alt + Enter를 써도 Import class가 뜨지않아요
User자체를 인식을 못하는거같긴해요왜 Import class가 안뜨는건가요??