DevFest Seoul 2018
https://devfest-seoul18.gdg.kr/
11월 10일 토요일에 GDG 커뮤니티에서 주최한 DevFest Seoul 2018 행사를 다녀왔습니다.
구글 기술과 관련된 세션, 해커톤, 코드 랩 등으로 구성된 행사였습니다.
2016년에 이어서 두 번째 참석이었습니다.
(사실 2017년에 행사를 참석했는지 기억이 잘 안 나네요..ㅠ)
https://brunch.co.kr/@oemilk/38
단방향 데이터 구조에 대한 설명과 안드로이드 앱에서의 적용에 대해 발표한 내용이었습니다.
예전에 MVI를 포함한 아키텍처에 관한 글을 썼었는데, 이렇게 다시금 발표를 통해 볼 수 있어서 신기했습니다.
(당시엔 MVVM처럼 MVI도 많은 회자가 될 줄 알았는데, 그간 아무도 다루지 않아서 그냥 묻히는 줄 알았네요.)
프로젝트가 커지고 코드가 복잡해짐에 따라 서로 간의 의존성이 생기고, 이에 따른 여러 문제가 발생하기 쉬운 환경에 노출됩니다.
단방향 데이터 구조는 말 그대로 단방향으로만 데이터를 전달하고 호출하기 때문에, 이러한 문제들을 조금이나마 해소할 수 있는 장점이 있습니다.
발표 내용대로 이러한 아키텍처도 있구나 정도만 알고 있으면 될 거 같습니다.
https://speakerdeck.com/maryang/data-uni-directional-architecture-uda-in-android
말 그대로 함수형 프로그래밍과 이를 기반으로 테스팅을 좀 더 용이하게 할 수 있다는 발표였습니다.
처음 발표 주제만 듣고서는, Rx나 Kotlin을 이용한 함수형 프로그래밍이지 않을까 싶었는데, 정말 순수 함수형 프로그래밍에 대한 내용이었습니다.
(저도 함수형 프로그래밍을 지향하고, 실제로 업무에 적용하고 있습니다.)
안드로이드에서 테스팅을 하고자 할 때 테스팅 범위에 따라 달라지겠지만, 안드로이드 컴포넌트에 대한 의존성을 무시할 순 없습니다.
이를 해결하기 위해 아키텍처나 의존성 주입(DI) 등, 여러 방안을 생각하게 됩니다.
발표 내용처럼 기본적으로 함수형 프로그래밍을 통해 어느 정도 이를 해결할 수 있다고 저도 생각합니다.
개인적으로 이번 행사에서 제일 기대하고 듣고 싶었던 세션이었습니다.
(부산 위주로 Flutter 커뮤니티가 활발한데, 이렇게 서울에서 들을 수 있어서 좋았습니다.)
그간 여러 하이브리드 플랫폼을 지원하는 여러 언어나 도구/기술들이 많이 나왔는데, 구글에서 직접 발표하고 관리하기에 관심이 많았습니다.
Flutter에 대한 소개와 간단한 예제 코드를 보여주는 내용이었습니다.
구글에서 직접 관리하기에 안드로이드는 기본이고, iOS도 머티리얼 디자인을 쉽게 적용할 수 있습니다.
데이터 바인딩과 이를 통한 ViewModel, 그리고 테스팅에 대한 발표 내용이었습니다.
데이터 바인딩에 대한 발표와 자료들은 예전부터 많았는데, 테스팅에 대해서도 다뤘습니다.
이번 행사에서 테스팅에 대한 내용이 두 번이나 나오는데, 실제로 많은 프로젝트에서 테스트 코드를 작성하는지는 잘 모르겠네요.
안드로이드 개발자라면 피할 수 없는 새로운 버전과 이에 대한 대응법에 대한 내용이였습니다.
사내 프로젝트에서 직접 적용했던 내용과 대응책에 대해 들을 수 있어서 좋았습니다.
같은 안드로이드 앱이더라도 다른 카테고리에 속하다 보면 다루는 기술 분야가 다르기 마련인데, 이렇게 발표를 통해 간접적으로나마 듣고 알 수 있었습니다.
다양한 세션뿐만 아니라 여러 후원사에서 주최하는 경품 이벤트?나 홍보 들도 좋았습니다.
이번에는 코드랩도 하고 명상 시간도 했지만 개인적으로 16년에 했던 이력서 클리닉 행사를 다시 볼 수 있기를 바랍니다.