동네북 되돌아보기

Kang Hee Young·2022년 1월 8일
0
post-thumbnail

📱 Released

Github

우리 동네 책 소셜 커뮤니티 플랫폼

처음으로 만들고 배포한 어플, 동네북

몇 차례 앱 제작을 위한 공부를 시도 했었지만 동기부여와 학습방법을 찾기 어렵단 핑계로 진행되지 않았던 앱 만들기 프로젝트를 42Seoul에서 진행된 openProject를 통해서 경험해볼 수 있었다.
단순히 앱을 만들어서 배포해보자라는 목표로 같이 공부하던 친구들과 팀을 구성하게 되었고 앱 기획부터 제작 그리고 배포까지 경험해볼 수 있는 프로젝트였다.

정해진 일정안에 배포를 목적으로 하다보니 놓치고 올바르게 작성하지 못한 코드들을 확인하는 내용.
+. 아쉬운내용

OOP

-. 가장 큰 데이터인 책과 관련된 데이터들을 객체화 시킨다면 불필요하게 반복되는 코드들을 지울 수 있다.
모델을 수정하였을때 관련된 코드들이 워낙 산발적으로 분포해있고 각자 사용하는 방식이 다르다보니 모델을 수정 할 여유가 없었음. 객체화 시켰다면 한명이 수정해서 배포하면 간단하게 해결 되었을텐데 git 충돌이 무서워서 & 시간이 없다는 핑계로 하지 못함.
-. MVVM과 같은 Architecture를 학습하지 못하였었기에 Architecture를 적용해보지 못한것에 대한 아쉬움. 일단 배포는 어찌어찌 하였으나 유지보수를 하기 위해 코드를 다시 열어보니 처참하다.
-. 무엇보다 OOP에 대한 이해 내용이나 소프트웨어 설계 기술이 부족함을 크게 느꼈다.

비동기

-. firebase와 통신할때 비동기와 관련된 문제가 빈번히 발생하였다. async await 등 여러 방법들을 적용해보았는데 Completion이 가장 이해하기 쉬웠다. Combine, RxSwift, NotificationCenter와 같은 다양한 비동기 처리 방법들을 학습하지 못해 적용해보지 못한 것은 큰 아쉬움이 남는다.
그 당시에는 보이지 않았던 내용들인데 지나고 나서 천천히 검색해보니 보인다.

git commit message

-. git commit 250개, closed issue 78개, PR 112개 꽤 많은 양의 코드를 작성하고 지우고를 하였는데 각 로그 기록들이 부족하고 정리가 잘 되어있지 않다. 프로젝트가 끝날때 쯤에야 git commit, issue, pr에 대한 template을 작성하고 적용하였는데 시작부터 적용했으면 분명 더 좋은 기록이 되었을 것이다.

SwiftLint

-. 3명이 하나의 프로젝트를 진행하고보니 코드 작성스타일이 천차만별이다. camelCase도 어느순간 사라지기도 하고 정해진 것이 없이 기능구현에 초점을 맞췄더니 클래스, 변수, 함수 등 모든 것들의 이름부터 기능이 제각각이다. 기능 테스트를 위해 작성되었던 파일과 변수명이 어느새 프로젝트 내에 들어와 있기도 하고 파일들이 많아지니 관리가 안되는게 확실히 느껴졌다.

profile
hekang in 42Seoul.

0개의 댓글

관련 채용 정보