なるようになるかも

力は多くの場合、その人の思いを超えない。

ここ最近読んだ技術書籍感想文。

雑多に読んでます。

リンクは書籍の公式サイトです。

黒帯エンジニアが教えるプロの技術 Android開発の教科書

SBクリエイティブ:黒帯エンジニアが教えるプロの技術 Android開発の教科書 (ヤフー黒帯シリーズ)

幅広いトピックを扱っているのだけれど、それゆえにどこかで読んだ本の内容を簡略化しているだけの章もあったり、開発以外のトピックの割合が多かったり、Andorid 開発の高度な技術トピックを期待すると中途半端かもしれないという感想でした。

同時期により初心者向けと思われる「基本からしっかり身につくAndroidアプリ開発入門 Android Studio 2.x対応」という本も出版されていたので、こちらのトピックでよかったんじゃない?という内容もちらほら。

また、アプリのグロース関連の章については、Firebase の登場で大きく変わった部分が多く、タイミングの悪い感じです。

具体的には、たとえばクラッシュレポートは Firebase Crash Reporting、AB テストは Rule Types and Variables、アプリケーションのプロモーションのチャネルに Firebase Invites が追加され、GCM は FCM になりました。

これらは単に置き換わったのではなく、Firebase プラットフォーム上のサービス間のシナジーが本質で、例えば「バグの対象機種で、最近起動率の減ったユーザーをトピックに、バージョンが上がって改善したことを Push 通知を使ってフォローする」といった面白い使い方ができるのです。

C#実践開発手法~デザインパターンとSOLID原則によるアジャイルなコーディング

ec.nikkeibp.co.jp

Xamarin のために久々に C# やっていて、1年くらい積まれてた本をようやく消化したのですが、今まで読まなかったのを悔やむくらい、適応力の高いコードの書き方について解説している良書でした。

  • 近年に重要になった、「変化に強い」デザインパターンを使ったコードの書き方
  • デザインパターンを支える基礎である、重要なプログラミング原則群の解説
  • 架空のストーリー仕立てで、プロダクトマネージャと開発者がいかに協調し、実際的にアダプティブにコードを作っていくか

という構成になっています。ただし、翻訳は結構眠くなる気がします。

ダンC# 向けの CleanCode という感じの本です。

Javaプログラマーなら習得しておきたい Java SE 8 実践プログラミング

book.impress.co.jp

これからの Android 開発は、Kotlin か Java8 で頑張るかの二択になると思いますが、付け焼き刃の新言語を使うまでもなく Java8 で十分いける気がしてきました。

記述が冗長という欠点については、IntelliJ IDEA の超強力なサジェストがさくさく代筆してくれるので、あまり気にならないです。

この本は、

を読んだ人向けに、Java SE7 と SE8 との diff をざっくり理解するのには良い本です。翻訳者が同じなので。

ただ内容は非常にあっさりとしていて、それを補うためか章末問題が用意されています。この問題は一部が難解というか、この本の内容だけで解けるとは到底思えないものもあるので、かなり苦しむことになります。

しかも解答が載っていないのですが、この章末問題に挑戦している人は国内外にいっぱいいて、解法を GitHub などで共有していたりするので、自分が苦しんで得た解答を他人の解法と照らし合わせて、遥か高みにいるなーとか、またさらに他の人は別のアプローチで解いていて読んで唸らされたり、というのが本当に楽しいです。

そこまでやれば、Java8 実践レベルの知識を得たと自負していいはず。

Android Studio本格活用バイブル~効率的にコーディングするための使い方

gihyo.jp

Android Studio 対応」を謳う入門書は多々ありますが、この本が他の Android Studio 本と一線を画しているのは、Android 開発をやりたい人向けではなく、IntelliJ IDEA での効率的なコーディング方法を知りたい人向けに特化しているということです。

正直、この本のタイトルは詐欺だと思いますが、いい意味で騙されました。

Eclipse ADT から Android Studio へ移行したとき、Darcula テーマのモダンさから「新しいクールな IDE になった」と捉える向きがありました。

この本はそうではなく、IntelliJ IDEA も Eclipse と同じくらい歴史のある古い IDE とみなしています。長い歴史のある IDE はしがらみのためにショートカットに癖があったり、あるやり方をするのに複数の方法があったり、洗練されていない部分もあることを認めつつ、しなしながらその歴史が育んだ効率的なコーディング方法をいかに手に馴染ませるかということを滔々と解説しています。IntelliJ 愛してるなーという感じです。

反面として、レイアウトエディタの詳細な使い方とか、メモリリークの調査方法とかそういう Android 開発をする上で実際的に必要になる使い方については書籍版では触れていないです。Android Studio のコーディングの操作量を上げたいという人に向けた一点突破の本です。

SwiftではじめるUI設計&プログラミング 「操作性」と「デザイン性」を兼ね備えたアプリの開発手法

www.shoeisha.co.jp

この本は、Swift 1.X & iOS8 なので今から読むには微妙だと前置きします。

しかしながら、個人的には、AutoLayout や SizeClass に関する説明は割と分かりやすかった気がします。全編フルカラーで、UI カタログ的な章もありますので、iOS SDK にどういう UI コンポーネントがあるのかまだよく分かっていない人に向けていい本だと思いました。

評判の良いよくわかるAuto Layoutも買ったので読み比べる予定です。