iOSエンジニアがAndroidアプリ開発を勉強するためにやっていること
Android開発の勉強を始めてから2ヶ月ほどが経過した。 これまでにやったことを備忘のために残しておく。
実機を購入
なにはともあれ実機があった方がよい。シミュレータでも開発はできるが、起動に時間がかかり効率が良くない。また普段使いの端末がないとAndroidアプリのあるべき姿、手触り感も分からない。最初にまとまった金額を払うことで、途中で投げ出せないようにする効果も多少はあったように思う。同僚のAndroidエンジニアの意見を参考にしつつHuaweiのP10 Liteを購入した。
自分は格安simのmineoを通話なし3GBで契約していて、ランニングコストは月々1,000円弱。
Huawei 5.2型 P10 lite SIMフリースマートフォン ミッドナイトブラック 【日本正規代理店品】 P10 LITE/WAS-LX2J/MI
- 出版社/メーカー: HUAWEI(ファーウェイ)
- 発売日: 2017/06/09
- メディア: エレクトロニクス
- この商品を含むブログ (2件) を見る
Android Developers
分からないことがあれば公式ドキュメントを読み進めて調べることになる。勉強を初めて間もない頃にハマるような問題はここに正解が書いてある。
Udemyのコースを受講
UdemyのThe Complete Android Kotlin Developer Courseというコースを受講した。Udemyは頻繁にセールを実施しているのでそのタイミングで購入するのが良い。最初に動画で勉強をするのは、費用面でも時間面でもコスパが良いと感じている。順を追ってコードを書きながら説明してくれるので、一人で本を読むより学習しやすい。コードを書きながら受講すれば、本を読んでいるだけではスルーしていた、自分が理解していない部分に気づけたりもする。
ただしこのコースは、講師の英語が自分にとっては聞きづらく、字幕も自動生成なのでけっこう厳しかった。そこは無料で見られる講義をちゃんと確認して、自分に合ったコースを購入するのが良さそう。
The Complete Android Kotlin Developer Course | Udemy
書籍
以下の書籍を読みながら写経した。Android SDKについて学びたかったので、Kotlin/Javaの言語の差異は現時点では気にせずに書籍を選んだ。というかKotlinで書かれた入門書は現時点では存在しないっぽい。来年以降はKotlinを前提とした書籍が出版されるはず。
TECHNICAL MASTER はじめてのAndroidアプリ開発 第2版 Android Studio 2対応
- 作者: 山田祥寛
- 出版社/メーカー: 秀和システム
- 発売日: 2016/12/16
- メディア: 単行本
- この商品を含むブログを見る
またAndroidエンジニアの現場感を知りたくて、以下のような書籍も読んだ。一通りのキーワードをさらっておくことで、断片的だった知識が整理できたように思う。
黒帯エンジニアが教えるプロの技術 Android開発の教科書
- 作者: 筒井俊祐,里山南人,松田承一,笹城戸裕記,毛受崇洋
- 出版社/メーカー: SBクリエイティブ
- 発売日: 2016/06/18
- メディア: Kindle版
- この商品を含むブログを見る
Androidアプリ開発の極意 ~プロ品質を実現するための現場の知恵とテクニック
- 作者: 木田学,おかじゅん,渡辺考裕,荒川祐一郎,小林正興,テックファーム
- 出版社/メーカー: 技術評論社
- 発売日: 2017/03/16
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
コードリーディング、写経
最近はGoogleが公開しているサンプルリポジトリのコードリーディングと写経をしている。Udemyや入門書のコードから、いかにプロダクションレベルのコードを書けるレベルになれるかという課題感を持っているので、非常に参考になる。
これから
まだまだ読みたい本があるし、普通にプロダクションのコードも書いていきたい。来年はDroidKaigiに参加するので、今から面白い話が聞けるんではないかと、非常に楽しみ。
iOSDC 2017に参加した
9/14〜16の3日間、iOSDC 2017に参加してきました。 来年は何か発表できると良いかな。
よかったセッション
参加したセッションは面白いものばかりだったのですが、個人的に特に印象に残っているのは以下のセッションです。 アプリアーキテクチャや具体的な実装についての説明があったセッションと、今課題感を感じているアナリティクスやデータ分析に関するセッション、アニメーションに関するセッションが特に興味深かったです。
Build high performance and maintainable UI library
Building High Performance and Testable UI component // Speaker Deck
RxSwiftのObservableとは何か
RxSwift の Observable とは何か - Qiita
ディープリンクの設計と実装
ディープリンクの 設計と実装 - iOSDC2017 // Speaker Deck
多次元宇宙と画面遷移
触り心地の良いInteractive Transitionをマスターしよう
触り心地の良い Interactive Transitionをマスターしよう - iOSDC 2017 // Speaker Deck
コード生成による静的なDependency Injection
Static Dependency Injection by Code Generation // Speaker Deck
FirebaseとBigQueryによるアプリのKPI分析(CMの効果検証編)
FirebaseとBigQueryによるアプリのKPI分析(CMの効果検証編) // Speaker Deck
サポート効率を上げるログ収集環境の構築
サポート効率を上げるためのロギング環境構築 // Speaker Deck
最後に
参加者のことを細やかに配慮しているのがわかる運営で、3日間大変快適に過ごせました。 スタッフの皆さんありがとうございました!
builderscon tokyo 2017に参加した
8月4, 5日と builderscon に参加してきました。
聞いたセッション
聞いたセッションの中で特に面白かったのは以下の2つでした。
複雑なJavaScriptアプリケーションに立ち向かうためのアーキテクチャ
僕は仕事でここ3年くらいiOSアプリを書いています。このセッションはJavaScriptと銘打ってはいるのですが、iOSの設計にもばっちり適用できるアプリアーキテクチャがテーマでした。実例を交えつつ丁寧に説明してくださって非常に参考になりました。
関連して、以下の発表も大変参考になりました。真似しよう。
#yapc8oji 得票数4位トーク「あの日見たM V WhateverのModelを僕たちはまだ知らない」実況中継 - Re.Ra.Ku tech blog
DeepLearningによるアイドル顔認識を支える技術
データセットを作成するyak shavingの中でRails, React, Dockerなど未経験の技術をキャッチアップされていて、目的を達成するために新しい技術を少しずつ学んでいくのはとても良いと思いました。
所感
buildersconは「知らなかった、を聞く」というテーマで、今回これはだいぶ達成できました。 個人的には自分の活動がインプットに偏っているのを常々感じているので、また勉強会で発表したり、このブログもぼちぼち書いていきたいなと大変刺激を受けました。
最後に
builderscon はセッションが面白かったのはもちろん、無限コーヒーや朝食が大変ありがたく、2日間大変快適に過ごせました。運営の皆さん、ありがとうございました!
RxSwiftのチュートリアルをやった
10月に読んだ本
今月は5冊読みました。
間違いだらけのソフトウェア・アーキテクチャ―非機能要件の開発と評価 (Software Design plus)
- 作者: Tom Engelberg,長谷川裕一,土岐孝平
- 出版社/メーカー: 技術評論社
- 発売日: 2010/08/17
- メディア: 単行本(ソフトカバー)
- 購入: 14人 クリック: 235回
- この商品を含むブログ (19件) を見る
プロフェッショナルのための 実践Heroku入門 プラットフォーム・クラウドを活用したアプリケーション開発と運用 (書籍)
- 作者: 相澤歩,arton,鳥井雪,織田敬子
- 出版社/メーカー: KADOKAWA/アスキー・メディアワークス
- 発売日: 2014/09/19
- メディア: 大型本
- この商品を含むブログ (2件) を見る
個人で書いたRailsアプリをHerokuで動かしたりしていて、Herokuに関する基礎知識が日本語でひとまとまりになっているのはとても有難いです。巻末の付録にあるTwelve-Factor Appについても自分は読んだことがなかったので勉強になりました。Twelve-Factorのプロセスはステートレスかつシェアドナッシングであるべきというのを読んで、HerokuだけではDBの永続化や画像ファイル等の保存ができないことの理屈が分かりました。あと設定は環境変数に格納するとか、常識なのかもしれませんが新たな知見でした。
How Google Works (ハウ・グーグル・ワークス) ―私たちの働き方とマネジメント
- 作者: エリック・シュミット,ジョナサン・ローゼンバーグ,アラン・イーグル,ラリー・ペイジ,土方奈美
- 出版社/メーカー: 日本経済新聞出版社
- 発売日: 2014/10/09
- メディア: 単行本
- この商品を含むブログ (3件) を見る
あと9月にやっていたアンダースタンディング コンピュテーションの写経が途中だったりとかあるので、完走したい。。
8月に読んだ本
モチベーション3.0 持続する「やる気!」をいかに引き出すか
- 作者: ダニエル・ピンク,大前研一
- 出版社/メーカー: 講談社
- 発売日: 2010/07/07
- メディア: ハードカバー
- 購入: 101人 クリック: 5,453回
- この商品を含むブログ (157件) を見る
- 作者: Staffan Noeteberg,渋川よしき,渋川あき
- 出版社/メーカー: アスキー・メディアワークス
- 発売日: 2010/12/16
- メディア: 単行本(ソフトカバー)
- 購入: 13人 クリック: 330回
- この商品を含むブログ (56件) を見る
- 作者: Rubyサポーターズ,すがわらまさのり,寺田玄太郎,三村益隆,近藤宇智朗,橋立友宏,関口亮一
- 出版社/メーカー: 技術評論社
- 発売日: 2013/08/10
- メディア: 大型本
- この商品を含むブログ (16件) を見る
- 作者: Paolo Perrotta,角征典
- 出版社/メーカー: アスキー・メディアワークス
- 発売日: 2010/08/28
- メディア: 大型本
- 購入: 18人 クリック: 533回
- この商品を含むブログ (124件) を見る
今月は5冊読みました。
Ruby勉強し始めて半年くらい経ったのですが、はじめてのRuby → パーフェクトRuby → メタプログラミングRubyっていうのは、Rubyの入門としては理解を深めやすいステップの踏み方だと感じました。途中プロジェクトオイラーをRubyで解いてみたり、Rubyのデザパタ本読んだり、Railsチュートリアルやってみたりとかもしたけど。パーフェクトRubyは著者が日本人だから読みやすいし、コーディングのスタイルがお手本になると感じたので、けっこう写経しました。
モチベーション3.0はエモなかんじで自分はとても好きでした。(小並感)
ポモドーロテクニックは今仕事中やってみてます。余裕がある時はいいけど、忙しくなってくるとけっこうリズムが崩れてくるので、その辺徹底すると能率が上がってきそう。
ドラッカーさんは買った時は立ち読みして良いなって思ったんだけど、今改めて読むとわりと当たり前のことしか書いてなくて、刺激が足りなかったです。
7月に読んだ本
- 作者: ポール・M・デュバル,スティーブ・M・マティアス,アンドリュー・グローバー,大塚庸史,丸山大輔,岡本裕二,亀村圭助
- 出版社/メーカー: 日経BP社
- 発売日: 2009/08/06
- メディア: 単行本
- 購入: 18人 クリック: 388回
- この商品を含むブログ (37件) を見る
さすがに5年前の本なので紹介されているツールは古くなっていますが、原則的な部分でのCIに関する知見が身についた気がします。これの発展的内容で継続的デリバリーにつながるかんじかと。
「納品」をなくせばうまくいく ソフトウェア業界の“常識"を変えるビジネスモデル
- 作者: 倉貫義人
- 出版社/メーカー: 日本実業出版社
- 発売日: 2014/06/12
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (3件) を見る
とても良かった。自分の仕事は価値を生み出せているか?自問自答を続ける日々です。
入門Chef Solo - Infrastructure as Code
- 作者: 伊藤直也
- 出版社/メーカー: 伊藤直也
- 発売日: 2013/03/11
- メディア: Kindle版
- 購入: 16人 クリック: 1,027回
- この商品を含むブログ (18件) を見る
実践したい。冪等性。インフラ as code.
環境をコードに落とし込んで即座に再現可能にするということ。