8-2. 단항 연산자 중복 : 전위 ++ 연산자 작성 질문
미해결
C++ 프로그래밍
안녕하세요, 강의 내용으로 실습하던 도중 전위 연산자 ++ 중복에 대해 궁금한점이 있습니다. 반환이 참조자 타입이 아니더라도 함수 내에서 이미 멤버 변수를 갱신했으므로 원본 객체는 적용되는게 맞지 않나요??
- c++
- 객체지향
174만명의 커뮤니티!! 함께 토론해봐요.
미해결
C++ 프로그래밍
안녕하세요, 강의 내용으로 실습하던 도중 전위 연산자 ++ 중복에 대해 궁금한점이 있습니다. 반환이 참조자 타입이 아니더라도 함수 내에서 이미 멤버 변수를 갱신했으므로 원본 객체는 적용되는게 맞지 않나요??
미해결
스프링 핵심 원리 - 기본편
질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 강의의 fieldInjectionTest() 에서는 new OrderServiceImpl() 로 객체를 직접 생성하는데, 이 경우 스프링 컨테이너를 거치지 않으므로 @Autowired 필드 주입이 실행되지 않는 것 아닌가요? 그렇다면 이 테스트는 필드주입의 단점을 보여주는 테스트가 아닌것 같아서요..
미해결
스프링 핵심 원리 - 기본편
질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 컴포넌트 스캔과 의존관계 자동 주입 시작하기 강의에서 AutoAppConfig를 만든 이유는 단지 테스트 빈을 가져오기 위한 설정정보를 넘기기 위해서인가요? 컴포넌트 스캔과 자동 주입을 활용할 경우 Config 클래스가 특별한 상황이 아닐 경우 필요가 없을 것 같은데, 맞을까요?
미해결
스프링 핵심 원리 - 기본편
질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] AppConfig의 경우 객체 설정 정보들을 직접 작성해서 설정하는 객체로 이해를 했습니다. 근데 이전에 스프링 빈 관련해서 학습할 때 '스프링 빈으로 등록이 되면 스프링이 알아서 객체를 만들어서 주입을 해준다' 라고 정리를 했었거든요. 그럼 여기서 굳이 AppConfig를 사용하는 이유는 단순히 여러 구현체들을 바꿔가면서 사용할 수 있기 때문인가요? 스프링 빈의 경우 여러 구현체가 등록이 되면 스프링이 자동 생성할 때 어떤 구현체를 사용할 지 몰라서 컴파일 에러가 난다고 알고 있습니다.(물론 특정 어노테이션을 통해서 해결 가능하지만) 스프링빈을 통해서 자동 생성 및 주입이 가능한데, AppConfig가 왜 필요한지, 무슨 차이인지 궁금합니다!
해결됨
C개발자를 위한 최소한의 C++
강의 잘 보고 있습니다. C++강의 이전에 C언어 강의와 선형자료구조 강의를 강사님 강의로 공부했습니다. 그때는 학습폴더를 하나 만들고 솔루션을 만들어서 예제 하나당 프로젝트 하나씩 추가하는 방식으로 공부했는데요 이번 C++ 실습은 똑같은 방식으로 하니깐 학습폴더 용량이 너무 많이 증가합니다 (거의 프로젝트 하나당 100~200mb를 차지하는것 같습니다) vs폴더를 싹 지우니깐 용량이 95%?정도 줄어드는데 매번 실습을 마치고 vs폴더를 지워야 하는지....궁금합니다.
미해결
김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요 감사님 크게 수업과 관련없는 질문입니다만 강의를 며칠 쉬었는데요.. 그 IntelliJ IDEA체험판 주기가 만료가되었는데 결제하는게 맞겠죠?
미해결
김영한의 실전 자바 - 중급 1편
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 예외처리 3강에서 결과 값이 다르게 나오길래 한참을 코드 비교 해보니 success를 sucess 로 작성 이걸 변경하니 문제가 해결이 되었습니다. 근데 이 오타가 어디에 영향을 줘서 결과가 다르게 나오는지 잘 이해가 안가서 문의 합니다.
미해결
스프링 핵심 원리 - 기본편
========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) --> 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) --> 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) --> 예 [질문 내용] 현재 강의를 듣고 시작하기 위해 초기 Spring Boot를 설정 해야 할 것 같아 궁금한 사항이 있어 질문을 드립니다. 현재 제 자바 버전은 21과 윈도우 환경에서 사용하고 있으며 인텔리제이를 사용하고 있습니다. 영한 선생님의 강의 pdf를 보면요, start.spring.io 에 접속 후 보면 프로젝트 선택 중 Spring Boot 3.x.x를 선택하라고 나와있는데요, 현재 제가 접속할 시에는 전부 4버전들만을 선택 할 수 있게 되어 있는데요, 일단 pdf 교과서에는 스프링부트 3.0이상, JDK 17이상을 사용해야 한다고 써있기에 그냥 스프링 부트 4.1.0 선택 하고 현재 자바 21버전을 사용 하면 앞으로 강의를 진행할 시 결과물들이 영한님 화면과 완전 똑같이 진행이 가능할까요? 아니라면요, 꼭 스프링 부트 3.2라고 명시되어 있기에 해당 버전을 선택해야 하나요? 그런데 문제는 스프링 부트 3.2를 사용해야 한다면 start.spring.io 에서 4버전들이 아닌 3.2버전을 찾아서 선택해야 하는데요, 어디를 찾아봐도 3.x.x 클릭 할 수 있는 곳은 없는데요, 어떻게 셋팅을 해야하나요? 참고 해서 셋팅 할 수 있는 메뉴얼도 알려주시면 감사하겠습니다.답변을 기다리겠습니다.
해결됨
기초 탄탄! 독하게 시작하는 Java - Part 2 : OOP와 JVM
안녕하세요, 강사님. Shape 클래스 실습을 진행한 결과물을 공유드립니다. 실습 내용을 바탕으로 도형의 크기를 부모 클래스에서 관리하고, 각 자식 클래스에서 기본 크기를 지정할 수 있도록 생성자를 구성해 보았습니다. 시간 괜찮으실 때 구현 방향에서 어색한 부분이나 개선하면 좋을 점이 있는지 간단히 봐주시면 감사하겠습니다. 또한 이번 실습에서 추가로 생각해 보면 좋을 내용이 있다면 함께 알려주시면 감사하겠습니다. 감사합니다. package java2_30; import java.util.Scanner; /** * 화면에 출력할 수 있는 도형의 공통 부모 클래스입니다. * * 현재 실습에서는 삼각형과 정사각형만 다루므로, * 가로와 세로를 구분하지 않고 하나의 size 값으로 크기를 관리합니다. */ abstract class Shape { private final int size; protected Shape(int size) { this.size = size; } protected final int getSize() { return size; } /** * 각 도형의 모양을 콘솔에 출력합니다. */ abstract void render(); } class Rectangle extends Shape { private static final int DEFAULT_SIZE = 4; public Rectangle() { this(DEFAULT_SIZE); } public Rectangle(int size) { super(size); } @Override public void render() { for (int i = 0; i < getSize(); i++) { for (int j = 0; j < getSize(); j++) { System.out.print("*\t"); } System.out.println(); } } } class Triangle extends Shape { private static final int DEFAULT_SIZE = 5; public Triangle() { this(DEFAULT_SIZE); } public Triangle(int size) { super(size); } @Override public void render() { for (int i = 0; i < getSize(); i++) { for (int j = 0; j <= i; j++) { System.out.print("*\t"); } System.out.println(); } } } class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("사각형은 0, 삼각형은 그 외 숫자를 입력하세요: "); int input = scanner.nextInt(); Shape shape; if (input == 0) { shape = new Rectangle(); } else { shape = new Triangle(); } shape.render(); scanner.close(); } }
미해결
스프링 핵심 원리 - 기본편
질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 아니요 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 여기에 질문 내용을 남겨주세요. 강의 다 수강했는데 섹션 2 퀴즈가 안열려요
미해결
김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
[질문 내용] SumTask의 run()메서드 안 for문에서 result += i;를 하지 않고 지역변수인 sum을 사용하여 마지막에 result = sum을 하신 이유가 지역변수(sum)는 스택영역, 멤버변수(result)는 힙 영역에 관리되어, 매번 메인 메모리에 있는 result의 값을 변경하는 것이 아닌 cpu 코어의 캐시 메모리를 사용하는 것이 더 빨라서일까요?
미해결
김영한의 실전 자바 - 기본편
생성자부터 음성만나오고 영상화면이 안나옵니다!!!
미해결
김영한의 실전 자바 - 중급 1편
안녕하세요. 현재 자바 입문편, 기본편을 수강한 후 중급 1편의 예외 처리 단원까지 학습한 상태입니다. 중급 1편부터 난이도가 크게 높아졌다고 느끼고 있는데, 여기서 학습 방향에 대해 조언을 구하고 싶습니다. 강의 내용과 예제는 이해하는 데 큰 어려움이 없습니다. 다만 코드를 보고 작성하며, 정리된 내용을 읽고 이해하는 것과 실제로 지식을 완전히 체화하는 것은 다르다고 생각하여 복습의 필요성을 느끼고 있습니다. 한편으로는 앞으로 수강해야 할 강의가 많이 남아 있기 때문에, 지금 충분한 시간을 들여 복습하는 것이 좋은지 고민됩니다. 아니면 일단 다음 강의들까지 계속 학습한 뒤, 이후 심화 내용을 공부하면서 부족하거나 이해가 부족한 부분이 발견될 때 그때 다시 복습하는 방식이 더 효율적인지 궁금합니다.
미해결
김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션
16:00분 쯤부터 사용자가 입력을 안하면 scanner.nextLine()에서 스레드가 무한대기 하기때문에 빠져나올 수 있는 방법이 없다고, 빠져 나오려면 System.in을 닫아버려야 한다고 하시는데 사용자가 입력을 안하면 그대로 대기하는게 맞지 않나요? 왜 빠져나와야 하는건가요?? 빠져 나오는게 종료를 의미하는거라면 /exit으로 빠지면 되는게 아닌가요? 해당 부분이 어떤 의미인지 잘 이해가 되지 않습니다.
미해결
김영한의 실전 자바 - 기본편
질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] ShoppingCart클래스 아래와 같이 풀어봤는데 이런식으로 풀어도되나요?
미해결
김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
안녕하세요. 백엔드/서버 개발자로 이직을 준비하고 있는 1년차 SI 개발자입니다. 강의를 들으면서 늘 느끼는 점이 있습니다. 강의에서 보여주시는 코드는 정말 간결하고 효율적이고, 특히 “한 사람이 조금 더 고민해서 코드를 작성하면 다음 사람이 유지보수하기 편하다”는 말씀에 많이 공감하고 있습니다. 저도 실무에서 신규 기능을 추가하거나 기존 기능을 수정할 때 다른 사람이 작성한 코드를 보게 되는데, 그때마다 유지보수하기 쉬운 코드의 중요성을 많이 느끼고 있습니다. 그런데 최근 작업을 하면서 한 가지 의문이 생겼습니다. 어떤 코드에서 분기 조건만 다르고, 마지막에 호출하는 메서드 형식은 완전히 같은 상황이 있었습니다. 예를 들면 if문 안에서 조건에 따라 넘겨주는 값만 다르고, 최종적으로 호출하는 메서드는 동일한 구조였습니다. 처음에는 각 분기 안에서 바로 메서드를 호출하면 코드 흐름이 단순해 보였습니다. if (조건1) { Method(a, b, c); } else if (조건2) { Method(d, e, f); } 하지만 이렇게 작성하면 호출 형식이 계속 반복되고, 나중에 파라미터가 추가되거나 호출 방식이 바뀌면 여러 군데를 수정해야 해서 유지보수성이 떨어질 것 같았습니다. 그래서 조건에 따라 필요한 값만 먼저 변수에 세팅하고, 마지막에 메서드는 한 번만 호출하는 방식이 더 낫다고 생각했습니다. if (조건1) { value1 = a; value2 = b; value3 = c; } else if (조건2) { value1 = d; value2 = e; value3 = f; } Method(value1, value2, value3); 이 방식은 호출부 중복은 줄어들지만, 반대로 코드 길이는 늘어나고 중간 변수가 많아집니다. 또 단순한 if문 하나로 처리할 수 있는 로직을 굳이 변수 세팅 방식으로 바꾸는 게 항상 좋은 선택인지 고민이 됩니다. 결국 궁금한 점은 이것입니다. 분기마다 값만 다르고 호출 형식이 같은 경우, 실무에서는 어떤 기준으로 코드를 작성하는 것이 더 좋은가요? 단순히 코드 줄 수가 짧은 것이 좋은 코드인지, 아니면 조금 길어지더라도 중복 호출을 줄이고 변경 지점을 한 곳으로 모으는 것이 좋은지 아직 실무 경험이 부족해서 판단이 어렵습니다. 이런 상황에서 실무적으로 어떤 기준으로 리팩토링 여부를 판단하면 좋을지 궁금합니다.
미해결
김영한의 실전 자바 - 기본편
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 여기에 질문 내용을 남겨주세요. Data3 data1 = new Data3("A"); System.out.println("A count:" + Data3.Count); System.out.println("A count:" + data1.Count); 이렇게 data1.Count로 호출해도 컴파일에러가 나지않는데 이렇게 사용해도 문제가 없는지 궁금합니다
미해결
스프링 핵심 원리 - 기본편
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. [질문 내용] 회원 저장소를 갈아 끼울 수 있도록 설계할 때의 질문입니다. 예를들어 메모리 회원 저장소에서 회원 정보를 조회하기 위한 파라미터 값, db 회원 저장소에서 조회하기 위한 파라미터 값.. 등등 파라미터 값이 다른 경우에는 인터페이스 설계를 어떤 식으로 해야할까요? 실무에서는 외부 인터페이스 연동을 할 때나, db를 조회할 때나 파라미터 값이 그때그때 다 달랐던 것 같아서요. 그렇다면 저장소를 갈아 끼우더라도 각각 개발자가 넘겨줘야할 파라미터 값은 결국 변동될 수 밖에 없는건가요?
미해결
Readable Code: 읽기 좋은 코드를 작성하는 사고법
학습 관련 질문을 남겨주세요. 어떤 부분이 고민인지, 무엇이 문제인지 상세히 작성하면 더 좋아요! 먼저 유사한 질문이 있었는지 검색해 보세요. 서로 예의를 지키며 존중하는 문화를 만들어가요. 근데 이거요. 깃발만 전부 꽂아놔도 isChecked true 라서 게임 이겨지는 코드 아닌가요
해결됨
프론트엔드 마스터클래스
1강에 강의자료 링크가있다는데 못찾았습니다.. 혹시 1.1강에 몇분쯤에 나오는지 알수있을까요