BookLog(북로그) 앱 출시 소감(회고)

2023. 1. 20. 14:38프로젝트/BookLog(북로그)-출시앱

■ 앱출시 소감

   예정했던 기간에 맞춰서 출시할 수 있어서 다행이었다. 기본기능을 만든 다음부터는 진행속도가 더 빨라질 줄 알았는데 오히려 신경써야 할 것이 더 많았다. 변수명, 메서드명, 디바이스 빌드 시 UI깨짐 확인 등등... 개발단계가 끝나고는 앱심사 준비단계였는데 이것도 만만치 않은 작업이었다. 애플에서 요구하는 부분을 정확하게 충족시켜야하기 때문이었다. 아카이빙을 할때는 혹시 뭔가 앱에 문제가 생기지 않을까 하는 말도 안되는 생각까지도 들었다. 처음이다 보니 모든 과정에서 아무 일이 없었으면 하는 마음에 조마조마 했던 것이다.

   사실 개발을 마치고 앱심사를 준비하기 직전까지도, 아니 앱심사를 하는 도중까지도 앱완성도를 조금이라도 더 높이고 싶다는 마음이 들었다. 그러다가 속으로 이래서 개발기간이 길어지는 거구나라고 생각했다. 사실 아무리 잘만들어도 마음에 들지 않는 부분은 존재할 수 있기 때문에 우선 빨리 출시를 하고 개선해나가는 방식이 훨씬 합리적인 방식이 맞다.

   앱스토어에서 검색해서 북로그를 처음 다운 받았을때 내가 정말 개발자가 된 것 같은 느낌이 들었다. 간단한 앱이지만 어쨌든 내 이름을 걸고 출시한 앱이기도 하고, 단순히 기능구현만 한게 아니라 어떻게 하면 좀 더 효율적으로 Swift가 추구하는 방향성에 맞게 개발할 수 있을지 고민하면서 만들었기 때문이다. 아마 개발자로서 일한다는게 이런 느낌이지 않을까 싶다. 프로젝트 동안 개발 뿐만 아니라 앱 출시 과정에 대한 전반을 배울 수 있어서 좋았다. 앞으로 리팩토링도 착실하게 해나가야지.

 

■ 주요 개발 내용

• 테이블구조 변경(savedBook컬럼 삭제)

     ⁃ 카테고리화면에서 보여줄 책권수는 BookData를 통해 가지고 오는 걸로 처리하니 굳이 저장책권수를 카테고리테이블에 저장할 필요가 없음.

 

• 책 중복추가 제한

     ⁃ multiselectionArray.first!.ISBN → ISBN값 확인하고 필터링했으나 안됨. ISBN값을 string타입으로 직접쳐서하니까 필터링 됨. 처음 ISBN에 접근했을때 first가 자동으로 옵셔널 처리가 되었음(multiselectionArray.first?.ISBN). 그렇다면multiselectionArray.first?.ISBN에서 문제가 발생했기 때문에 언래핑처리해주니 변수로도 필터링 적용됨. 옵셔널체이닝 때문에 필터 키워드가 옵셔널 타입이어서 realm 필터링이 실행되지 않았던 것임.