두 번째 Swift 2.x 프로젝트를 수행한 짧은 후기

Swift 2.x 두 번째 프로젝트가 스토어에 올라갔다. 사실 올라간지는 몇 일 되었지만 이제서야 이런 포스팅 하는 이유는 너무 급박하게 개발을 했던 나머지 내가 목표로 했던 건 거의 이루지 못하였다는 아쉬움에 대한 성찰 때문이었다.

기존 거대한 레거시가 있던 프로젝트의 메이저 업데이트는 처음이었다. 비지니스 로직은 그만큼 복잡했고 여러 이해관계 때문에 이렇게까지 해야하나 싶은 피쳐들도 꽤 있었다.

짧은 글로 다 표현할 수는 없지만 언젠가 게임업계에서 돌던 ‘버튼 하나에도 여러 사람의 노력이 담겨있다.’라는 짤방이 생각난다. 단순한 하나의 앱의 중요도는 불과 3~4년전보다 더 커져 있었다.

각설하고,

이번 프로젝트에서 개인적으로 잡았던 목표는 protocol-oriented programming 이었다. 하지만 결론은 Failed… object-oriented 는 많이 익숙해 있었기 때문에 더 protocol-oriented에 더 끌렸을지도 모른다. 하지만 이를 고려할 시간적인 여유가 너무 없었다. 그나마 Alamofire framework를 사용하면서 예제에 따라 URLRequest 로 맛이라도 봤다는 것? 물론 프로젝트 수행은 잘 끝내고 오픈도 잘 했다.

OSXDev.org에서 진행 중인 Swift Study 에서도 발표하며 언급한 적이 있지만 Cocoa (Touch) 개발자라면 한 번은 Swift로 프로젝트를 진행해보길 권장한다. 처음부터 무리하게 목표를 잡지말고 익숙해지기부터 시작하면 다시 Objective-C로 돌아가지 못하는 자신을 볼 수 있을 것이다. (개인차가 있긴하다.)

그리고 시간이 허락한다면 NS prefix는 최대한 쓰지 않는 방법으로 코딩을 지향하는 것이 좋다. 그렇지 않다면 굳이 Swift를 쓰는 의미가 없다. 자료형과 가공 함수 등 Swift에서 제공하는 자료형과 함수를 이용해보면 시간은 조금 더디겠지만 Swift에 좀 더 가까이 다가갈 수 있게 된다.

이제 나에게 새로이 낼 숙제는 현재 구현된 코드들의 refactoring 때 protocol-oriented 에 맞게 코드를 수정하는 것이다. (사실 피로도가 높아서 손대고 싶지는 않다… so lazy..)

올 해 목표가 목표인지라 할까말까 고민이지만 이 목표를 수행할 뭔가가 있겠지~ 2016년은 아직 반이 넘게 남았으니까..

더 쏟아내고 싶은 회고는 많지만 이는 나중에 술 안주로..

--

--

iOS Application Developer and wanting to be Application Planner. I just do like people without any conditions they have. Eager for some knowledge constantly.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
YoonBong Kim

iOS Application Developer and wanting to be Application Planner. I just do like people without any conditions they have. Eager for some knowledge constantly.