묻고 답해요
167만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨스프링 핵심 원리 - 기본편
갑자기 @Test 시 junit 이 import 가 안돼요
plugins { id 'java' id 'org.springframework.boot' version '3.5.3' id 'io.spring.dependency-management' version '1.1.7' } group = 'hello' version = '0.0.1-SNAPSHOT' java { toolchain { languageVersion = JavaLanguageVersion.of(21) } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter' testImplementation 'org.springframework.boot:spring-boot-starter-test' testRuntimeOnly 'org.junit.platform:junit-platform-launcher' } tasks.named('test') { useJUnitPlatform() }지금 Gradle.build 코드이고 이전까지 test 폴더 하위에서 test 시에는 import 가 잘 됐는데27강의 ApplicationContestInfoTest.java클래스에서는 안되네요
-
미해결스프링 핵심 원리 - 기본편
콘솔창에 빈 등록 상태 로그가 안떠요
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]강의 25강 6분 41초에 나타나는 AppConfig 클래스에서 등록한 빈이 콘솔 창에 나오던데제가 따로 실습하는 인텔리제이에서는 나오지 않습니다.혹시 인텔리제이 설정을 따로 바꿔야 하나요?참고로 저는 인텔리제이 커뮤니티 버전을 쓰고 있습니다.
-
미해결김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
스레드 실행 위치 관련 질문
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]섹션 5의 <프린터 예제3 - 인터럽트 코드 개선 관련> 질문입니다.printer.addJob(input) 관련하여, 어떤 스레드에서 어디서부터 어디까지 책임지고 실행하는지 헷갈려서 정리해봤는데 검토해주시면 감사하겠습니다. === printer.addJob(input) 은 main 스레드(호출 스택)에서 실행된다.공유하는 Heap 메모리 영역에 Printer 객체 주소가 있다.main 스레드는 Printer 객체의 jobQueue 변수에도 접근이 가능하고 addJob() 메서드를 호출할 수 있다.따라서, addJob() 메서드에 대한 스택 프레임도 main 스레드(호출 스택)에 쌓여서 처리된다. === JPA 이후 오랜 만에 영한님 강의를 다시 듣기 시작했는데 재밌네요. 늘 감사합니다.
-
미해결스프링 핵심 원리 - 기본편
테스트 코드 실행 시 콘솔창에 나타나는 경고문
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]Section4 에 19강 관심사의 분리 강의를 듣다가 테스트를 해보니 콘솔창에 이런 경고문이 나타나요혹시 그 이유와 해결 방법 알려주실 수 있나요?Mockito is currently self-attaching to enable the inline-mock-maker. This will no longer work in future releases of the JDK. Please add Mockito as an agent to your build as described in Mockito's documentation: https://javadoc.io/doc/org.mockito/mockito-core/latest/org.mockito/org/mockito/Mockito.html#0.3WARNING: A Java agent has been loaded dynamically (/Users/parkboseung/.gradle/caches/modules-2/files-2.1/net.bytebuddy/byte-buddy-agent/1.17.6/17b32fd9f57deef02842f7f05abc4ad8127fe34e/byte-buddy-agent-1.17.6.jar)WARNING: If a serviceability tool is in use, please run with -XX:+EnableDynamicAgentLoading to hide this warningWARNING: If a serviceability tool is not in use, please run with -Djdk.instrument.traceUsage for more informationWARNING: Dynamic loading of agents will be disallowed by default in a future releaseJava HotSpot(TM) 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended
-
미해결김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
2:33초의 강의 내용
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]2:33초의 강의 내용 중 비효율이 있을 뿐 로직은 모두 정상 작동한다. 이 부분 말씀이 그냥 소비자가 소비자를 깨우는 상황에도 예를 들어 put(), take() 안의 로직이 작동한다는 거죠? 만약 생성자나 소비자가 같이 대기 하고 있을 때 같은 종류의 스레드만 계속해서 깨울 시에 starvation이 발생할 수 있는 것과는 이야기와는 별개인거 맞을까요?
-
미해결파이썬 알고리즘 트레이딩 파트1: 알고리즘 트레이딩을 위한 파이썬 데이터 분석
Select Kernel에서 Python Interpretor 안 뜨는 오류 해결
저는 python extension 버전을 2024.2.1로 낮춰서 해결했습니다.1년전 버전을 사용하는게 좋지 않게 느껴지는데, 다른방법들 다 해봤는데 저는 이것만 돼서 할수없이 합니다.
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
PayOption
package poly.ex.pay2; public class PayOption { Pay findPay(String option) { //결제 수단 추가시 변경되는 부분. if (option.equals("kakao")) { return new KakaoPay(); } else if (option.equals("naver")) { return new NaverPay(); } else if (option.equals("newPay")) { return new NewPay(); } else { return new DefaultPay(); } } }마지막 강의 실전 문제 중에서 결제 수단 관련 문제입니다.위와 같이 코드를 작성하게 되면 결제 수단이 추가될 때마다 클래스 내부 코드가 변경이 되는데, OCP를 위반한 것 같은데, 왜 이렇게 작성한 것인지 궁금해서 여쭤봅니다.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.
-
미해결김영한의 실전 자바 - 기본편
상속 메모리 예시에서 메소드, 힙 영역 중 실제 저장되는 영역은 어디인가요?
[질문 내용]여기에 질문 내용을 남겨주세요.안녕하세요! 강의 잘 보고 있습니다.자바 메모리 강의에서 인스턴스의 메소드는 힙 영역이 아닌 메소드 영역에서 공통으로 관리된다고 학습하였습니다.이후 상속, 다형성 강의에서 상속관계의 인스턴스 메모리 구조가 그림으로 많이 설명되는데해당 영역은 실제로 메소드 영역인지, 힙 영역인지 궁금합니다.1) 메소드 영역이라면 클래스당 전역으로 1개가 생성되어 관리되는 구조이기 때문에 자식 인스턴스 생성시 해당 메모리에 부모 인스턴스가 함께 생성되어 메소드를 참조하는 구조가 잘 이해가 되지 않습니다.2) 그렇다면 힙 영역에서 각자 생성된다는 것인데, 앞서 말씀드렸듯이 인스턴스의 메소드는 메소드 영역에서 전역으로 관리된다고 하여 혼란이 있습니다.답변 부탁드립니다.!
-
미해결파이썬 알고리즘 트레이딩 파트1: 알고리즘 트레이딩을 위한 파이썬 데이터 분석
VSstudio에서 kernel 못찾음
강의 관련 내용은 아닙니다만, VSstudio상에서 kernel을 찾지 못하는 문제가 있어서 문의드립니다. myenv-finance-analysis 이름의 가상 환경을 구축해서 강의를 잘 듣고 있었는데요, 어느 날 다시 강의 수강을 진행하려고 보니까 아래와 같이 kernel을 찾기만 하고 kernel을 찾지 못하네요. 해당 부위를 클릭해서 가상환경을 선택하려고 해도 myenv-finance-analysis 가상환경을 찾지를 못합니다. 가상환경 내에서 pip install ipykernel로 패키지도 설치해놓았는데... 이런 문제가 발생하는 이유가 뭘까요?
-
미해결스프링 핵심 원리 - 기본편
application.properties 수정을 해줘도 에러가 납니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]에러메시지와 AutoAppConfig, AppConfig를 보여드릴게요 ***************************APPLICATION FAILED TO START***************************Description:Parameter 0 of constructor in hello.core.member.MemberServiceImpl required a single bean, but 2 were found: - memoryMemberRepository: defined by method 'memberRepository' in class path resource [hello/core/AutoAppConfig.class] - memberRepository: defined by method 'memberRepository' in class path resource [hello/core/AppConfig.class]This may be due to missing parameter name informationAction:Consider marking one of the beans as @Primary, updating the consumer to accept multiple beans, or using @Qualifier to identify the bean that should be consumedEnsure that your compiler is configured to use the '-parameters' flag.You may need to update both your build tool settings as well as your IDE.(See https://github.com/spring-projects/spring-framework/wiki/Upgrading-to-Spring-Framework-6.x#parameter-name-retention) package hello.core; import hello.core.member.MemberRepository; import hello.core.member.MemoryMemberRepository; import org.springframework.context.annotation.*; @Configuration//설정정보니까 @ComponentScan//스프링빈을 쫙 긁어 가지고 자동으로 스프링 빈으로 끌어올려야 된다. ( basePackages = "hello.core.member",//이 위치에서부터 찾아서 들어가는 것 이렇게 해갖고 멤버부터 컴포넌트 스캔 대상이 된다 basePackageClasses = AutoAppConfig.class,//지정한 클래스의 패키지를 탐색 시작 위치로 지정한다. 지정 안하면 디폴트 excludeFilters = @ComponentScan.Filter(type = FilterType.ANNOTATION, classes = Configuration.class) )//컴포넌트 스캔을 사용하면 @Configuration 이 붙은 설정 정보도 자동으로 등록되기 때문에, AppConfig, TestConfig 등 앞서 만들어두었던 설정 정보도 함께 등록되고, 실행되어 버린다. 그래서 excludeFilters를 이용해서 설정정보는 컴포넌트 스캔 대상에서 제외했다. public class AutoAppConfig {//테스트 결과 memberService2, memoryMemberRepository 이두가지만 입력 됨 @Bean(name= "memoryMemberRepository") //@Primary //한 빈을 기본적으로 사용하고 싶다면 그 빈에 @Primary 어노테이션을 추가하세요. public MemberRepository memberRepository(){ return new MemoryMemberRepository(); } }// 설정 정보 클래스의 위치를 프로젝트 최상단에 두는 것, 프로젝트 시작루트에 두는게 좋음, componentScane->스프링 빈 자동 등록 SpringBootApplication ctrl+클릭해보면 알수 있다. //컴포넌트 스캔 기본 대상 컨트롤러, 서비스, 리포지터리, 컨피규레이션 다 스프링 빈 등록 어노테이션 상속이나, 연동되는 기능없다.package hello.core; import hello.core.discount.DiscountPolicy; import hello.core.discount.RateDiscountPolicy; import hello.core.member.MemberRepository; import hello.core.member.MemberService; import hello.core.member.MemberServiceImpl; import hello.core.member.MemoryMemberRepository; import hello.core.order.OrderService; import hello.core.order.OrderServiceImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Primary; @Configuration //안붙여도 스프링 컨테이너에 스프링 빈로 다 등록됩니다 애를 빼고 테스트시 순수한 앱구성이 출력됨 근데 이렇게 되면 다른 싱글톤이 깨짐 출력이 5개 전체 출력됨 public class AppConfig { //@Bean memberService -> new MemoryMemberRepository() //@Bean orderService -> new MemoryMemberRepository() 이렇게 하면 싱글톤이 깨지지 않을까요?? //이 골뱅이 빈이면 컨텐츠 앱이 들어와요 //call AppConfig.memberService //call AppConfig.memberRepository //call AppConfig.memberRepository //call AppConfig.orderService //call AppConfig.memberRepository //실제 테스트 돌려보니 //call AppConfig.memberService //call AppConfig.memberRepository -> 이게 세번호출되어야 하는데 한번만 호출 된 신기한 상황 스프링이 정말 어떠한 방법을 써서라도 싱글톤을 보장해 주는구나 라는 걸 아실 수 있음 //call AppConfig.orderService //appconfig에 비밀이 있다. //이 골뱅이 빈이 붙은 메서드마다 이미 스프링빈이 존재하면 존재하는 빈을 //반환하고 스프링빈이 없으면 새로 생성해서 스프링빈으로 등록해서 반환하는 코드가 동적으로 //만들어지는 거예요 이덕분에 싱글톤이 보장되는거에요 없으면 스프링빈등록, 있으면 기존에 꺼내서 반환 그렇기 때문에 세번 호출되는게 아니라 한번만 호출 이미 등록이 되있어서 // @Autowired MemberRepository memberRepository;//이렇게하면 Configuration 없애도 해결이됨 의존관계 주입 그러면 스프링에서 다시 끌어온 거를 집어넣어 주는 거거든요 @Bean public MemberService memberService(){// 멤버서비스가 빈의 이름 System.out.println("call AppConfig.memberService");//soutm return new MemberServiceImpl(memberRepository());// ctrl+alt+m 리턴해서 new해서 반환하는 요 객체를 빈 객체로 등록해준다. 요거를 스프링 빈이라고 한다. }// 빈 이름은 항상 다른 이름을 부여 @Bean public MemberRepository memberRepository() { System.out.println("call AppConfig.memberRepository"); return new MemoryMemberRepository(); } @Bean public OrderService orderService() { System.out.println("call AppConfig.orderService"); return new OrderServiceImpl(memberRepository(),discountPolicy());//이렇게 주입된걸 넣어주면 테스트 통과됨, 주소값도 같음 } @Bean public DiscountPolicy discountPolicy() { //return new FixDiscountPolicy();// 할인 정책에대한 객체를 바꾼다. return new RateDiscountPolicy(); } }
-
미해결스프링 핵심 원리 - 기본편
applcation.properties 수정해도 에러가 납니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]Parameter 0 of constructor in hello.core.member.MemberServiceImpl required a single bean, but 2 were found: - memoryMemberRepository: defined by method 'memberRepository' in class path resource [hello/core/AutoAppConfig.class] - memberRepository: defined by method 'memberRepository' in class path resource [hello/core/AppConfig.class]This may be due to missing parameter name information이런 에러메시지가 뜨고.. AutoAppConfig 클래스 @Bean(name= "memoryMemberRepository") MemberRepository memberRepository(){ return new MemoryMemberRepository(); } 그리고 AppConfig 클래스 @Bean public MemberRepository memberRepository() { System.out.println("call AppConfig.memberRepository"); return new MemoryMemberRepository(); }이렇게 두 메서드 이름이 같아서 생기는 거 같은데 원래 여기 까지 들을때 다른 이름으로 수정 되어있어야 하나요?
-
미해결스프링 핵심 원리 - 기본편
main 패키지와 test 패키지의 컴포넌트 스캔 범위
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용] @Test void findAllBean() { ApplicationContext ac = new AnnotationConfigApplicationContext(AutoAppConfig.class); // 생략... } @Component static class DiscountService { // 생략 }DiscountService.class를 new AnnotationConfigApplicationContext()의 인자로 대입하는 대신에, 클래스에 @Componant를 붙였는데 정상적으로 테스트가 통과됐어요.제가 알기로는 AutoAppConfig는 main 패키지에 속하며, DiscountService는 test 패키지에 속하니깐 DiscountService는 컴포넌트 스캔의 대상이 아니지 않나요? 그런데 어째서 정상적으로 의존관계 주입이 된 건가요?
-
미해결김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
executor service를 스프링에서 이용한다면 어떻게 관리하는게 좋은가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]실무에서 강의를 수강하기 이전에 자바에서 제공하는 executor service를 사용하여 병렬로 프로그램을 짠 경험이 있는데요.저는 spring boot를 사용하여 service 내부에 executors의 고정스레드풀을 사용하여 특정 서비스를 호출할때마다 생성하도록 했습니다.예를 들면, List<?> methodA(req) { ExecutorService es = Executors.newFixedThreadPool(10); List<CompletableFutures> tasks ... // 비즈니스로직 finally{ // shutdown 로직}}공통으로 executor 서비스를 관리하는 클래스를 만들어서 사용해야할까요? 우선 제가 개발한 환경에서는 executor service를 저만 사용했습니다.만약 위에 제가 작성한대로 methodA를 호출할 때마다 쓰레드 풀이 생성되는거 같은데 맞을까요? 이런 방식보다 더 효율적으로 쓰레드를 관리하고 정리할 수 있는지 궁금합니다.
-
미해결스프링 핵심 원리 - 기본편
강의 순서 문의(자주 묻는 질문 완독 완료)
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]안녕하세요, 김영한 강사님.마지막 수업 "65. 다음으로" 강의에서 스프링 입문, 스프링 핵심 원리 기본편 수강 후 스프링부트 JPA 로드맵을 진행해도 된다고 말씀해주셨었는데요. 이 말씀이 지금 2025년 7월 기준에도 적절한지 여쭙고자 질문 드립니다. 지금 현재 학습을 해야하는 상황은 아래와 같습니다. 스프링 데이터 JPA와 QueryDsl 을 사용하는 프로젝트에 8월 초 투입이 될 예정영한 선생님 로드맵 중 스프링 관련 학습은 입문편과 핵심 원리 기본편 까지 학습함이전에 Spring + Mybatis로 개발경험이 있어서 1번 기술 스택을 우선적으로 추가해야 할 필요를 느낌 자주 하는 질문에 작성되어있는 백엔드 개발자 로드맵 유튜브 영상은 확인했습니다. 해당 로드맵은 핵심 원리 고급편 전 까지 듣고 JPA 로드맵을 청강 후 남은 고급편 등을 청강하는 것으로 알고있는데요. 이 로드맵을 8월 초까지 다 듣기는 현실적으로 어렵다보니, 스프링부트 JPA를 먼저 장착해도 되는지 궁금합니다. 좋은 강의 늘 감사드리며 질문 마칩니다.감사합니다 :D
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
jdk version
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]oracle openjdk 설치하려고 할 시 버전이 21은 선택이 안되고 24로 고정되어 선택되는데 vendor를 변경해도 될까요? 아니면 버전을 24로 해도 될지 궁금합니다.
-
미해결Readable Code: 읽기 좋은 코드를 작성하는 사고법
강의 내용 정리 및 자료 제작 툴 문의 드립니다.
학습 관련 질문을 남겨주세요. 어떤 부분이 고민인지, 무엇이 문제인지 상세히 작성하면 더 좋아요!먼저 유사한 질문이 있었는지 검색해 보세요.서로 예의를 지키며 존중하는 문화를 만들어가요. 강사님 안녕하세요. 🙂 우선, 테스트 코드에 이어 양질의 강의 제공해 주셔서 감사합니다! 🙏🏻프로젝트 리팩토링 단계에서 본 강의를 접한 덕분에 많이 배우고 있습니다! 혹 제가 이해한 내용을 바탕으로 블로그 혹은 깃허브에 정리해도 될지요?출처는 기재할 예정이며, 블로그 수익과는 전혀 관계없습니다. 더불어 강의 자료 제작 시 사용하시는 드로잉 툴?이 어떤 것인지도 궁금합니다. 답변 기다리겠습니다, 감사합니다!
-
미해결김영한의 실전 자바 - 기본편
문제해결 전 코드
문제 풀이 영상에서 강사님 따라서 코드 작성하고 싶은데,문제해결전 코드는 어디에 있나요수업자료에는 문제가 해결된 코드밖에 찾지 못해서요 문제해결전 코드가 어느 파일에 있는지 알려주시면 감사하겠습니다
-
해결됨오브젝트 - 설계 원칙편
함수형 스타일에 대해선 어떻게 생각하시나요?
이제 꼭 함수형 언어를 사용하지 않더라도 요즘 언어들 대부분 함수형 언어의 아이디어나 장점들을 반영하는 트렌드인데, 회사에서도 코틀린을 사용 중이라 질문 드려봅니다.코틀린 라이브러리들을 사용하다 보면 함수형 스타일의 설계와 API들을 꽤 많이 보고 있기도 하고 특히 람다를 굉장히 많이 사용하는데 적절하게 람다나 함수형 스타일의 코드를 사용하는 기준이나 원칙들도 있으신지 궁금하네요.
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
단축키 툴팁
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 단축키가 밑에 초록색으로 툴팁 생성되잖아요어떤 걸 설치하거나 설정하면 뜰까요?
-
해결됨스프링 핵심 원리 - 기본편
프로젝트 생성에서 에러가 나요
스프링 핵심원리 이해 1 - 프로젝트 생성 강의에서 이렇게 설정 후 core 압축 파일을제가 원하는 폴더에 풀어서 인텔리제이에서 열었고 현재 이 build.gradle 코끼리 버튼을 누르니 콘솔창에 밑에 사진처럼 에러가 떠요 여기서 어떻게 해야하는지 알 수 있을까요?