[iOS] 번개장터 클론코딩 회고록

민니·2022년 9월 4일
0

Project

목록 보기
1/1

Overview

프로젝트명: 번개장터 클론코딩
사용 언어: Swift
기간: 8월 20일(토) ~ 9월 2일(금)
목표: 번개장터 앱 처음부터 끝까지 클론코딩해 보기
팀원:

파트닉네임
서버에단 님, 워니 님
iOS다나(it's Me)! 😆

사용한 api

📎 https://docs.google.com/spreadsheets/d/1MB0Sbl8Hq7Tr7LwspUTx0OcmT3Zyw-8sed1CSANKfbw/edit#gid=0

  1. 카카오 로그인
  2. 본인인증 로그인(문자 메세지 인증번호 전송, 문자메세지 인증번호 검증)
  3. 회원 정보 변경
  4. 번개장터 탭 중 my 버튼을 눌렀을 때의 화면
  5. 사용자가 판매하는 아이템 목록 조회
  6. 사용자가 판매하는 아이템 목록에서 검색 기능
  7. 상점 화면 출력
  8. 상품 전체 조회
  9. 상품 조회 - 판매글 상세 페이지
  10. 상품 검색
  11. 최근 본 상품 조회
  12. 유저가 팔로우하는 브랜드만 조회
  13. 브랜드 목록 조회
  14. 브랜드 검색
  15. 상품 글 등록
  16. 찜 기능
  17. 찜 해제
  18. 찜한 상품 조회
  19. 팔로워 조회
  20. 팔로잉 조회
  21. 팔로우 등록/취소
  22. 문의 등록

Result

📎 최종 시연 영상
https://drive.google.com/file/d/1tEPCugSa6iMFebR1iTNn6c_3vGR1o6w3/view?usp=sharing

📎 github
https://github.com/minnnidev/Bunjang.git


새롭게 해 본 것들 🆕❗️

  • 서버 통신
  • Rest API 원없이 사용해 보기
  • jwt 토큰 이용
  • 라이브러리 이용 (tabman, imageSlideShow, DLRadioButton)
  • 기타 UI 구현

아쉬운 점 / 놓친 부분 💦

  • compositional layout을 꼭 사용해 보고 싶었는데, 아직 스토리보드로만 프로젝트를 해봐서 못했음
  • apple 로그인 구현 못 했음
  • 번개장터에 자잘한 애니메이션들이 많았는데 이런 디테일 부분은 구현하지 못했음
  • 서버분들이 api를 어마무시하게 만들어 주셨는데... 다 못했음 ㅠㅠ
  • 내가 생각했을 때 비효율적으로 만든 UI들이 있는 것 같아서, 회고록을 쓴 후에 다시 수정해 보려고 함
  • ㄴ 코드도 마찬가지

다음엔 꼭

  • 클론 코딩을 하기 전에 무작정 시작하기보다 모든 화면을 돌아보면서 재사용되는 cell이 있는지, 이 화면에서는 어떤 UI를, 저 화면에선 어떤 UI를 사용하는지 등을 확인하고 시작할 것. 나는 이를 나중에 알게 되었는데, 번개장터에서 재사용되는 cell이 정말 많다는 것을 알고 정말 놀랐음. 이렇게 많이 재사용되는 줄 알았으면 파일 이름 좀 제대로 지을걸... 싶었다.
  • 서버분들한테 문제점, 이상한 점 등 말하는 걸 두려워하지 말기. 나도 중후반에는 잘 말하게 되었지만 처음에는 이상하게 입이 안 떨어졌다. 안 그래도 고생하시는데 어디가 이상하다, 어디가 다운되었다라고 말하기가 그래서 그랬던 것 같다. 하지만 오히려 일찍 말씀드리는 게 그분들 입장에서도 더 편할 것이다.
  • 코드를 더 깨끗하게 쓰려고 노력하기. 이번 프로젝트 클라이언트는 나 혼자 진행했지만 추후에 클라이언트 파트에서도 협업을 하게 된다면 팀원분께서도 그냥 몇 줄 읽으면 아~ ㅇㅋ 할 수 있는 코드를 짜야 한다. 그리고 너무나 그렇게 짜고 싶다. 이건 연습뿐이 살길이겠지?

회고록을 처음 써 보는 사람이라...

일단 정리도 정리지만 프로젝트를 하면서 새롭게 했던 게 너무너무 많아서 회고겸 주절주절.

코딩을 시작한 이후로(...라고 썼지만 사실 그리 오래되진 않음) 정말 처음으로 제대로 다른 분들과 협업을 해 봤다. 물론 학교에서 팀플도, 텀 프로젝트토 몇 번씩 해 봤지만 다 모두 나랑 분야를 공부하는 동기들이었지 나와 다른 파트분들과 협업을 하는 것은 처음이었다. (ex. 서버 & 클라이언트)

나는 항상 혼자 공부했었기에 내가 어떤 부분에서 부족한 느낌이 들면, 뭐 어때 지금 당장 그걸 공부하면 되지라는 생각으로 살아왔다. 물론 이게 옳고 그름을 판단하자는 게 아니라... 라이징테스트는 2주간 진행하고, 서버분들과의 협업 과정도 있었기에 시간적으로 압박감이 정말 심했다. 막히는 부분이 생기면 시간을 정해두고 도전해 본 뒤, 안 되면 일단 미뤄두었다. ㅠㅠ 구현할 시간도 부족해서 공부할 시간은 더더욱 부족했다.
그래서 실제로 2주라는 시간 안에 구현하지 못한 기능도 많다. 아쉽... 🥲

하지만 이번 프로젝트가 나에게 정말 좋은 기회였다는 걸 느끼게 된 부분은 바로 iOS를 계속 공부하는 것에 대해 확신을 가지게 되었기 때문이다. 이전까지는 주로 강의를 듣고 따라하다 보니 공부를 하면서도 습... 이게 맞나? 이렇게 해서 나만의 앱을 만들 수 있을까?라는 어느 정도의 불안함과 함께 공부를 했다.

하지만 이번 프로젝트를 비롯한 라이징캠프를 통하여 직접 앱을 만들어 보면서 아 너무 재밌다... (물론 안 돼서 화날 때가 더 많았음. ㅎ)라는 생각이 드는 걸 보고 내가 코딩을 재밌다고 생각하다니...? 해서 깜짝 놀란 적이 많았다. 특히 한 화면을 만들고 서버 통신까지 성공했을 때의 그 기분... 😆

그리고 이걸 하면서 아 시간이 쫌 더 있었으면 여기를 더 공부해 볼 텐데... 아 여기가 너무 부족해서 아쉽다라는 생각과 동시에 빨리 여유가 생겨서 효율적으로 더 개발해 보고 싶다는 생각이 들어서 꽤나 설렜다. 사실 맘에 안 들었던 부분도 너무 많아서... 완성이라고 하기엔 뭐하지만 공식적인 기간은 끝났으니 한번 적어보는 글!

방학의 끝자락을 이렇게 좋은 프로젝트로 마무리하게 되어서 행복하다~!

0개의 댓글