2024 캡스톤디자인 후기

@inup· June 12, 2024 · 3 min read

2024학년도 1학기 컴퓨터공학 기초캡스톤디자인 출품작
2024학년도 1학기 컴퓨터공학 기초캡스톤디자인 출품작

개요

교통약자들이 버스를 보다 쉽게 이용할 수 있도록 돕는 애플리케이션 개발

상세

3학년 1학기 캡스톤디자인 출품작이다. 교통약자를 위한 버스 정보 서비스이며, FastAPI와 Flutter 프레임워크를 이용하여 구현하였다.

최초 아이디어는 수도권에서 흔히 볼 수 있는 버스정류장의 BIS(버스 정보 서비스) 키오스크를 개선하는 것이었다. 기존의 단방향적인 정보 전달 방식, 즉 몇 번 버스가 언제 도착하는지에 대한 정보 제공을 넘어, 사용자가 원하는 목적지에 도달하기 위해 가장 빠르고 효율적인 경로를 안내하는 키오스크를 개발하고자 했다.

또한, UWB 모듈을 활용한 장애인 버스 탑승 편의 기능도 기획했으나(실제로 구매까지 완료했지만), 시간과 비용의 제약으로 인해 구현하고자 하는 기능의 범위가 크게 축소되었다. 결국, 최종적으로는 단일 애플리케이션 개발로 방향을 전환하였다.

프론트엔드 코드
프론트엔드 코드

프로젝트를 진행하며 플러터 프레임워크를 거의 처음 다뤄보았다. Dart는 어색했지만 Java와 비슷한 점이 많아 어렵지는 않았다. 가장 난감한 건 바로 플러터 특유의 위젯 트리 중첩으로 인해 코드가 복잡하고 읽기 어려워지는 문제였다.

리액트도 마찬가지로 여러 컴포넌트를 사용해 UI를 구성할 때 비슷한 문제가 발생하지만, 플러터는 닫는 태그가 없어 이보다 가독성이 많이 떨어진다. 특히 특유의 상태 관리 방법과 레이아웃/스타일링 구성이 개발자를 꽤 피로하게 만든다.

아래 두 가지 원칙을 지켜야만 건강한 플러터 개발을 지속할 수 있다.

  • 레이아웃과 스타일링을 분리하기
  • 코드를 재사용하고, 적절한 디렉토리로 나누기

역할

  • 프론트엔드 및 기획
  • 팀원 의견 조율하기 (가장 힘들었음!)
  • 경진대회 포스터를 한땀한땀 제작

성과

기획한 아이디어는 정말 단순했지만, 속도와 사용성 부분에서 좋은 평가를 받아 경진대회에서 금상(2등)을 수상하였다.

찍은 사진이 이것밖엔 없다 T.T
찍은 사진이 이것밖엔 없다 T.T

@inup
언제나 감사합니다 👨‍💻