본문 바로가기

토이프로젝트

(23)
ToyProject 정의 개인 프로젝트 장난감(Toy)처럼 비교적 가볍게 만들고 활용하는 프로젝트 자신에게 필요해서 만들거나, 만들고 싶은 것을 자유롭게 만드는 프로젝트 포트폴리오에서 가장 영향력이 큰 아이템 [토이 프로젝트 주제 선택 방법] 개발 공부를 시작하는 시점부터 만들고 싶은 프로젝트에 대한 고민 시작 + 기록 => 미리 생각해두지 않으면, 결국 흔한 주제를 선택하게 된다 => 흔한 주제 == 개발 강의에서 많이 다룬 주제 (게시판, 매모앱, To-do-List) => 흔한 주제들은 그만큼 개발을 연습하기에 적합한 주제들이기 때문에 무조건 낮게 평가받는 것은 아니다 => 하지만 토이 프로젝트는 포트폴리오에 넣기 위해 만들기 보단, 만들고 싶은 것을 즐겁게 개발한 결과물 이 어야 한다 => 프로젝트 주제를 미리 고민해두면..
[Baseball - Restrict console] 6th (InGame) 한숨부터 쉬고 시작! 처음 경매장을 만들고, 팀을 구성했을 때 '하.. 이거 왜 이렇게 어렵지?' 생각했었다 근데 오늘 ? 똑같은 생각이 든다.. 맨날 오류 오류 오류 오류 그만 좀!!!! 그래도 여기 부셔보고, 저기 뚝딱뚝딱 고치는 재미는 있으니깐 참고한다.. 그래 사용자가 선수 영입하고 구단이름 설정하고 상대 구단 지정하고 타석 바꾸기까지 됐어 이제 휘두르기만 하면 돼.. 근데 왜 인덱스 오버가 뜰까? 이건 잠시 보류하고 이쯤에서 문득 생각 들었다 '처음부터 잘못 만든 건 아니겠지?' 설계의 중요성을 다시 한번 깨닫는다 단순히 무슨 기능 무슨기능 만들고 어떻게 클래스 나눠야지.. 에서 끝났으면 안됐다 몰론 뼈대를 만들고 붙여가면서 코드도 줄이 고를 반복하는 게 맞는 방법 같은데 조금만.. 조금만 더 ..
[Baseball - Restrict console] 5th (change at bat / main) 전까지는, 실제로 야구게임을 하기 전에 구단을 생성하고, 원하는 선수들을 영입하는 식의 코드만 구현했었다. 4일간 진행하면서 중간중간 번쩍 떠오르는 아이디어들도 있었고 '이건 무조건 오류난다...'라는 것도 있었는데 일단, 기본적인 틀을 만들어놓고 하나씩 해결해 나가야 할 것 같다 InGame 클래스 에서는 실제로 사용자가 게임을 진행하였을 때 게임설명을 볼 수 있는 inGame_des 함수와 (사용자는 GameStart클래스에서만 진행되기 때문에 함수로 나누었다) ​ 각각의 선수들의 스탯'만' 가져올 수 있는 int형 타입 bringPlayerStats 함수 (후에 인게임에서 스탯별로 확률이 달라지기 때문에 구현하였다) ​ 그리고,. String타입으로 선수들의 목록 = 매개변수가 들어오면 그것을 한명..
[Baseball - Restrict console] 4th 결과를 먼저 얘기하면, 사용자가 한 클래스 내부에서 모든 걸 진행하고 싶어서 GameStart라는 클래스를 만들어서 그 클래스안에 다른 클래스에 있는 함수들을 다 가져와서 게임을 진행하게 만들었다 ​ 사용자로부터 구단이름을 입력받고, 입력받는과 동시에 txt 파일을 입력받은 구단명 이름으로 생성시킨다 ​ 그리고 구단만들었을 때 3000원이 자동으로 보유하게 되고, 보유 머니로 6명의 선수를 영입하게 한다. ​ 그리고 자신이 영입한 선수들의 목록을 보여준다 메인에서는 사용자가 원하는 값에 따라 함수들을 실행시킨다 메인 내용은 위에 콘솔 창 설명과 같다 제일 많이 바뀐 경매장 클래스인데, 기존에는 경매장에서 선수를 구입하고 판매하는 식으로 진행하였는데 텍스트 파일 안에 있는 선수들을 Stream을 이용해서 ..
[Baseball - Restrict console] 3rd 오늘은 프로젝트 코드에 진전이 별로 없다..ㅠ^ㅠ 3시 30분부터 10시까지 국비 수업이 진행되기 때문에, 대부분 12시부터 3시30분까지 인프런강의를 1시간 듣고, 나머지 시간 동안 개인 프로젝트를 만드는데, 어제 수업에서 배운 DB의 Join부분이 조금 어려워서 연습문제를 푸는데 애를 먹느라 시간을 좀 많이 쓰게 되고, ​ 프로젝트의 진행방향에 대해서 같이하는 친구와 회의하면서도 시간을 좀 많이 썼다 ​ 프로젝트의 방향성에 대해서 1. 함수를 나눠서 만들어 여러 가지 기능들이 있는 야구게임 2. 한 가지 함수를 서로 코드 구성을 하여서 서로 다른 풀이 방식에 대해서 토론하고 공부하는 방식 ​ 이 부분에 대해서, 1번으로 결정을 하였고 전자방식으로 진행하는 대신에, 자기가 왜 그렇게 코드를 짰는지 설명..
[Baseball - Restrict console] 2nd 오늘은 database의 중요성을 깨달았다... 아직 db를 배운 지 2일밖에 안돼서 테이블 생성하고 연결하는 방법 등 아는 게 거의 없어서 전에 배운 Stream을 이용해서 txt파일에 넣고 또다시 꺼내서 쓰고..(기능상 안 좋지만 지금은 어쩔 수 없어..) ​ 그리고 어제 시스템상 오류가 있었는데, 경매장에 선수들을 처음에 100명넣고 영입하고, 방출하고 하려는 계획적인 측면에서 원하는 선수를 영입하려 했을 때, 선수를 선택하는 과정에서 1차 문제, 그 경매장에서 해당 선수만 빼오는 게 2차 문제, 그리고 경매장에서 선수를 영입했으면 경매장. txt에서 삭제시켜야 하는데 거기서 또 3차 문제... 그냥 문제 투성이 ​ 1차 문제 : 선수를 선택할 때 무슨 값으로 선택하냐 => 이름으로 선택 시 : 중..
[Baseball - Restrict console] 1st 수업 시작 전 1시간 동안 대략적인 프로젝트 설계를 해서, 함수를 뭐를쓸지 간단하게 정하고 대략적인 만드는 순서를 정했다 ​ 오늘은 시간이 별로 없어서 경매장에 관한 것만 만들어보기로 했다 첫 번째는, CreatePlayerList라는 클래스를 만들어서 이름 3글자를 각각 나누어서 인스턴스를 생성했을 때, 랜덤으로 이름이 생성되게 하였고 ​ 타자와 투수를 나누어서 스탯을 랜덤으로 생성시키고 나중에 인게임에 들어갔을 때, 사용자를 관점으로 게임을 돌리기 때문에 타자는 조금 적은 스탯을 주고/ 투수는 보다 높은 스탯을 주었다 ​ 타자 투수 둘 다 스탯이 적으면 사용자가 이길 수 있는 확률이 너무 낮아져서 상대적으로 투수의 스탯을 높였다 ​ 그리;고 경매장에 스탯 별로 선수들의 몸값을 올리기 위해서 playe..
[Baseball - Restrict console] plan 앞으로 2주간 DB를 배우고 2주 후부터 1차 프로젝트인 포스기 만들기를 진행한다고 한다 DB를 배우는동안 이클립스에서 배웠던 자바 문법들을 까먹을 것 같기도 하고, 코로나로 인해 당분간 스터디도 제한적으로 (카톡으로만 공유하기로 했다) 진행되어서 2주간 할 수 있는게 뭐가 있을까 생각했다. 백준에서 알고리즘을 풀거나 미니 프로젝트를 만드려고 고민되는 와중에, 근처에 사는 친구와 같이 미니 프로젝트를 하기로 결정했다. ​ 여러가지 구글링 해서 찾아봤는데, 야구 만들기가 눈에 띄었고, 2주의 짧은 시간이지만 최대한 야구게임처럼 만들어보고 싶은 욕심이 생겼다 오늘부터 스타트 !! ​ 예외처리 : 안타 쳤을 때, 외야수 내야수가 공을 잡아 아웃시킬 확률은 30% 고정 투수가 포크볼, 슬라이드 볼, 커브볼 등 ..