킬구형 5장. 작전2: Run Squad 장악 작전 공부중인데, Process finished with exit code 0 이라는 문구 자체가 나오질 않아. 혹시나 싶어서 새 프로젝트 만들어서 시도해봐도 마찬가지고,, 윈도우 11, java 17에 org.springframework.boot:spring-boot-starter-batch:3.5.7 환경에서 개발중인데 혹시 버전이나 OS 문제일까?? 아니면 뭔가 설정을 빼먹은건지 모르겠네.. 혹시 몰라서 application.yaml 설정도 첨부해 spring: application.name: demo output.ansi.enabled: always datasource: url: jdbc:h2:mem:test;DB_CLOSE_DELAY=-1 driver-class-name: org.h2.Driver username: sa password:
강의 내의 TargetSearcher는 기준점 하나를 잡은 뒤 그 기준점으로 타겟을 선정하는 방식으로 이해했습니다. 저는 이 방식을 응용해서 기준점을 여러 개 잡는 방식(다중 타겟 선택)을 구현하고 싶은데 어떻게 접근 해야할지 감이 잡히지 않아서 질문 드립니다. 일단은 select를 여러번 하는 방식으로 대략적인 설계를 했는데 이 경우 인디케이터와 상호작용을 어떻게 고려해야할지 모르겠습니다. 그래서 강사님께선 어떤식으로 구현하실지 궁금해서 질문 남깁니다. 추가로 머리가 턱 막히는 기능을 구현해야 할 때 어떤 식으로 문제에 접근 하시는지도 여쭤보고 싶습니다.
현재 강의는 심화과정 2강의 빼고 다 보았습니다. 몇가지 궁금한 사항들이 있어서 질문드리려고 합니다. ecs, dots 병렬처리를 위해서 유니티에서 사용하는 시스템인데요. 이 강의에서도 여러 쓰레드를 사용하기 위해 잡에 작업들을 할당하는 코드를 사용하는 것으로 보입니다. 그리고 발사체와 적이 충돌시 HP를 깍는데 EnemyComponentLookup[enemy] = enemyData; 이런 코드가 있던데 이는 실제로 해당 컴포넌트에서 hp 변수를 수정하는 내용으로 보입니다. 하지만 멀티쓰레드에서 lock이나 뮤텍스같은 안전장치가 없는데 저런식으로 사용할 수 있는지 묻고 싶고... 두번째는 Enemy오브젝트에서 여러 엔티티 update 이벤트를 사용하고 있습니다. EnemyComponent는 발사체에서도 사용하고 있고 moveComponent에서도 사용하고 있고 hpBarComponent에서도 사용하고 있습니다. Enemy가 죽었을때 수십만 이벤트가 현재 할당된 상태에서 문제가 없는것인지 추가적인 내용을 알 고 싶습니다. 현재 만마리 이상 스폰을 시키면 간혹 죽은 Enemy들이 살아있는 것 같은데 ecs, 멀티쓰레드 강의에서 젤 중요한 내용이 빠진게 아닌가 싶어서 여쭈어봅니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 이 부분에서 Student student를 선언하고 new Student();를 안했는데 어떻게 바로 .name같은 거를 사용할 수 있는 건가요? 다른 부분에서는 꼭 객체를 먼저 생성해야 접근을 할 수 있는데 이 함수에서는 왜 가능한건가요? static void initStudent(Student student, String name, int age, int grade) { student.name = name; student.age = age; student.grade = grade; }
데이터 저장 방식에 대하여 공부하던 중, ScriptableObject라는 유니티 데이터 저장 용 객체에 대해 알게 되었습니다. 보통 현업에서 일할 때 캐릭터/몬스터의 스텟 등 에디터 내에서 조절해주는 경우는 ScriptableObject를 사용하고, 세이브 파일, 설정 값 저장 등 런타임 동안 읽고 쓸 가능성이 있는 데이터는 Json 및 xml 파일에 데이터를 저장한다고 배웠습니다. 선생님의 수업에서 DataManager들은 스텟같은 전자에 속하는 데이터들도 Json or xml 파일로 데이터를 저장하는 것으로 배워서 궁금한 점이 1. 추측하기로는 배포 후 밸런스 패치 등 외부에서 스텟등을 조절해주기 위해 Json방식을 쓰는 것일까 하는데 맞나요? 2. ScriptableObject 방식이 문자열 읽고 파싱하고 C#데이터로 바꾸는 Json 사용 방식보다 성능이 우수하다고 하는데 전자를 별로 사용하지 않는 이유가 있나요? 3. 현업에서는 ScriptableObject를 자주 사용하나요? 4. 선생님의 ScriptableObject에 대한 개인 의견(ex. 불편함, 효율적임, ...)은 어떠신가요? 이렇게 4가지입니다. 항상 좋은 수업들 올려주셔서 감사합니다. 새로운 강의를 볼 때마다 새로운 가르침을 얻을 수 있어 좋습니다.
package section06_Sorting_Searching.no06_fail; import java.util.*; public class Main { public int[] solution(int n, int[] arr) { int [] answer = new int[2]; for (int i = 0; i < n-1; i++) { if (arr[i] > arr[i+1] && answer[0] == 0) { // 첫번째 바뀐 지점 answer[0] = i+1; } else if (arr[i] > arr[i+1] && answer[0] != 0) { // 두번째 바뀐 지점 answer[1] = i+2; break; } if (i == n-2) answer[1] = answer[0] + 1; // 서로 인접한 상태에서 바꼈을때 } return answer; } public static void main(String[] args) { Main m = new Main(); Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int[] arr = new int[n]; for (int i = 0; i < n; i++) { arr[i] = sc.nextInt(); } for (int x : m.solution(n, arr)) System.out.print(x + " "); } } 코드를 위와 같이 작성했는데 틀렸다고만 나와서 왜 틀렸는지 아무리 생각해봐도 잘 모르겠어서 질문합니다.
JobListener 를 구현하면서 동적으로 executionContext 를 밀어 넣을때 설명이 내가 이해한게 맞다면 오타가 발생한 듯 하다. 이렇게 InfiltrationPlanListener를 JobBuilder 의 listener() 메서드로 등록해주면 beforeStep() 메서드에서 동적으로 생성한 데이터를 각 Step에서 참조할 준비가 완료된다. 해당 문구의 작업은 JobExecutionListener 로 동작한 부분으로 beforeStep 이 아닌 beforeJob 에 의해서 동적으로 생성되는게 맞지 아니한가?!
안녕하세요 선생님 현재 올려주신 게임을 하나하나 분석하면서 공부하고 있는 취준생 입니다. 다름이 아니라 이건 치트를 쓰지 않으면 잘 찾을수 없는 부분인데 제가 이해한게 맞는지 궁금하여 질문 드립니다. 일단 첫번째 버그? 이상한 부분은 서포트 스킬을 배웠을때 수치 변화 입니다. 예를들어 공격력을 5프로 올리는 서포트 스킬을 배웠을때 5프로 수치가 상승해야 하는데 10프로가 상승을 하길래 브레이크 포인트로 차근차근 넘겨보니 UpdatePlayerStat 함수를 호출할대 InitCreaureStat 을 호출하는데 거기서 Atk,MaxHp 등의 값을 곱해주고 다시 updateplayerstat 에서 처리를 또 해주더라구요 그래서 일단은 InitCreautreStat 함수 부분에 Stat 처리를 해주는 부분을 주석처리 해서 중복으로 서포트 스킬의 general 타입들이 적용되는걸 막았는데 이렇게 하는게 맞는건지 궁금합니다. 두번째 이상한 부분은 special 서포트 스킬 부분입니다. 이것도 역시 치트를 쓰지않으면 정말 찾기가 힘든 부분인데 현재 skillbook 스크립트 부분에서 addsupportskill 을 통해서 서포트 스킬을 추가하고 있는데 여기서 special 서포트 스킬의 경우에 skillbase 에 updateskilldata 함수에서 해당 공격스킬의 추가 값을 처리해 주는걸로 알고 있습니다 근데 여기서 예를들어 일렉트로닉 필드의 범위를 0.1 증가해주는 스킬을 배웠다고 했을때 처음에 배울때는 0.1이 정상적으로 증가를 하는데 두번째 일렉트로닉 필드 0.1 증가를 배웠을때 SupportSkills 리스트를 순회하면서 값을 적용하는데 이미 0.1이 증가된 specail 스킬을 한번 더 순회를 하여 0.1 + 0.1 해서 0.2가 되어야 하는데 0.1증가되서 0.2가 된 상태에서 한번 더 순회를 해서 0.3이 되는 현상이 있다는걸 알게 되었습니다. 그래서 현재 해결책으로는 AddSupportSkill 에서 Special 서포트 스킬을 SkillBase 의 updateskillData 부분에서 처리를 넘겨줬는데 그러지 않고 그냥 AddSupportSkill 함수 내에서 변경된 값을 추가를 하고 UpdateSkillData 함수로 넘기지 않고 처리 하는 방식으로 수정을 해서 이상하게 수치가 나오는 부분을 수정을 하고 기존의 Skillbase 스크립트 부분의 UpdateSKillData 함수 부분에서 처리하는 부분을 주석처리 해줘서 일단 중첩되서 처리가 되는 값을 수정을 해주었는데 혹시 더 나은 방법이 있는지 궁금하여 질문을 남깁니다. 일단 이렇게 좋은 자료를 주셔서 너무 감사드리고 앞으로도 계속 꾸준히 코드를 뜯어보며 공부를 열심히 하겠습니다. 날씨가 많이 추운데 감기 조심하시고 공부하다가 궁금한 부분은 이곳에 또 남기도록 하겠습니다.
킬구형 ㅎㅇ 요즘 형 spring-batch 오픈소스 이슈에서 잘 보고 있어. 진짜 형 대단한 거 같아. 형 그런데 나는 궁금한 게 있어 일단 이번에 나도 간단한 오타 수정으로 기여를 하기는 했는데 나도 이슈를 한번 찾아보고 싶은데 감이 안 잡혀서 형은 보통 이슈를 어떻게 찾는지, 아니면 오픈소스를 볼 때 팁 같은 게 있는지 궁금해.
안녕하세요, 강사님. 현재 자바 중급 2편을 이번 주 내로 수강 완료할 예정인 수강생입니다. 인프런에 올라와 있는 ‘김영한의 자바 공부법 로드맵’에서는 자바 고급 1, 고급 2를 뒤로 미루고 스프링 강의로 먼저 넘어가는 흐름을 추천해 주셨는데, 영상으로 올려주신 ‘김영한의 실전 자바 로드맵’에서는 자바 고급 1은 6강까지, 자바 고급 2는 전부 수강한 뒤 스프링으로 넘어가는 것이 최적이라고 말씀해 주셔서 두 로드맵 중 어떤 흐름을 따르는 것이 좋을지 고민되어 질문드립니다. 저의 목표는 다음과 같습니다. 올해 안에 「스프링 핵심 원리 - 기본편」까지 들어가는 것 스프링을 활용해서 직접 무언가를 개발해 보는 것 다만, 스프링을 빨리 배우고 싶으면서도 자바 기본기와 객체 지향에 대한 공부를 소홀히 하고 싶지는 않아서 인프런 로드맵처럼 자바 고급 1, 2를 건너뛰고 스프링으로 넘어가도 괜찮은 선택인지 확신이 서지 않습니다. 제 상황에서는 어느 로드맵 흐름을 따르는 것이 더 좋을지,자바 고급 1, 2를 어느 정도까지 수강한 뒤 스프링으로 넘어가는 것이 좋을지 추천해 주실 수 있을까요?
OAuthAttributes와 CustomOAuth2User 간의 차이가 궁금합니다. OAuthAttribute는 google로부터 받은 사용자 정보를 우리가 원하는 대로 확장 가능하게 하는 DTO라고 말씀해주셨고, CustomOAuth2User도 google로부터 받은 데이터 외에 별도의 사용자 정보를 추가하는 용도라고 말씀해주셨는데, 두 설명이 같은 의미처럼 느껴집니다. 두 클래스가 어떤 차이가 있는 건가요?
실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)
안녕하세요 강사님 취준생으로써 강의 들으면서 궁금한 점 질문 드립니다. 1.CustomRepository형식 과 Impl 형식이 보통 어떨때 자주 쓰이는 지 궁금해서 질문 드립니다. 2.JPA 에서 작성한 것들을 Querydsl 로 바꿀때가 그럼 ByXxx 에서 조인조건이 두개이상 들어가면 무조건 Querydsl 자바코드로 바꾸어 주는 게 좋을까요?