Android
Kotlin
android開発
Jetpack
ktx

[WIP] (Google I/O 2018)Modern Android development: Android Jetpack, Kotlin, and moreの備忘録


はじめに

Modern Android development: Android Jetpack, Kotlin, and more

の簡単な備忘録です。

(※一部動画のキャプチャを引用しております。)

※もし間違いがありましたら、すみませんがご指摘ください。

※編集途中です、きれいにまとめ次第WIPを外します


概要

The last couple of years have seen a plethora of new features and patterns for Android developers. But how do developers know when to use existing APIs and features vs. new ones? This session will help developers understand how they all work together and learn what they should use to build solid, modern Android applications.

[google翻訳]

ここ数年、Android開発者のための新しい機能やパターンが数多く登場しました。しかし、開発者は既存のAPIや機能をいつ新しいものと使うべきかを、どのように知っていますか?このセッションでは、デベロッパーがどのように連携して動作するかを理解し、堅実で現代的なAndroidアプリケーションを構築するために使用する必要があるものについて学びます。


内容

AndroidツールキットチームのHaaseさんとフレームワークチームのGuyさんが登場し、太陽がまぶしいとモダンなAndroidへようこそとあいさつしてくれます。

Androidは誕生から10年、また時代遅れな情報がおおいとのこと。

続けて、Androidの歴史に関して語りました。2008に登場し、2013にandroid studioが登場しました。RecyclerViewやConstraintLayoutなどが続けて登場してきます。

image.png


Layout Inspector

続けて、Viewの構造を可視化できるHierarchy Viewerについて言及しました。現在では

Layout Inspectorのほうがいいらしいです。一度に複数の検査ができます。埋め込みやマージンなど


systrce

コードをプロファイリングするツールに昔はTrace View使われましたが、今はAndroid Studioのプロファイラを使うのがいいとのことです。


Layout Design

XMLをごりごりかかなくても、視覚的なツールでレイアウトをつくることができそう。


ランタイム

Dalvikが昔使われたらしい

後継にARTが使われる

(ちょっとここらへん勉強して、余裕あったら別記事に書きます)

電池とメモリ使用量を意識してコーディングしましょう!


言語

一般的な言語だからjavaが採用されていた(今でもだけど)

去年からkotlinが採用された!!


API


レイアウト

image.png

こんな感じ

(ConstraintLayout の2.0に期待)


AdapterView

ListViewよりRecyclerViewのほうがリッチ!


Fragments

プラットフォーム版を使わない

サポートライブラリもしくはJetpackのを使用すべき


Activities

可能なかぎり単一のActivityを使いましょう


アーキテクチャ

2年前は別にどれでもよかった。

今ではViewModel、LiveDataが推奨される

(Android Architecture Components)

image.png


グラフィクス