본문
2019 Google I/O extended in KOREA
도입
이번 포스팅에서는 오늘 다녀온 2019 Google I/O extend in KOREA에 대해 포스팅할 예정이다.
아침에 기타 연습하고 삼성역으로 향했다. 아점 먹고 출발해서 조금 늦었다..
스케쥴
이번에는 코드랩 위주로 많이 들었다. 구글에서 코드랩이라는 공식 사이트를 통해 예제와 학습 로드맵을 제공해 준다. 그래서 혼자서도 할 수 있지만
1. 막상 혼자 진행하면 막히는 부분
2. 기능들 만들어진 히스토리나 정확한 쓰임을 알지 못하고
진행하는 경우가 있었다.
이러한 부족한 점이 있었는데 함께 진행하며 채울 수 있어서 좋았다.
재미있었던 세션
우선, 컨퍼런스에서 코드랩은 처음 참여해봤는데 참 유용했다. 왜냐하면 해당 기능이 나온 배경, 기능의 쓰임에 대해 명확하게 알 수 있어 좋았다. 시간은 짦아서 혼자 정리하는 시간이 꼭 필요하다고 생각된다.
1. MotionLayout
MotionLayout 이전에도 View의 요소들에게 애니메이션을 적용할 수 있었다. 하지만 애니메이션을 위한 이벤트(클릭, 스와이프 등) 등은 코드 레벨에서 처리해야했다. 그래서 애니메이션 설정을 확인하기 위해서는 XML과 코드를 모두 확인해야했다.
-> MotionLayout를 적용하므로 XML에서 위의 설정들을 처리하므로 개발자의 컨텍스트 스위칭 요소를 제거했다.
함께 실습하면서 요소들의 쓰임들과 궁금한 점도 물어볼 수 있어서 좋았다. 추후 MotionLayout에 대해 정리해야겠다.
2. Jetpack Navigation
안드로이드에서 화면 이동은 intent(액티비티), transaction(프레그먼트)로 진행된다.
화면이 많아질 수록 개발자는 관리 복잡도는 증가한다. (back-stack, deep linking, bottom navigation 환경 등)
이렇한 관리 복잡도를 단순화시키기 위한 idea에서 navigation은 출발했다.
요소는 간단히 아래와 같다.
Navigation Graph: 화면의 이동 시각적으로 확인 및 deep linking 등을 설정
Navigation Controller: Navigation 내의 화면의 위치를 추적하고 원하는 화면으로 이동하는 등의 컨트롤러
NaviHostFragment: 화면들이 담겨 있는 container
이외에도 머티리얼 디자인을 적용하기 위한 AppBarConfiguration, setUpWithNaviController 등이 있다.
실습하면서 의문이 들었고 질문하고 함께 이야기를 나눠보았다.
- 새로운 프로젝트가 아닌 현재 출시된 프로젝트에도 적용할 수 있을까?
A. 출시된 프로젝트에 적용하기에는 큰 어려울 것다. 적용하므로 큰 benefit이 없을 것 같다는 생각이다.
- 새로운 프로젝트에 적용한다면 협업하는 개발자는 어떻게 설득해야할까?, 다른 개발자들은 더 편해할까?
A. 설득 측면은 사실 나의 문제가 될 것 같고, 다른 개발자들의 반응은 이미 적용하신 개발자 분의 이야기에 따르면 더 편리해한다고 하신다.
(intent을 만들거나 fragment를 transaction 하는 등이 신경 쓸 필요 없다. Controller가 내부적으로 해주기 때문에)
추후 Navigation에 정리해야겠다.
사진들
잘하고 싶다...!
#google io #gdg korea #google extend
'리뷰 > IT 컨퍼런스' 카테고리의 다른 글
애플 출시 컨퍼런스 (with 아이폰 11) (0) | 2019.09.11 |
---|---|
LINE Developers Meetup #3 (0) | 2019.07.04 |
GDG Android at Pangyo (0) | 2019.05.01 |
2019 Kotlin Night Seoul (0) | 2019.04.09 |
2019 DROID KNIGHTS (0) | 2019.04.06 |
댓글 0