[Project] 나혼자 해커톤 후기 - 2

2025. 10. 26. 22:53·프로젝트
반응형

지난번 진행했던 개인 프로젝트를 이어서 완성했다(지난 작업 후기). 이번에도 주말동안 약 12시간동안 작업하며 미흡했던 부분을 보완하고 새로운 기능을 개발했다.

작업

이번에는 타이머를 12시간으로 맞추고 1시간이 남을 때 까지 작업했다. 핵심 기능을 어느정도 완료하고나니 집중력이 떨어져서 후반에 남아있던 프론트엔드 작업은 완성하지 못하고 마무리했다. 작업을 하면서 노트에 완료한 시간을 기록하긴 했는데 정확하진 않다.

통계

  • 총 작업시간 : 약 11시간
  • 커밋 수: 94(+57)
  • Java 파일: 128개(+77)
  • Vue 파일: 13개(+4)
  • Typescript 파일: 47개(지난번 카운트를 잘못했는지 수가 줄었다.)

지난번에 완료한 기능

  • 회원 : 회원 가입, 회원 기본정보 조회, 로그인 및 인증
  • 아이템 마스터 : 정보 등록 및 조회
  • 포인트 : 충전 및 충전 이력 저장

이번에 작업한 기능

  • 인벤토리(약 1시간 30분)
    • 사용자 보유 아이템 등록, 조회
  • 아이템 거래(약 3시간)
    • 판매 아이템 등록(약 1시간)
    • 아이템 구매(약 1시간 10분)
    • 판매 아이템 조회
  • 기타(약 4시간)
    • 인벤토리, 판매아이템, 포인트 내역의 목록 조회 및 페이징 구현(약 3시간)
    • swagger 문서 정리(약 40분)
  • 프론트엔드 화면 구성요소 일부

회고

금요일에 충분한 수면(수면점수 94점)을 취해서 토요일 작업이 수월했다. 또 지난번에 swagger 설정이나 인증같은 귀찮으면서 계속 필요한 설정이나 기능을 만들어둬서 기능 구현에 집중할 수 있었다. 기능 구현시간을 다시 돌아보면 거래 기능 구현에만 집중했으면 10시간 내외로 완성했겠지만, 연결된 유저 플로우를 중심으로 작업한게 나중에 보완하거나 재사용하기 좋을거 같아 이것저것 다 구현한 것도 나쁘지 않은 것 같다.

확실히 코딩을 하면 시간이 금방 지나가버린다. 해가 떠있을 때부터 책상에 앉았는데 어느새 날이 어두워져있었다. 프론트엔드까지 완료하지 못한건 아쉽지만 만들고싶은 만큼은 완성해서 개인 프로젝트 치고는 나름 좋은 경험이었다.

잘한 점

  • 핵심 기능이었던 거래 기능을 완성했다. 인벤토리 → 아이템 판매 등록 → 아이템 구매 → 거래 내역 순으로 체계적으로 작업을 진행했다.
  • 지난 작업에 이어서 수월한 진행이 이루어졌다. 지난번에 기능명세문서를 기준으로 작업을 진행해서 각 작업마다 무엇이 완성되어있는지 파악이 쉬웠다. 이번에도 동일한 방식으로 작업했으니 다음에도 이어서 잘 진행할 수 있을 것 같다.
  • 조금이지만 리팩토링과 코드 개선했다. 추후 멀티 모듈로 분리를 고려해 패키지 구조 변경하고 Port 인터페이스 사용으로 의존성을 개선했다.
  • API 문서화 작업으로 프론트엔드 개발자 입장에서 API 이해도를 높혔다. Swagger 태그, 공통 예외 응답 등 API 문서를 정리했다.

아쉬운 점

  • 아이템 목록, 거래 내역 등에서 페이징이 필요한 기능이 많은데 미완성 상태
  • PRD, 유저 플로우, 기능상세문서 등 다양한 양식의 문서를 만들었지만 가독성, 정확도, 완성도 등 미흡한 부분이 많다. 작업하면서 적정 판매가 기능을 뺐는데 문서 전체에 반영하지 못했다.
  • 서버를 구동해서 직접 동작을 확인하는 수동 테스트만 진행했다. http 파일을 작성해서 반복하는건 어렵지 않지만 복잡한 기능의 경우 이게 정말로 잘 동작한다는 확신이 부족하다. 포인트 충전이나 거래 등 동시성 제어 테스트가 필요하다.
  • 백엔드 API는 대부분 완성했지만 프론트엔드 화면은 여전히 부족하다. 프론트엔드는 우선순위가 낮다고 생각해 화면 구성에 대한 문서나 계획도 미흡한 상태였다. 최대한 빠르고 간편하면서 내가 잘 작업할 수 있도록 준비가 필요할 것 같다.

