묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결김영한의 실전 자바 - 기본편
잘이해하는데 이게 좀 햇갈려요
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]질문입니다.Driver 클래스에 K3Car k3Car 와 같은 이런 K3Car클래스에 대한 변수,메소드들을 쓰려면 K3Car k3car = new K3Car(); 를 해야 쓸수있는것 아닌가요? 지식 혼동이 조금씩와서 설명부탁가능할까요?이부분이 너무 헷갈려요 접근제어자 다시 봐도 헷갈리구 ㅠ
-
미해결자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide)
[3강] as {클래스} 형 변환의 Nullable 건에 대하여
안녕하세요! 강의 잘보고있습니다! 3강을 보다 질문? 의문? 같은게 들었습니다.fun printAgeIfPerson(obj: Any?) { val person = obj as Person println(person.age) } 아래 코드에서 매개변수 obj의 값으로 null이 들어온 경우 제 생각으로는 val person: Person? 형태로 추론이 되어 person.age 부분에서 ide가 처음부터 오류를 표시해주는게 맞다고 생각이 되었습니다ㅜ. 선생님께서는 어떻게 생각하시는지 궁금합니다.
-
미해결스프링 핵심 원리 - 기본편
lombok 사용 시 [옵션 처리]와 [@Autowired 필드 명, @Qualifier, @Primary]는 어떻게 해야하나요?
[질문 내용]생성자를 딱 1개 두고, @Autowired를 생략하고 Lombok 라이브러리의 @RequiredArgsConstructor 함께 사용하면 final 필드를 매개변수로 가진 생성자를 만들어준다는 것까지는 어느 정도 이해 했습니다!1. 여기서 생성자가 1개이기 때문에 @RequiredArgsConstructor 애노테이션을 제외하면 코드에서 생성자에 관한 부분을 찾을 수 없는데 이전 강의[섹션 7: 옵션 처리]에서 학습한@Autowired(requited=false)@NullableOptional<>를 사용하고 싶다면 어떻게 사용해야하는 것인지 의문이 들어 질문드립니다!2.[@Autowired 필드 명, @Qualifier, @Primary] 강의에서의 @Autowired 필드 명 방법과 @Qualifier 방법(+ 애노테이션으로 만들어 사용하는 방법)도 lombok 라이브러리의 @RequiredArgsConstructor 사용시 어떻게 사용해야하는지도 궁금합니다.두 질문의 경우에는 lombok을 사용하지 않고 직접 생성자 주입 코드를 만들어야 할까요?
-
미해결스프링 핵심 원리 - 기본편
쓰레드 활용 예시를 다룬 강의가 있나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 싱글톤 예시를 설명해주시면서, 쓰레드를 사용할 때 위험성에 대해서 말씀해주신 것을 봤습니다. 혹시 이런 문제점을 다룬 강의가 없나요?
-
해결됨스프링 핵심 원리 - 기본편
AppConfig 빈 객체
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예[질문 내용]스프링 컨테이너는 {빈 이름 : 빈 객체} 와 같이 저장된다고 배웠습니다.new AnnotationConfigApplicationContext(AppConfig.class);이때 AppConfig.class도 빈으로 등록된다고 하셨는데, 메소드 이름이 빈 이름, 그 메소드의 반환 객체가 빈 객체가 된다면, AppConfig는 클래스이고 반환객체도 없는데빈 이름과 빈 객체가 무엇으로 저장되는 것인가요?
-
미해결스프링 핵심 원리 - 기본편
@Configuration을 통한 @Bean 등록 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.@Configuration을 통해 빈을 수동등록할 때 강의 예제에서는 AppConfig 클래스를 사용하였는데요AppConfig1, AppConfig2, AppConfig3이라는 클래스에 각각 @Configuration을 붙이고 AppConfig1에서는@Bean public MemberService memberService()를AppConfig2에서는 @Bean public OrderService orderService()를 등록하고 ApplicationContext ac1 = new AnnotationConfigApplicationContext(AppConfig1.class);ApplicationContext ac2 = new AnnotationConfigApplicationContext(AppConfig2.class);이렇게 해서 스프링 컨테이너를 두 개 만들 수 있을거 같습니다이렇게 했을때 단점과 장점이 있는지? 실제로 이렇게 컨테이너를 분할하는 경우가 있는지? 궁금합니다 추가적으로 각 AppConfig1, AppConfig2에서 동일한 객체를 스프링 빈으로 등록한다면 이때도 여전히 싱글톤인지 궁금합니다
-
해결됨김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
연산자 문제 문의드립니다
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]문제 조건은 이렇게입니다!int 형 변수 score 를 선언하세요. score 가 80점 이상이고, 100점 이하이면 true 를 출력하고, 아니면 false 를 출력하세요. 사소한 질문이긴한데, 문제 답은 저렇게 나왔는데boolean result 변수를 사용해서 출력해야하나요??저는 그냥 바로 이렇게 했습니다 ;-; ...결과는 똑같이 나오는데 ...이렇게 했을 시에 가독성이 떨어져서 변수로 하는걸까요 ..?
-
미해결스프링 핵심 원리 - 기본편
상향식 개발방식
[질문 내용]지금 선생님이 가르쳐주시는 방식이 보통 실무에서 만드는 방식인가요? 컨트롤러 -> 서비스 -> 리포지토리 순서로 만드는것으로 알고있어서 궁금합니다
-
해결됨C개발자를 위한 최소한의 C++
강사님 질문 드립니다.
임시객체와 보이지않는 복사생성 과정 프로그램에서- 제가 임의로 복사생성자 부분의 프로그램을TestData(const TestData& rhs){ cout << "TestData(const TestData&)" << endl;}- 위와 같이 수정하고- F11키로 디버깅 추적을 해보면 복사생성자가분명 위의 생성자에서는 nData 를 접근하는 명령이 없는데도 아래 부분에 있는private 😀int nData = 0;부분을 수행합니다.왜 그런지 질문 드립니다. 아울러 제가 초기화 부분 "= 0" 를 없애 버리면 수행되지 않습니다.
-
해결됨스프링 핵심 원리 - 기본편
5. 싱글톤 컨테이너 - 싱글톤 패턴의 단점 부분 질문입니다.
안녕하세요,싱글톤 컨테이너 - 싱글톤 패턴의 단점 부분에서 질문이 있습니다. 스프링 컨테이너가 빈을 싱글톤으로 관리하는 부분에 대해 설명하시는 강의이므로 ["컨테이너에 의한 싱글톤"과 비교하여 "일반 싱글톤 패턴"이 갖는 단점]이라는 측면으로 이해하려 합니다.의존관계상 클라이언트가 구체 클래스에 의존한다 -> DIP를 위반한다. / 클라이언트가 구체 클래스에 의존해서 OCP 원칙을 위반할 가능성이 높다.다른 질문글들을 찾아보니 이 내용은 "컨테이너를 사용하지 않을 경우 싱글톤이 아닌 일반적인 구체 클래스를 클라이언트에서 직접 new 하듯이 클라이언트에서 구체적인 싱글톤 클래스의 getInstance를 호출해야한다"는 점에서 DIP를 위반한다는 내용으로 이해됩니다. 그러면 이 단점은 컨테이너를 사용하지 않을 경우 싱글톤 클래스나 싱글톤이 아닌 클래스나 마찬가지로 갖는 단점인데 싱글톤 패턴의 단점이라고 표현하신 점에서 제가 이해하지못한 차이가 있는지 궁금합니다.테스트하기 어렵다. / 내부 속성을 변경하거나 초기화 하기 어렵다.컨테이너를 사용하면 config에서 의존관계의 구체클래스만 변경하며 객체의 속성 변경이 용이하지만 직접 구현한 싱글톤 패턴은 이미 생성된 static 객체가 존재하므로 내부를 변경해야한다면 1) 싱글톤 클래스의 코드를 고치거나 2) 클라이언트 또는 테스트 코드에서 수정자 등을 이용해야하므로 내부 속성 변경이 번거롭고 따라서 여러 케이스로 테스트가 어렵다는 의미일까요?결론적으로 유연성이 떨어진다. ("DI가 어렵다, 구체 클래스의 getInstance를 다 해줘야 한다, ...")이 부분도 컨테이너가 없을 경우 일반 클래스, 싱글톤 클래스가 갖는 단점이라 생각되는데 싱글톤의 단점이라 표현하신 점에서 제가 이해하지 못한 부분이 있는지 궁금합니다. 감사합니다.
-
미해결김영한의 실전 자바 - 기본편
문제는 비슷하게 풀었는데
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]Book 기본 생성자에 0 은 생략이 가능한거죠?
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
반복문 문제중 피라미드 문제 관련하여 질문있습니다!
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]안녕하세요! 섹션 5 반복문 문제 중에 있는 반쪽짜리 피라미드가 아닌 완전한 피라미드를 만들어 보고 싶은데 혹시 섹션 5까지의 내용으로 구현을 할 수 있는 부분일까요?
-
해결됨스프링 핵심 원리 - 기본편
[설정 정보 질문] Code: @Configuration proxyMethods usage warnings 기본값 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 아니요2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요?예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]안녕하세요. 섹션 6의 첫 번째 강의를 듣던 도중 쉬프트+쉬프트를 누르고 @configuration을 검색하다가 인터넷에 검색해봐도 모르겠는 설정을 건들여서 질문드리게 되었습니다.Code: @Configuration proxyMethods usage warnings 에서 기본값이 ON과 OFF 중 뭔지 알 수 있을까요?강의 내용과 상관 없는 질문 죄송합니다.
-
미해결스프링 핵심 원리 - 기본편
coreapplication 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 이렇게 에러가 뜨는데 어떻게 처리해야할까요?
-
미해결스프링 핵심 원리 - 기본편
AppConfig에서 직접 빈 등록하는 이유
AppConfig 파일을 만들고 @Configuration 을 붙여서 @Bean을 직접 등록하는 경우는 어떤 경우인지 궁금합니다. 이전 강의에서 @Service, @Repository, @Component를 붙여도 스프링에서 빈으로 자동등록이 된다 들었는데, 이미 위에 나열된 어노테이션을 붙였음에도AppConfig에서 @Configuration을 붙이고 @Bean으로 직접 등록하는 경우는 뭘까요..? 자동등록된다고 공부했는데, 또 이렇게 직접 수동등록해주니까 개념이 헷갈려요.이미 자동등록 된 애들을 왜 다시 직접 등록할까요??@Configuration public class AppConfig { @Bean public MemberService memberService() { return new MemberServiceImpl(memberRepository()); } @Bean public MemberRepository memberRepository() { return new MemoryMemberRepository(); } @Bean public OrderService orderService() { return new OrderServiceImpl(memberRepository(), discountPolicy()); } @Bean public DiscountPolicy discountPolicy() { return new RateDiscountPolicy(); } }
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
While 반복문) 짝수 출력 문제
이 문제에 대한 답을 강사님께서는 이렇게 풀어주셨는데int num = 2; int count = 1; while(count <= 10){ System.out.println(num); num += 2; count++; }이렇게 아래와 같이 풀어도 될까요? 이거는 좋은 코드일까요?nt num = 1; int count = 0; while(count < 10){ if (num % 2 == 0){ System.out.println(num); num++; count++; }else{ num++; } }제가 처음 문제를 이해한 바로는 num이 몇으로 시작하든 num에서부터 처음 짝수 10개를 출력하는 코드를 작성하고 싶었습니다. + 위의 강사님이 풀어주신대로면 num에 홀수를 넣는 순간 처음 홀수 10개를 출력하는 답이 나오기 때문에 만약 num = 2라는 문제조건이 없다면 if (num % == 0)를 작성해서 이때만 답이 나오도록 예외 설정을 해야하는 것도 맞나요?
-
미해결스프링 핵심 원리 - 기본편
스프링 완전정복 로드맵에 따라 강의중인데 질문있습니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]저 로드맵 따라서 하는게 맞을까요? 1. 뭔가 오히려 MVC 1,2편이 서블릿부터 다루고 있는것 같아서 궁금합니다.2. HTTP 웹 기본 지식이 첫번째에 들어가야 하는게 아닐까요?
-
미해결김영한의 실전 자바 - 기본편
상속과 메모리 구조
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]상속과 메모리 구조에서 객체를 생성했을 때 객체 호출자타입이 본인 타입을 찾는다고 했는데 10:00분 쯤에서 말한 자식을 먼저 찾고 없으면 부모에서 찾는다고 했는데 호출자 타입의 시작이 부모라면 부모타입에 먼저 가고 부모에 없으면 자식으로 가나요? 아니면 부모는 자식을 모르니까 부모타입에서 없으면 그대로 컴파일 오류가 발생하나요?제가 생각하기엔 부모에서 없으면 바로 컴파일 오류가 발생할 거 같은데 맞나요?
-
미해결스프링 핵심 원리 - 기본편
@Configuration 질문드립니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 네2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 네3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 네[질문 내용]여기에 질문 내용을 남겨주세요. @Configuration은 어떨때 쓰이나요?Appconfig가 있는 어플도 있고 없는 어플도 있는데 차이를 모르겠습니다.자세히 설명주시면 감사하겠습니다.
-
미해결스프링 핵심 원리 - 기본편
OrderApp 빌드 오류
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]CoreApplication이나 MemberApp은 잘 되는데 OrderApp을 실행하면 다음과 같은 오류가 뜹니다.. 코드 문제인가 싶어 복붙도 해서 실행해봤는데 똑같은 결과가 나옵니다. 구글에 검색해보니 같은 포트를 써서 그렇다는 이야기를 봐서 8080 포트가 켜져있는지 보았는데 없었습니다.도저히 모르겠어서 질문드립니다 ..ㅠㅠ