안녕하세요. 현재 공식 Querydsl이 활발히 관리되는 것 같지 않아 OpenFeign에서 포크한 6.x 버전을 사용해 진도를 따라가고 있습니다. 당장은 Jakarta/Hibernate 최신 버전과 지원 문제도 있는 것 같고, orderBy 관련 SQL/HQL 인젝션 계열 취약점이 있는것 같아서 5.x 버전을 쓰고 있는데요.(물론 order by 관련해서 사용자에게 입력 받는 상황은 정말 드문 케이스 같긴 하네요) 장기적으로는 포크 버전의 유지·보수나 향후 호환성 측면이 조금 걱정됩니다. 이 상태로 6.x 포크 버전을 계속 따라가도 괜찮을지, 아니면 안정적인 5.10 계열(공식 안정 버전)로 머무르거나 돌아가는 게 나을지 의견 부탁드립니다!
안녕하세요. 잘 수강하고 있습니다. 수치화 하는 부분에 있어 궁금한 점이 있습니다! 개선점을 수치화 하기 전에, 개선에 앞서서 미리 문제 상황을 예상하고 고려 할 수 있는 방법도 궁금합니다. 미리 고려 했어야 하는 점과, 실제로 실무에서도 문제상황으로 마주하는 부분을 구분하기가 어려운 것 같습니다. 현업에서는 어디까지 미리 고민을 해보고, 어느 정도부터는 실제 문제로 마주하게 되는지 궁금합니다. 질문의 배경은 아래와 같습니다. 면접에서 개선 및 수치화 사례에 대해서 "해당 이슈는 매우 known이슈인데, 충분히 미리 고려 할 수 있는 부분이 아니었는지? 고민을 안했었는지?" 질문을 받았었습니다. 예를 들어 7초 -> 2초 줄이는 것보다 2초 -> 0.7초 개선하는것이 더 어려울텐데 설계나 개발전에 미리 고민해보고 2초로 시작 할 수 있었던 문제 아니냐 라는 질문 같았습니다! 수치화를 위한 수치화로 보인다거나, 사전에 고려하지 않는 태도로 보였을까봐 우려되는 지점이었습니다. 이러한 우려를 피하고 싶은데 고견 부탁드립니다 감사합니다!
제가 개발 시작하는 신입사원인데 회사 앞으로 미래에 일하게 될 프로젝트 팀의 업무 내용을 어떤분께 들었는데 정부전자 프레임워크에서 스프링 레거시로 작업을 한다고 들었습니다. 혹시 이 강의를 공부하는 것으로 충분히 대비가 될지, 완강 후에 추가로 어떤 공부를 더 해야하면 좋을지 모르겠습니다.
버스 토폴로지의 중앙 회선, 백본이라는 것이 결국 하나의 링크를 말하는 것이 맞을까요? 즉, 모든 노드가 연결되어 있는 형태? 그리고 단점이 중앙 회선이 공격 받으면 문제가 생기는 것 같은데 다른 토폴로지들도 마찬가지로 중앙의 노드나 최상단의 노드와 연결된 회선이 공격 받으면 결국 아래의 것들도 다 문제 생기는 것이 아닐까 싶은데 그렇다면 모두 동일한 위험성을 가지고 있는 걸까요? 강의에서는 보안 집중이 가능한 점에서 더 낫다고 하셨는데 그러면 버스 토폴로지도 메인 회선에 보안을 강화하면 되지 않나 궁금합니다!
application.properties 파일에 spring.devtools.restart.enabled=true spring.thymeleaf.cache=false 각각 자바코드, 타임리프코드 수정 시에 서버를 재시작 안해도 수정사항이 자동 적용시키는 거라고 이해를 했는데 실제 해보니까 자동 적용이 안되는데 추가적으로 설정을 해야하는 부분이 있을까요?? 그리고 혹시 강의 듣고 제 나름대로 정리해서 내용을 블로그나 노션에 올리거나 강의 들으면서 친 코드를 깃허브 private 레퍼지토리에 올리는게 가능할지 문의드립니다.
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 1. 스프링에서 제공하는 MethodInterceptor에서 사용하는 MethodInvocation 객체와 @Aspect 프록시에서 사용되는 ProceedingJoinPoint는 어떤 차이점이 있나요? 2. 비슷한 기능을 제공함에도 다른 객체가 사용되는 특별한 이유가 있나요?
절대강좌! 유니티6 - 네트워크 게임 개발 마스터클래스 (Part3) : Netcode로 개발하는 2D RPG
좋은 강의 감사드립니다. 클라이언트만 작업하다 네트워크로 구현하는 방법을 따라해보고 있는데요. 캐릭터 이동 방식을 A* Pathfinding Project Pro 에셋으로 구현하는 방법도 한번 알려주시면 너무나도 감사할 것 같습니다. :) 평상시 A* Pathfinding Project Pro 에셋을 쓰고있는데 제가 잘 쓰고 있는건지 궁금하기도 하고 네트워크에서 이 에셋을 사용한다고 해서 별다른 이슈가 있는지 없는지도 알고 싶어서 의견 드려봅니다. 마치 별책부록처럼 이 것만 한번더 다뤄주시면 정말 감사드리겠습니다~!!
[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
안녕하세요, 오랜만에 개발 복귀 해서 다시 복습 겸 공부 중이다가 한 가지 궁금한 점이 있어 질문드립니다. 강의에서 주로 insert를 사용해 map 컨테이너에 데이터를 추가하고 있는데 emplace 함수가 insert에 비해 불필요한 복사나 이동이 없는 걸로 알고 있어서, 예전에 map에 데이터를 추가할 때는 보통 emplace를 통해 데이터를 추가했던 걸로 기억합니다. 혹시 insert가 emplace에 비해 더 나은 점이 있다 거나 혹시 제가 놓치고 있는 게 있을까요?
Q. 'fork-join_none'으로 시작된 백그라운드 스레드의 종료는 어떻게 관리되나요? 부모 스레드가 자식의 완료를 기다리지 않는다면, 자식 스레드가 완료된 후 발생하는 '좀비(Zombie)' 상태 나 자원 누수(Resource Leakage) 문제는 어떻게 방지되거나 처리되나요?
interface에 default 메서드를 사용할 수 있음에 따라 추상 클래스와 동일한 용도로 사용될 수 있는 것처럼 보입니다. 업무 중에는 jdk 6 환경까지 컴파일되야 함을 감안하여 코드를 작성하다보니 해당 기능에 대해 아예 생각해본적이 없는데, 팩토리 강의를 듣던 중 default를 통해 interface가 추상 클래스처럼 사용되는걸 보니, jdk 8 이상의 환경, 특히 9에서는 private까지 지원되면 추상 클래스를 완전히 대체할 수 있는 것처럼 보입니다. default 기능을 제공하는 interface와 추상 클래스에 차이가 있는지, 현장에서 interface의 default 기능이 적극적으로 사용되는지, 추상 클래스는 더이상 필요없는 것인지요. 기존에 해당 기능을 설명하는 글귀만 봤을 때는 interface를 변경할 때 레거시 코드의 수정없이 변경할 수 있는, 편의성을 위한 기능이라고만 이해하고 넘어갔는데, 적극적으로 사용되는 기능인지 궁금하네요
안녕하세요 토비님. 강의에서 말씀하신 공부할 때는 AI 관련 도구를 끄고 지식을 습득 해야 한다는 부분이 인상 깊었습니다. 이전에도 공부와 실무 사이에는 늘 간극이 있었고, 이번 강의는 그 간극을 인지하고 실무적인 관점에서 방향을 잡을 수 있도록 도와주신다고 느꼈습니다. 그런데 요즘은 AI가 빠르게 보편화되면서, 공부와 실무의 관계가 또 다른 형태로 변화하고 있는 것 같습니다. 실제로 신규 업무나 개인 프로젝트에서 AI의 활용 방식과, 기존 시스템을 지속적으로 개선하거나 확장하는 과정에서의 AI의 활용 방식이 다르게 느껴집니다. 이런 변화 속에서 AI를 새로운 학습 형태이자, 학습과 실무를 잇는 새로운 도구로 봐야 할지, 아니면 보조적인 수단으로 바라봐야 할지 고민됩니다. 토비님은 실무에서 AI를 어떤 방식으로 활용하고 계신지, 그리고 이 시대의 개발자가 어떤 균형점을 가져야 한다고 보시는지 궁금합니다.
안녕하세요, 강사님! 바쁘신 와중에 질문드려 죄송합니다... 단순한 질문 같지만 ProductDocument 코드에 대해 궁금한 것이 있어 질문드립니다. Elasticsearch 관련 Document 코드에 @AllArgsConstructor 나 @Data 같은 롬복(lombok) 애노테이션 을 사용해도 문제가 없을까요...? 추가로 실제 실무에서 Document에 롬복을 사용하는지 강사님 코드대로 직접 생성자, getter & setter를 작성하는지 알고 싶습니다!
고도 엔진(Godot Engine)을 통한 게임 개발 박치기!! - 기본 개념부터 실전 게임 제작까지 한방에!
안녕하세요 강사님 꾸준하게 피드백 주셔서 감사드립니다. 시간이 부족하다는 핑계로 수업 진도가 좀 많이 늦어졌네요 ㅠ 51강의 1:45초 부근에 대한 질문입니다. player 씬에서 BoostTimer의 내장 시그널(timeout())을 이용하여 시그널이 연결되어 있었는데, 이것을 삭제하고 수동으로 연결을 해주셨습니다. 그런데 보다보니 '굳이?' 라는 생각이 듭니다. 내장 시그널을 이용하면 코드를 직접 작성할 필요가 없고, 시그널이 연결된 함수를 찾아가기에도 편하고 여러모로 편한것 같은데, 직접 작성하시는 이유가 궁금합니다~!