배운 점, 다음에 시도할 점

  • 체계적인 문서 작성과 관리 방식을 고민해서 도입하고 싶다. 관련된 자료나 도서를 찾아봐야겠다.
  • 프론트엔드 템플릿을 미리 준비해야겠다. 작업 시간을 줄이고 실제 동작하는 결과물을 수월하게 만들고 싶다.
  • 다음에는 기능 구현 시 테스트 코드를 먼저 작성하고 구현하는 방식을 시도해보고 싶다. AI를 활용하면 서 TDD형식으로 진행하면 작업 속도가 빨라질 것 같다.
  • 구현했던 공통 기능들을 재사용하면서 개선하고 싶다. 로그인이나 페이징은 다른 프로젝트에서도 반복해서 사용하기도하고 또 업무에 뭔가 적용할만할 것 같다.
  • 커서나 클로드 코드를 많이 활용하던데 나라면 어떻게 이 프로젝트에서 사용할 수 있을지 고민해봐야 겠다.

Arcade Market 프로젝트는 이제 집중 개발 기간을 두진 않고 시간날 때 몇 가지만 더 작업 후 마무리하려고 한다. 우선 문서 정리부터한 다음 나머지는 우선순위는 크게 두지 않고 생각나는대로 할 것 같다.

  • 개요 문서 작성하기
  • flyway로 데이터베이스 마이그레이션 관리하기
  • 멀티모듈 분리하기
  • 테스트 코드 작성하기 : 통합 테스트 위주
  • nuxt-ui로 클라이언트 구현하기

사용자가 사용할 수 있는 앱을 빠르게 만들어보자는 목표로 시작했는데 부족한 부분이 많았다. 남은 작업들을 진행하면서 구현 속도와 완성도를 높이는 방법을 많이 고민해봐야겠다. 다음에 시간이 생기면 다른 주제를 가지고 개인 프로젝트 해커톤을 해볼 생각이다.

반응형
저작자표시 비영리 변경금지 (새창열림)
'프로젝트' 카테고리의 다른 글
  • [Project] 멀티모듈로 분리하기
  • [Project] 나혼자 해커톤 후기 - 1
  • [Project] 4dollar - 헥사고날 아키텍처에서 패키지 구조 전환
  • [Project] 4dollar - 경계간 매핑하기
덴마크초코우유
덴마크초코우유
IT, 알고리즘, 프로그래밍 언어, 자료구조 등 정리
    반응형
  • 덴마크초코우유
    이것저것끄적
    덴마크초코우유
  • 전체
    오늘
    어제
    • 분류 전체보기 (132)
      • Spring Framework (13)
        • Spring (7)
        • JPA (4)
        • Spring Security (0)
      • Language (52)
        • Java (12)
        • Python (10)
        • JavaScript (5)
        • NUXT (2)
        • C C++ (15)
        • PHP (8)
      • DB (16)
        • MySQL (10)
        • Reids (3)
        • Memcached (2)
      • 개발 (3)
      • 프로젝트 (6)
      • Book (2)
      • PS (15)
        • 기타 (2)
        • 백준 (2)
        • 프로그래머스 (10)
      • 딥러닝 (8)
        • CUDA (0)
        • Pytorch (0)
        • 모델 (0)
        • 컴퓨터 비전 (4)
        • OpenCV (1)
      • 기타 (16)
        • 디자인패턴 (2)
        • UnrealEngine (8)
        • ubuntu (1)
        • node.js (1)
        • 블로그 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 미디어로그
    • 위치로그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    php
    언리얼엔진4
    Unreal
    mscoco
    CPP
    PS
    pytorch
    NUXT
    JS
    Unreal Engine
    Python
    웹
    프로그래머스
    memcached
    MySQL
    select
    파이썬
    자바
    FPS
    클래스
    알고리즘
    C
    게임
    map
    딥러닝
    블루프린트
    JavaScript
    게임 개발
    redis
    C++
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
덴마크초코우유
[Project] 나혼자 해커톤 후기 - 2
상단으로

티스토리툴바