안녕하세요 지금까지 들어본 강의중에 제일 훌륭하다고 생각해서 열심히 듣고 있는 학생입니다! 올해 대학교 3학년으로 전자공학과 재학중이고 부전공으로 컴퓨터 공학을 듣고있습니다. 제 꿈이 게임프로그래머인데 어떻게 시작해야 할지 몰라서 할 수 있는건 최대한 하려고 부전공도 신청하고 학원도 신청해서 열심히 들었습니다만 이렇다 할 결과물이 없어서 지금 하고있는 공부들이 의미가 있나 싶기도 하네요 ㅜㅜ .. 서론이 길었습니다. 두가지 궁금한 점이 있어서 질문드립니다. 첫째는 혹시 컴퓨터 공학과에서 이것만큼은 꼭 들어봐야 한다는 과목들이 있습니까? 현재 컴퓨터 그래픽스(OpenGL)과 다음 학기에 이산수학을 들으려고 생각중입니다. 두번째는 C++ 언어를 완벽히 숙지한다는게 너무 힘듭니다. 새로운 문법들을 공부하고 개인 프로젝트에 써먹으려니 힘들더군요. 배운 것을 어떻게든 써먹으려 하면 프로젝트 진도가 너무 안나가고 그냥 평소에 잘 쓰던 것들로만 짜려니 앞에 배운 문법들이 의미가 없어지는 것 같아서..그리고 안쓰다보니 금방 까먹더군요 .. 어떤식으로 공부를 해야 오래 남을까요 ..? 질문이 많아서 죄송합니다 ㅜㅜ
기선님, 안녕하세요. 강의 정말 잘 보고 있습니다. 강의를 보다 궁금한 점이 있어서 질문합니다! 1.AppRunner.java에서 아래 코드는 event 클래스에서 발생하는 오류를 저장하는 역할만 하는 객체인건가요? 아니면 다른 역할을 하는 객체 인건가요? new BeanPropertyBindingResult(event, "event"); 2.아래 코드에서 인자인 target은 rejectIfEmptyOrWhitespace에 매개변수로 넘겨주지 않았는데 어떻게 Event 클래스가 자동으로 Validation 되는 것인가요? @Override public void validate(Object target, Errors errors) { ValidationUtils.rejectIfEmptyOrWhitespace(errors, "title", "notempty", "Empty title is now allowed"); } 귀한 시간 내주셔서 감사합니다!
나무를 한번에 생성하는 폴리지 볼륨을 알려주시고 잔디나 잡초 종류는 개체 수가 많아서 레벨을 이용한다고 하셨는데 레벨 바운드 방법만 알려주시고 막상 잔디와 잡초를 폴리지 볼륨으로 생성하는 방법은 안알려주셨네요.. 폴리지 볼륨을 두개 만들어서 하나는 나무(전역 용) 하나는 레벨바운드 크기에 맞춰 생성해놓고 시뮬레이션을 돌려보았는데 실행이 안됩니다. 수작업밖에 없는건가요? 레벨에 적용이 되면서 폴리지 볼륨처럼 한번에 생성할 수 있는 방법 좀 알려주세요!
class Maze: def findMazePath(self, x, y): if (x < 0 or y < 0 | x >= N or y >= N): #지도 범위를 넘어선곳 return False elif (maze[x][y] != PATHWAY_COLOR): # White 0 #벽 return False elif (x == N - 1 & y == N - 1): # 최종 목적지 maze[x][y] = PATH_COLOR #Green 3 return True else: maze[x][y] = PATH_COLOR #Green 3 # 계속 갈 수 있는 길인지, 막힌 길인지 파악이 안된 길. 일단 가보는 길 if (self.findMazePath(x - 1, y) | self.findMazePath(x, y + 1) | \ self.findMazePath(x + 1, y) | self.findMazePath(x, y - 1)): return True maze[x][y] = BLOCKED_COLOR #Red 2 $ 위의 if 구문에서 Return 받아서 가면 안되는 길 return False if __name__ == '__main__': N = 8 maze = [[0, 0, 0, 0, 0, 0, 0, 1], [0, 1, 1, 0, 1, 1, 0, 1], [0, 0, 0, 0, 0, 0, 0, 1], [0, 1, 0, 0, 1, 1, 0, 0], [0, 1, 1, 1, 0, 0, 1, 1], [0, 1, 0, 0, 0, 1, 0, 1], [0, 0, 0, 1, 0, 0, 0, 1], [0, 1, 1, 1, 0, 1, 0, 0]] PATHWAY_COLOR = 0 # 원래 길 WALL_COLOR = 1 # 벽 BLOCKED_COLOR = 2 # 이 길로 계속 가면 가다 도중에 막히는 길 PATH_COLOR = 3 # 이 길로 계속 가면 끝까지 갈 수 있는 길 s = Maze() print(maze) s.findMazePath(0, 0) print(maze)
안녕하세요 백강사님. 강좌 잘 듣고 있습니다. 강좌 끝에서 테스트 폴더를 Run > Test Scripts 를 돌렸더니 아래 파일에서 테스트가 깨집니다. 에러 메시지를 보면 뭔가 Jdbc 설정에서 깨진 것 같은데, 이유를 모르겠습니다. 백강사님의 소스를 보니 위의 @RunWith(SpringRunner.class) @SpringBootTest 어노테이션을 지워두셨던데, 혹시 이유를 알 수 있을까요? https://gitlab.com/whiteship/natural/blob/master/src/test/java/me/whiteship/natural/NaturalApplicationTests.java Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment] spring-rest-api-demo/src/test/java/me/whiteship/springrestapidemo/SpringRestApiDemoApplicationTests.java package me.whiteship.springrestapidemo; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; @RunWith(SpringRunner.class) @SpringBootTest public class SpringRestApiDemoApplicationTests { @Test public void contextLoads() { } }
인터넷에 검색해서 conda-forge도 해보고 conda-update-conda conda-update anaconda conda update anaconda-navigator conda update navigator-updater 다해봤는데 이것들 할때는 All requested packages already installed. 이렇게 나오면서 anaconda-navigator -bash: anaconda-navigator: command not found 아나콘다 네비게이터를 실행하려고 하면 이렇게 나옵니다 어떻게 해야할까요
안녕하세요 백기선님. 운영중인 프로젝트에 JPA를 적용하다가 Select 없이 Update만 할 경우를 자주 마주합니다. 멤버의 Id와 변경할 포인트를 전달 받아 포인트를 업데이트 하려하면 아래와 같은 순서로 진행해야합니다. Member member = memberRepo.findById(id) member.setPoint(member.getPoint + point); memberRepo.save(member) 이때 member를 select 하는 구문 없이 이번강의에서 알려주신 @modifying(clear...,flush...)와 @query를 이용하면 좋겠다는 생각이 들었거든요. 만약 pointUpdate(memberId, pointAmount)라는 서비스를 제공할 때, clear와 flush를 보장한다면 서비스를 사용하는 사람도 안심하고 쓸 수 있을것 같구요. 무엇보다 매력적인건 select 한번을 줄일 수 있는 점 같습니다. 테스트 코드에서는 테스트 객체 생성을 위한 create 구문이 있어서 백기선님께서 말씀주신 방향으로 가는게 최적케이스 같습니다. 하지만 기존에 영속화된 엔티티 대상으로 update만 날리기 위해서는 어떤 방법이 더 효율적이라고 생각하시는 지, 주로 사용하시는 패턴이 있으신지 궁금합니다.
스튜디오를 열면 그냥 바로 전에 작업하던 프로젝트가 뜹니다 안떠서 그냥 파일에서 뉴트로젝트 눌러서 만들긴 했는데 이유가 뭘까요? (workspace 폴더에 가서 프로젝트를 아예 삭제하고 스튜디오를 다시 열면 그제서야 나오네여 스튜디오는 3.3버전입니다) Activity Name이랑 Layout Name 설정하는 창도 안나오는데 그냥 진행하면 되나요? 그리고 xml 눌러서 보면 화면에 Hello World! 라고 쓰여 있긴 한데 선생님 화면처럼 뒤로가기나 배터리 표시부분 이런 부분들은 보이지 않고 흰 바탕화면이랑 파란색 바탕화면 위에 딱 저 문구만 쓰여 있어요 문제 있을까요? alpha1으로 바꿔도 똑같습니다
안녕하세요 강사님, 강의 잘 보고 있습니다. include using namespace std; void doSomething(int x) { x = 123; cout << x << endl; // #2 } int main() { int x = 0; cout << x << endl; // #1 doSomething(x); cout << x << endl; // #3 return 0; } 저는 위에서 부터 순서대로 #2, #1, #3 123, 0, 123이 나올줄 알았는데 실행시켜보니 0, 123, 0이 나왔습니다 무조건 int main()이 먼저 실행되나요? 그렇다 쳐도 int main() 안의 #1, #3 이 먼저 실행이되고 #2가 나중에 실행되야하는게 아닌가 싶습니다. step in 기능으로 해보았는데도 잘 안되서 질문 올립니다. 감사합니다.