협업의 어려움

Oak_Cassia·2022년 5월 16일
0

기획이 끝나고

개발을 어떻게 나눠야 할지 고민이 됐다. 처음에 개발 보다 디자인을 하고 싶다는 사람이 있어서 분야 별로 나눠볼 생각이었지만 그 사람이 휴학을 하게 되면서 3명이서 진행을 하게 됐다.

구현할 부분을 나눠서 각자 맡는 방식이 좋지 않을까?

개발 시작

어떻게 진행할까 고민하다 일단 만들어보자 생각하고 처음에 계획했던 창을 조금 만들어 보았다.

  • 메인 화면
  • 옵션 화면


만들고 보니 이 둘을 어떻게 연결하지?
구글과 스택 오버플로의 힘을 빌려

  1. 첫 화면에 frame을 만들고
  2. navigate를 이용해 페이지를 변경했다.

키 입력?

그리고 키 입력에 대한 생각을 했다. 어떻게 구현하면 좋을까?
역시 구글링을 통해

  1. 키다운 이벤트
  2. 포커스 활용

두 방법을 찾아냈고 포커스를 활용하면 구현이 쉬울 것 같았다.
Focusable과 페이지의 기본 Focus를 정하는 방법을 알아내 적용했다.

음 여기까지는 잘 굴러가는 것 같은데...

동그란 버튼도 만들었다.

문제 발생

일단 만들고 보자는 생각이 이렇게 크게 다가올 줄이야...

  • 페이지를 넘나들기 때문에 추가 기능을 구현하기 굉장히 복잡해졌다.
  • 뒤늦게 키 입력을 생각 하다 보니 프로그램이 본래 의도와 멀어져 갔다.
  • 디자인도 기괴해졌다.

당신이라면 이런게 하고 싶겠는가?
부끄럽지만 하루 종일 구현해 낸것이 이것이다. 표면상으로만 볼 때 초등학생도 만들 수준 아닌가?

결론

뒤집어 엎기로 했다.
설계 구조 부터 기획 의도를 살려 다시 만들어야 했다.

협업의 어려움은 어디에?

결국 나 혼자 삽질하다 뒤집어 엎은 이야기인데 협업의 어려움은 어디갔나.

소통

  • 한 회사에 모여 업무하는 것도 아닌 서로 다른 시간표를 가진 학생들의 협업은 소통하기 쉽지 않다.
  • 기획을 하는 과정에서는 모여서 회의를 했지만
    개발 과정으로 넘어가니 한 자리에서 결론이 나기 어려워 더욱 힘들어졌다.
  • 각자의 과제, 공부, 할 일들이 있으니 진행상황을 공유하기도 어렵다.

    어떤 방법을 사용할지 정하는 것도 어려웠고
    개발 경험이 적은 우리가 정한 구조도 옳은 것인가에 대한 의문이 따랐다.

하지만

  • 매일 아침~밤, 동아리 방에서 머리를 쥐어짜는 나는 어느 순간 방법을 찾아냈다.

    갑자기 머릿속에 설계 구조와 디자인이 떠오르기 시작했다.

  • 현재 시각은 11시 20분
    • 기숙사 통금은 11시 50분
      • 기숙사까지 이동 시간 15분

하지만 나는 이 떠오르는 생각을 구현해야만 했다.

  • 데이터 바인딩과 커맨드를 사용해 전체를 아울렀다.
  • 자세한 내용은 다음에...

결국 43분에 나와 7분동안 미친듯이 달렸다.

profile
rust로 뭐할까

0개의 댓글