본문 바로가기

Project/ToyProject

[Baseball - Restrict console] 3rd

반응형

오늘은 프로젝트 코드에 진전이 별로 없다..ㅠ^ㅠ

3시 30분부터 10시까지 국비 수업이 진행되기 때문에,

대부분 12시부터 3시30분까지 인프런강의를 1시간 듣고, 나머지 시간 동안 개인 프로젝트를 만드는데,

어제 수업에서 배운 DB의 Join부분이 조금 어려워서 연습문제를 푸는데 애를 먹느라 시간을 좀 많이 쓰게 되고,

프로젝트의 진행방향에 대해서 같이하는 친구와 회의하면서도 시간을 좀 많이 썼다

프로젝트의 방향성에 대해서

1. 함수를 나눠서 만들어 여러 가지 기능들이 있는 야구게임

2. 한 가지 함수를 서로 코드 구성을 하여서 서로 다른 풀이 방식에 대해서 토론하고 공부하는 방식

이 부분에 대해서,

1번으로 결정을 하였고 전자방식으로 진행하는 대신에, 자기가 왜 그렇게 코드를 짰는지 설명하는 시간을 갖고,

정해진 기간 내에 프로젝트를 일찍 끝냈을 때는, 서로의 코드를 피드백하기로 하였다

<조인 함수의 연습문제>

여러 개의 테이블을 검색했을 때, 동일한 칼럼명은 앞에 테이블 이름을 적어주는 것과

FROm 뒤에는 앞에 SELECT 한 칼럼들이 속해있는 테이블명을 다 적어주는 것과

Join 했을 때 WHERE 절 뒤에 테이블들이 공통적으로 갖고 있는 기본키가 같다는 것을 추가해야 중복을 없애는 것,

세 가지에 대해서 조금 더 명확하게 알 수 있게 되었다

본론으로 넘어가서,

첫 번째로는,

프로젝트 방향성에서 정한 방식으로 앞으로 진행하기 위해서,.

친구의 코드와 비교하면서 더 클린 한 코드로 통일화를 시켰다.

그리고 두 번째로는,

DB에 연결되지 않는 프로그램이기 때문에

txt 파일에 의존하면서 게임이 진행되어야 하는데

경매장. txt에서 선수를 영입하면

해당 선수는 나의 구단. txt에 올라감과 동시에 경매장. txt에서는 삭제되어야 한다.

생각보다 간단한 문구지만,

구단주가 입력한 선수의 번호와 텍스트 파일에 있는 선수들 중의 번호가 일치할 때, 해당 선수의 모든 정보를

가져와야 하고 그 선수가 있던 텍스트 파일에서는 모든 정보가 삭제되어야 한다

그러기 위해선

텍스트 파일에서를 다 불러와서 배열에 담고,

이중 배열을 만들어서 (구단주가 고용하고 싶은 선수가 가진 고유번호와 배열에 들어가는 선수들의 인덱스 번호는 다르다)

해결해야 했다.

이 부분에 대해서, 한 시간은 고민한 것 같다

그리고 함수들을 범용적으로 쓰는 게 클린 코드에 가까워지는 것 같아서

함수 하나를 만들 때도, 여러 군데에서 사용할 수 있게 변경하고 있는 중이다

그리고, 학원에서 코딩 잘하는 형이 있는데 블로그를 보고 피드백을 해주었다

"함수 안에 스캐너가 들어가는건 별로다"

지금까지 메인에서 깔끔하기 위해서 함수안에 스캐너를 넣곤 했는데,

이 방식은 고쳐야 할 것 같다

미니 프로젝트를 진행한 지 3일밖에 되지 않았지만,

혼자 코드를 짜 왔던 지난날보다 같이 한다는 게 생각보다 어색하고 아직은 어렵다

변수를 정하는 것부터, 함수 이름도 누구나 알아보기 쉽게 정해야 하고,

지금은 단 둘이지만 더 나아가 앞으로 학원에서의 프로젝트, 또 회사에서의 프로젝트는 지금보다 훨씬 많은

인원들이 다 같이 만들어 나갈 텐데

아직은 어색하기만 한 협동 프로젝트 방식이 걱정도 되지만, 미리 경험할 수 있어서 좋은 것 같다

매일 수업 시작 전에 스터디 인원들이 각자 자습하고, 공부를 요약해서 올리는데

자극도 되고 다른 친구들이 어떤 걸 공부하는지에 대해서 나의 공부 방식도 계속 뒤돌아 볼 수 있어서 좋은 것 같다

반응형