OO어플 개발 후기

humblechoi·2020년 1월 31일
1

프로젝트

목록 보기
1/3
post-thumbnail

대학교 동아리에서 OO어플이라는 학생 편의 어플을 개발하고 있습니다. 2019년도 여름방학에 리뉴얼 버전(ver 7.0) 개발자가 부족하다는 말을 듣고 지원하게 되면서, 지금까지 개발 하고있습니다. ver 7.0 에서는 네이티브, ionic으로 개발했던 전의 버전들과는 다르게 flutter를 이용하여 개발하였습니다.

Why Flutter?

OO어플은 교내동아리 내에서 어플개발에 관심있는 사람들끼리 모여서 만든 어플리케이션입니다. 개발자가 적어서 네이티브로 어플리케이션을 만들기에는 제한이 있었습니다. 그래서 하나의 코드를 베이스로 안드로이드와 ios에서 모두 돌아가는 어플리케이션을 만들 수 있는 크로스플랫폼인 Flutter를 이용하기로 결정하였습니다.

State Management

state 관리 방법으로는 BLoc을 이용하였습니다. OO어플 개발팀의 신입 개발자 분들의 학습을 위해서 BLoc에 대해 추후에 적도록 하겠습니다.
Flutter에서 가장 인기있는 state 관리 방법은 Provider와 BLoc이 있습니다. Provider는 2019 구글 IO에서 추천한 방법으로 쉽게 state 관리를 할 수 있는 장점이 있습니다. 하지만 UI와 Business Logic을 분리할 수 없어 프로젝트가 커지면, state를 관리하기 어렵습니다. BLoc은 UI와 Business Logic을 분리할 수 있어, state 관리가 용이하여 큰 프로젝트에 쓰기 좋다는 장점이 있지만, 러닝커브가 높고 state 관리를 위한 페이지들(state, event, bloc)을 만들어야하는 불편함이 있습니다.

언제 BLoc을 써야할까?

어느 프로젝트에 어떤 state 관리 방법을 써야할까 고민을 많이하며, 구글에도 검색해 보았지만 정확한 답을 찾기 어려웠습니다. 그래서 개인적으로 내린 결론은, 다른 페이지에도 사용해야하는 관리할 state들이 많으면 BLoc, 그게 아니라면 Provider를 사용하자! 입니다.
OO어플은 관리할 state들이 많은 관계로 BLoc을 사용하였습니다.

내가 구현한 기능들

제가 현재까지 개발한 페이지들은 다음과 같습니다. 많이 개발하였다고 생각했는데 조촐한 느낌이 있네요.. 여름방학때, 인턴 끝나면 OO어플만 개발했는데..

1. 야식 페이지

![IMG_4091.PNG](https://media.vlpt.us/post-images/humblechoi/67f98d60-4403-11ea-940f-2ff0310069c7/IMG4091.PNG 야식 1)
![IMG_4093.PNG](https://media.vlpt.us/post-images/humblechoi/6eb8d8e0-4403-11ea-940f-2ff0310069c7/IMG4093.PNG 야식 2)
![IMG_4092.PNG](https://media.vlpt.us/post-images/humblechoi/6b341ef0-4403-11ea-940f-2ff0310069c7/IMG4092.PNG 야식 3)
![IMG_4088.PNG](https://media.vlpt.us/post-images/humblechoi/e7121740-4401-11ea-8474-035c8def1488/IMG4088.PNG 야식 4)
![IMG_4090.PNG](https://media.vlpt.us/post-images/humblechoi/654c47b0-4403-11ea-940f-2ff0310069c7/IMG4090.PNG 야식 5)

2. 스케줄 페이지

![IMG_4094.PNG](https://media.vlpt.us/post-images/humblechoi/725f99c0-4403-11ea-940f-2ff0310069c7/IMG4094.PNG 스케줄 1)

![IMG_4095.PNG](https://media.vlpt.us/post-images/humblechoi/74db9640-4403-11ea-940f-2ff0310069c7/IMG4095.PNG 스케줄 2)

![IMG_4099.PNG](https://media.vlpt.us/post-images/humblechoi/77347a60-4403-11ea-b16d-e5da2b453a11/IMG4099.PNG 스케줄 3)

한번에 다 올리고 싶은데, 사진 크기가 너무 크다 ㄷㄷ. 마크다운 사진 크기를 조정해주려고 하는데 적용이 안된다.
혹시 이 글을 보고 계시는 분 중에 사진 크기를 어떻게 조정하는지 아시는 분 있으면 댓글 부탁드립니다!

추후 계획

새로운 기능들을 추가하기도 하고, 기존의 기능들을 바꾸다보니 유저들의 피드백이 많이 왔습니다. 가장 많은 피드백은 스케줄을 교시기준으로도 보고 싶다는 피드백이었습니다. 그런 피드백을 반영하여 OO어플의 ver 7.1 개발 기획을 하였습니다. 2020 1학기 개강 전까지 ver 7.1 개발 완료가 목표입니다.
OO어플 ver 7.1 기획은 다음과 같습니다.

홈페이지

  1. 전체보기의 GestureDetector를 전체 Container로 확장
  2. 식단, 버스시간표 Text와 Content Container 사이의 Padding 주기

편의정보

  1. ios에서 전화가기 안된다.

행사(아직 기획 전)

  1. 행사 등록 페이지 UI개선
  2. 행사 사진 여러개 등록할 수 있도록 변경

야식

  1. ios에서 전화가기 안된다.
  2. 빈별 UI 깨짐

시간표

  1. 시간표 교시기준으로 만들기
  2. 24 format 시간표와 교시 기준의 시간표 전환기능
  3. 시간표 위젯 캡쳐기능
  4. 7,8,9,10교시 빼기 기능
  5. 11시 이후 알림(알림 on/off 가능)
  6. 1pm ~ 12 : 10 pm 에러 고치기

설정(new)

  1. 11시 이후 알림 on/off 가능
  2. 다국어
profile
지우의 블로그

1개의 댓글

comment-user-thumbnail
2021년 2월 15일

플러터로 개발된거였군요.. 멋있어용~

답글 달기