こんにちは、4月からAndroidエンジニアになった@shihochandesuです。
先日、4月25日にDroidKaigiに参加してきたので、忘れないうちにもろもろまとめておきたいと思います。
DroidKaigiについて
日時:2014/04/25(火) 10:00~18:00
場所:場所:東京都渋谷区道玄坂一丁目12番1号 サイバーエージェント本社 13F
”DroidKaigiは、エンジニアが主役のAndroidカンファレンスです。有志によって主催し、Android技術情報の共有とコミュニケーションを目的に開催します。”
上にもあるように開発者のためのカンファレンスでした。
内容がコードや開発に関するものばかりで、ひよっこには難易度高めでしたがとても刺激になるイベントでした。
いくつか印象に残っている公演をまとめたいと思います。
講演まとめ
Activity, Fragment, CustomView の使い分け -マッチョなActivityにさよならする方法- あんざいゆき
資料:http://www.slideshare.net/yanzm/droid-kaigi2015-yanzm
基調講演は、ブログやライブラリでお世話になった、あんざいゆきさん(@yanzm)さんの公演でした。
個人的に肥えてるActivityのリファクタリングに乗り出したところだったのでおもしろかったです。
そもそも飛び入りでAndroidエンジニアになったので、Activity, Fragment, CustomViewの特徴なども深く理解していなかったなあ(´;ω;`)といきなり反省することも多いセッションでした。
以下、資料から抜粋。
マッチョなActivityはなぜダメか
- Activityはテストがしにくい
- いろんな機能がごちゃまぜで存在するため、読みにくくデグレが起こりやすい
Activity, Fragment, CustomViewまとめ
- Activity
- スクリーンに関することを管理
- ActionBar, メニュー, Fragmentの管理, Intentの処理, 画面遷移など
- Fragment
- CustomViewでできないことを実装
- ネットワーク処理, DB,ファイル操作, Loader, メニュー, 画面回転を超えて継続する処理など
- (Custom)View
- パーツとして利用
- 値の前処理,後処理, バリデーション, アニメーション, フォーカス,Selector処理
個人的には理解が深まった講演でした。
後日、Androidエンジニアの共有会で話したんですが、CustomViewをパーツごとに作成して、それぞれのCustomViewにPresenterを作成してクリックイベント等の処理はそこに記述する。ActivityではそのCustomViewをinflateするだけという実装が、自分的には
- viewのパーツ化による再利用性の向上
- クリック処理などのロジックをViewに閉じ込めることができる
などのメリットがあってActivityをスリムにできそうだなと。
まだわかってないことも多いのでダイエットさせながら良い方法を模索しようと思います。
JellyBeanとKitKatで実現するマテリアルデザイン
資料:https://speakerdeck.com/androhi/jellybeantokitkatdeshi-xian-surumateriarudezain
最近、自分が担当アプリにToolbarを導入してそれからすぐのActionBarActivity死亡のお知らせにoh...(@_@)となっていたので、SupportLibrary v22.1の解説は非常にうれしいものでした。
以下、資料から抜粋。
Zaimのバージョンシェア
- Kitkatが圧倒的に多い、次いでJellyBean
- 上記2つで全体の 77% を占める
マテリアルデザインのGOAL
- 良いデザインの原則となるようなビジュアル言語をつくる
- プラットフォームやデバイスサイズ全体で統一された体験を可能にする
まとめ
- Android 4.x系ではSupportLibraryを中心に実装する
- ブランドカラーはきちんと検討・設定する
- GoogleI/Oに注目する
マテリアルデザインは個人的にすきで、自分が携わっているアプリでもlollipop以前のOSのシェアも多いので、SupportLibraryで積極的に導入していこうと思います。