[2024.06.08/ 카테캠2 충남대 Android] 9주차 회고록
사실상 이번 주가 마지막 주라고 생각하면서 임했다.
다음주에 왠지 바쁠 것 같아서...
이번 주도 빠듯하지만 힘내서 열심히 해봐야지...ㅎㅎ
목표:
1. 미니과제2 오목 게임 구현
2. 카테캠 강의 다 듣기
ㅣ미니 과제
이번 미니과제는 오목이다. 예전에 객체지향설계라는 과목을 배울 때 오델로 게임을 구현해보는 텀 프로젝트를 했었는데, 비슷할 것 같아서 걱정은 없었다. 하지만 ui를 다루는 게 저번과는 달라서 조금 막막했다. 일단 오목 게임을 다운받고 몇 판 했는데, 그게 또 재밌어서 시간을 잡아먹었다. 미니 과제 1을 했을 때는 계획대로 착착 구현이 진행되었는데, 이번에는 구현하다보니 추가로 구현할 것들이 생각났다. 다음에는 조금 더 공들여서 설계해야겠다.
+ 중간에 MVP 구조로 리펙토링 하는 게 기능 구현보다 시간이 더 오래 걸린 것 같다.^^;;; 설계의 중요성...
+ 미니과제1 피드백을 바탕으로 클린코드를 위해 노력했다. 너무 재밌다...
https://github.com/next-step/android-omok-precourse/pull/26
[충남대 Android_노수진] 미션 제출합니다 by graccon · Pull Request #26 · next-step/android-omok-precourse
미니과제2.오목 (1) 진행 소감 코드 구조화의 중요성: 처음에는 기능을 구현해야 된다는 생각에 한 파일에 코드를 짜기 시작했다. 기능 구현을 마무리 했을 때, MVC 패턴을 적용하여 코드를 분리했
github.com
ㅣ강의 듣기
결국... 이론 강의 마스터했다. 얏호.
이번 시간에는 데이터베이스 처리에 관한 부분을 주로 배웠다. 안드로이드에서는 데이터 처리를 위해 주로 SharedPreference이나, Room을 사용한다. 뭔가 코드 구현 방식이 스프링과 비슷하다는 생각이 들었다. 그리고 간편하게 데이터를 처리하기 위해 DAO를 만들어서 객체처럼 처리한다는 것을 배웠다. 네트워크와 통신도 찍먹했다. 역시나 느낀점은 안드로이드에서 가장 중요한 점은 쓰레드 처리를 얼마나 잘 하냐인 것 같다. 메인 쓰레드에서는 주로 ui 작업을 하기 때문에 다른 작업시에는 비동기로 처리해줘야 한다. 근데 서버에서 가져와서 ui를 전시하는 상황이면 메인 쓰레드에서 처리할 수 없는건가?
+ 데이터 처리나 네트워크 통신을 할 때, Profile으로 CPU, 메모리 등을 프론트도 점검해줘야 된다는 것을 알았다.
역시 한 분야를 잘하려면 다른 분야도 아는 게 많아야 한다는 걸 느꼈다.
ㅣ깃 특강2 (2024.06.04)
이번 시간에는 조별 실습을 하는 시간이었다.
Fizzbuzz와 돼지 주사위 게임을 기능을 나눠서 각자 코드를 구현하고 깃에 올리는 실습을 했다.
역시 보는 거랑 하는 거는 달랐다. 생각보다 깃 사용하는 게 어려워서 시간이 좀 걸렸다. 내가 얻은 것들을 잘 정리해뒀다가 형상관리할 유용하게 써야겠다.