Let'Swift 2019 참석 후기 - 2

Let'Swift 2019 참석 후기 - 2

지난 글에 이어 Let'Swift 2019 컨퍼런스 중 참석한 세션들에 대한 내용들을 공유해 봅니다. 그리고 좋았던 점과 아쉬웠던 점 몇가지를 이야기 하고자 합니다.

Walked in on this great seating situation with very forgiving light. Shot on the X100F
Photo by Jonas Jacobsson / Unsplash

Swift 5.1 for SwiftUI

얼마 전에 공개된 Swift 5.1에는 SwiftUI 를 위해 새로 만들어진 기능들이 많이 포함되었습니다.

Swift는 지속적으로 개선되고 있는 언어이기 때문에 새로운 기능에 대해 꾸준히 관심을 가지고 지켜봐야 할 것 같다는 생각을 했습니다.

Xcode Preview

Xcode Preview 기능은 이번 Xcode 11에 Swift UI와 함께 들어간 기능으로, UI 요소들을 미리 확인해 볼 수 있는 유용한 기능입니다. 이 기능은 Interface Builder 와는 조금 다른 기능으로, Preview Build를 통해 실제로 보여지는 모습을 볼 수 있습니다.

이 Xcode Preview 기능은 Xcode 11 + macOS Catalina 환경에서 사용할 수 있습니다. 많은 분들이 SwiftUI 에서만 가능한 걸로 알고 있었지만, 특정 프로토콜을 구현하면 UIKit 코드에서도 사용해 볼 수 있다고 합니다.

UI from Code

XIB 또는 Storyboard 로 UI 작업을 할때는 단점이 많은데, 몇가지 큰 단점을 꼽아보면

  • 거대하고 알기 힘든 XML
  • 점점 커지는 Storyboard 사이즈
    스토리 보드를 기능별로 분리하는게 최선책입니다.
  • Git 에서 Conflict 나면 답도 없음
    이것도 스토리 보드 분리를 통해 해결해야 합니다.

그렇다고 코드로 UI 작업을 한다고 단점이 없는 것은 아닙니다.

  • 직관적으로 UI 를 잡기가 힘듬
    Xcode Preview 사용하면 좀 나아질 것
  • Constraint 잡기가 어렵다.
    SnapKit 같은 라이브러리를 사용하면 좀 나음
  • UI의 Depth가 많아지면 점점 코드가 복잡해진다.
    개인적인 생각으로는 로직 / 클래스 분리를 통해 해결해야 한다고 봅니다.

Machine Learning

머신러닝은 기존의 롤 베이스 알고리즘으로 해결할 수 없었던 문제들을 해결할 때 유용합니다. iOS에서 사용할 수 있는 프레임워크는 CoreML, TensorFlow Lite, PyTorch 등이 있는데 그 중 CoreML은 Metal 과 같은 프레임워크를 통해 하드웨어 성능을 제대로 낼 수 있습니다.

그러면 모바일 앱에서는 머신러닝이 어떤 문제들을 해결 할 수 있을까요?

  • Image Classification : 물체의 카테고리 판별
  • Object Detection : 위치와 영역 (+ 카테고리)
  • Text Detection / Text Recognition : 텍스트 추출 / 텍스트 인식
  • Depth Prediction
  • Pose Estimation
  • Image Segmentation : 사진 픽셀별 카테고리를 찾아줌
  • Image Style Transfer & Super Resolution

이 외에도 많은 문제들을 해결 할 수 있을 것으로 보여 기존 앱에도 적용해볼 수 있는 곳이 있다면 적용해보고 싶다는 마음이 들었습니다.


좋았던 점 : 신경쓰지 못했던 분야에 대한 접근

이번 컨퍼런스에서는 애니메이션에 대한 세션이 두개나 있었는데, 애니메이션에 대한 부분은 크게 신경쓰지 않는다면 간과되기 쉬운 부분 중 하나입니다.  그러한 부분에 대한 환기가 이루어져서 조금 더 UX에 대한 고려를 할 수 있을 것 같다고 봅니다.

그리고 머신러닝의 경우 활성화된지 얼마 되지 않아 iOS 개발자인 저의 경우 관심을 두지 못했던 분야였습니다. 하지만 머신러닝의 결과물을 앱에서 사용할 수 있다는 기대감을 가질 수 있었던 기회를 얻어 좋았습니다.

아쉬운 점

몇가지 아쉬운 점도 있었습니다. 부디 다음 컨퍼런스에서는 아쉬운 점이 보완되서 더 좋은 컨퍼런스가 열렸으면 좋겠습니다.

티켓 예매 시스템 불안정

이번 Let'Swift 2019 의 티켓 판매는 festa에서 진행되었는데, 서비스의 불안정으로 인해 티켓을 구매하고자 했던 분들이 많은 불편을 겪었습니다. 티켓을 구하지 못하신 분들도 많았구요.

장소의 협소함

컨퍼런스 장소가 AT센터라는걸 듣고 처음에는 엄청 큰 곳에서 하는구나 라고 생각했지만, 생각과는 달리 회의실 세개를 붙인 곳에서 진행되었습니다. 작년보다 컨퍼런스 장소가 협소해지면서 원하는 세션을 듣지 못하는 사람들이 많았습니다.

그리고 기업 부스가 티타임 진행 장소와 겹치면서 기업 부스를 여신 분들도 많은 효과를 받지 못한건 아닐까 하는 걱정도 들었습니다.

끝맺음의 부재

마지막 세션이 종료된 후에 로비에서 서성대고 계신 분들이 많았습니다. 그 중 많은 분들이 행사가 다 끝난건지 아닌지 몰라 헤메고 계셨던 분들이었습니다. 폐회를 위한 잠깐의 시간은 있어야 하지 않았을까 하는 아쉬움이 남습니다.