안녕하십니까 ? 현재, 실전 자바 중급 2편을 듣고 있는 2년차 개발자입니다. 평소에 아무런 생각없이 사용하고 있던 자료 구조들에 대해 공부하게 되니까, 어떻게 사용해야하는 지와 왜 해당 자료구조가 시간복잡도 상 좋은 지에 대해 알 수 있어서, 새롭게 느끼고 있습니다. 혹시, 자바 관련해서 강의를 더 듣는 다면, 어떤 강의가 실무에 도움될지 궁금해서 여쭙습니다. 혹시나 더 추천하는 강의가 있으실까여?
선배 개발자로서 알려주시는 강의 내용들이 정말 좋았는데요, 그와 더불어 앞으로 주니어 백엔드 개발자로서 어떤 역량을 조금 더 집중해서 키우면 좋을지 조언을 부탁드리고 싶습니다. 또, 아직 이를 수도 있지만 이직을 준비할 때 도움이 될 만한 공부 방향이나 추천해주실 만한 책이 있다면 알려주시면 감사하겠습니다. 강의 중간중간 소개해주시는 책들이 많아서 최근에 또 추천해주실 책이 생기셨는지 궁금합니다.
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] Spring Data JPA에 있는 인터페이스를 사용하는 경우가 많이 보이는데 강의에서는 EntityManager를 주입받아서 직접 구현하는 방식으로 설명해주신 이유가 궁금합니다.
회사 규모상 프로젝트를 혼자서 개발하는 경우, 강의의 내용을 적용해서 도메인 문서를 만드는 것이 개발에 대한 정리나 추후 다른 사람이 봤을 때 도움이 될 수는 있으나, 당장 시간에 쫓기기도 하고 다른 사람의 피드백 없이 혼자서 정리하다 보면 잘 정리하기 힘들다는 생각이 되는데요. 이런 상황에서의 정리는 오히려 도움이 안될 수도 있다는 생각이 드는데, 토비님께서는 어떻게 생각하시는지 궁금합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] JPA 공부 중 프록시 객체부분에서 혼란이 있습니다. em.getReference()로 가져온 객체는 실제 엔티티가 아니고 프록시라는데, == 비교 시 언제 같고 언제 다른가요? 프록시 객체는 언제 실제 엔티티로 초기화되나요? (예: 필드 접근 시점? 트랜잭션 종료 시점?) 만약 영속성 컨텍스트에 이미 로드된 엔티티가 있을 때, em.getReference()를 호출하면 어떤 객체를 반환하나요?
안녕하세요. Kotlin과 Java의 현업에서의 활용에 있어 궁금한 내용이 있어 질문드려요. 서버를 개발하실 때 Kotlin과 SpringBoot를 활용한다고 수업시간에 지나가면서 잠깐 말씀해주셨는데요. 혹시 Kotlin + SpringBoot의 프로젝트 작업을 진행하실 때 전혀 Java를 사용하지 않고 활용하시는지 아니면 Java와 Kotlin을 같이 사용하는 지 현업에서 실제 어떻게 활용하시는지 궁금합니다. 그리고 Gradle에서 implementation("org.apache.commons:commons-lang3:3.0") 와 같은 외부 라이브러리를 Kotlin + SpringBoot 프로젝트에서 사용할 때 Java로 가져와서 사용하는지 아니면 Kotlin으로 따로 제작된 코드를 사용하는지 궁금합니다.
안녕하세요 현재 섹션 5_4-9. 낙관적 락, 비관적 락 부분을 듣고 있는데요. 현재 공공SI 고도화 개발팀에서 개발을 하고 있는데 동시성 제어 부분이 있는것 같아서 질문드립니다. 레거시 코드로 Oracle/ iBatis DAO / XML 환경이며 담당자가 신청에 대해서 접수하는 기능에서 소스분석을 통해서 봤을 때 기존 소스 흐름은 1. 작업확인용 테이블에서 현재 작업중인 목록이 있는지 확인(Select) 2-1. 작업중 목록이 없다면 작업확인용 테이블에 작업중으로 insert 2-2. 작업중 목록이 있다면 Exception 발생(작업중입니다.) 3. 해당 신청건에 대한 insert/update 진행 4. 작업확인용 테이블의 insert 했던 값의 상태를 작업완료로 Update * 작업중 상태가 있을 땐 다른 신청건에 대해서도 접수가 불가 입니다. 강의를 듣고 보았을 때 작업확인용 테이블의 존재 이유가 동시성 제어를 위함으로 보이는데 기존 흐름을 봤을 때 비관적락 > 배타락으로 적용하는것이 맞다고 생각이 드는데 맞는 접근일까요? 또한 비관적 락 적용시 작업확인용 테이블의 존재가 필요없어지는 걸까요? 해당부분을 건드리기에 부담이 가서 기존 방식대로 개발을 해놓은 상태이긴 한데 강의를 듣고 적용해볼 수 있지 않을까 생각이 들어 질문드립니다!
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요. 강의를 아직 다 듣지 못해서 뒤에 관련 내용이 나올 수도 있지만 궁금해서 질문드립니다. 같은 람다식이 여러번 실행될 때마다 새 인스턴스가 생성되는 건가요, 아니면 JVM이 내부적으로 같은 람다식을 한 번 생성해서 재사용하는 건가요? 감사합니다!
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요, 스트림과 for문을 어느 경우에 선택해서 사용해야 할까요? 실무에서 스트림과 for문을 기준이 없이 남발하게 되면 오히려 코드 품질이나 성능이 악화될 수 있나요?
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요 영한님. 만들어주신 수업 자료 덕분에 수월하게 복습하고 있습니다. 감사합니다. 수업자료를 만드시는 과정과 도구가 궁금합니다. (이미지도 전부 직접 만드시나요?)
쿠케님 안녕하세요! 우선 좋은 강의 제작해주셔서 정말 감사합니다. 강의 들으면서 대규모 시스템을 설계할 때는 어느 것을 신경써야 하고, 또 주의해야 하는지 많은 인사이트를 얻고 있어요. 추석 연휴 동안 제 나름대로 열심히 들어서 이제 한 개 섹션만 남았는데, 완강을 한 뒤에 강의에서 얻은 것들을 토대로 대규모 트래픽을 가정한 서비스를 설계하고, 개발해보려고 합니다. 강의로만 듣고 넘기기에는 아까운 내용들이 많아서 확실하게 제 것으로 만들어야겠다 싶더라고요. 일하면서 써먹으면 더없이 좋겠지만 아쉽게도 그럴 환경은 안 되어서요.. ㅎㅎ 그래서 나름대로 구상을 해보면서 강의를 듣고 있는데, 문득 강의에서 다룬 아키텍처와 기술을 한 번에 다 도입하는 건 오히려 학습 효율을 떨어뜨리는 선택이 아닐까 싶은 생각이 들어서요. 실무에서 Redis 정도는 사용해봤지만, 분산 데이터베이스나 MSA도, Kafka나 CQRS도 이 강의에서 처음 사용해봤습니다. 개념은 대충 주워 듣긴 했지만, 제대로 공부해본 적도 없고요. 결론적으로 하나씩 해보는 게 낫겠다 싶은데, 강의에서 다룬 내용 중 어느 것을 먼저 학습하는 게 좋을지 쿠케님께 조언을 구하고 싶어요. 물론 정답이 없는 문제지만, 지금 당장 제가 일하는 환경에서는 써먹을 일이 별로 없는 내용들이다 보니 무엇을 먼저 하는 게 좋을지 선택하기가 어렵네요. 감사합니다.
멀티스레드 환경에서 메모리 가시성 문제가 발생하는 이유를, CPU 캐시와 메인 메모리 간의 데이터 갱신 시점 차이 때문이라고 이해했습니다. 그렇다면 이 현상은 하드웨어 수준의 문제로 봐야 할까요, 아니면 JVM의 메모리 관리 방식이 영향을 주는 걸까요? 또한, 이런 문제가 자바가 컴파일 언어이기 때문에 발생하는지도 궁금합니다.
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요. 강사님. 실무에서 SQL 실행 속도가 느릴 때 실행 계획을 확인해야 하는 경우가 종종 있는데요. 실행 계획에 대한 이해가 부족하다 보니 좀 더 깊이 있게 공부해보고 싶습니다. 혹시 추천해주실 만한 자료나 책이 있을까요? 또한, 강사님께서는 실행 계획을 어떻게 공부하셨는지도 궁금합니다. 감사합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요 3강 18. null 강의를 보는 중 궁금한 점이 있어 질문 드립니다. 해당 강의 GC 섹션에서 말씀하신 참조하지 않는 인스턴스라는 부분이 null -> x001 -> null 이렇게 인스턴스에 값을 할당하는 과정에서 다시 null 을 할당하며 x001 이라는 참조 값이 사라져서 x001 값이 GC가 된다는 게 맞을까요? 아니면 해당 인스턴스 자체가 GC가 되는 걸까요? 강의 잘 보고있습니다. 감사합니다!
실무에서 단일 컬럼 PK만으로 행을 식별할 수 없는 경우가 있습니다. 예를 들어 영화 예매 시스템에서 ‘상영회차’와 ‘좌석’ 정보를 조합해야만 특정 예매 내역을 정확히 구분할 수 있을 때가 있죠. 이런 경우 복합키를 사용하게 되는데, 실제 설계에서는 어떤 방식으로 복합키를 구성하고, 단일 PK와 비교했을 때 어떤 장단점이 있는지 경험 기반으로 설명해주실 수 있나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 데몬스레드의 특징은 이해했는데, 어떨 때 사용이 되는 건지 궁금합니다. 그리고 현업에서도 보통 데몬 스레드를 사용할 일이 있나요?
학습 관련 질문을 최대한 상세히 남겨주세요! 고민 과정도 같이 나열해주셔도 좋습니다. 먼저 유사한 질문이 있었는지 검색해보세요. 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 강사님, 최적화를 진행할 때 보통 어떤 순서로 고민하시나요? 예를 들어 트래픽이 몰릴 때 먼저 어디를 확인하고, 어떤 기준으로 개선 방향을 정하시는지가 궁금합니다.