2017年04月16日

「Androidを支える技術T」を読んで その1

 次の書籍を読みました。Androidを支える技術〈T〉

 一言で言うと、大変感動しました(^^)/

 この書籍は、android のGUIを解説したものです。主に以下の内容となります。
  1. タッチとマルチタッチ
  2. UIスレッドとHandler
  3. Viewのツリーとレイアウト
  4. OpenGL ES を用いたグラフィックシステム
  5. バイトコード実行環境
 ですが、もともと想定されているのが専門的な開発者レベルなので、サンデープログラマでしかない私にとっては理解できないところの方が多かった(^_^;)のですが、それでもandroid開発大好きな私としては、感動しまくりでした(^^)/

 以下、感動したところを中心に…というか、それしかできませんので、書いてみますm(__)m

1.見事なまでにチューニングされたViewレイアウトの構築

 これは、「3.Viewのツリーとレイアウト」の部分です。

 私なんか、Android StudioのGUIツールは使わず、手動でLinearLayoutをばりばりに入れ子にしてxmlを作っていく訳ですが、それでもあんなに素早く画面に表示されるのは凄いなぁと思っておりましたが、これを読むと、以下の部分から納得できます。

 イアウトのリソースから動的に生成と聞くとパフォーマンスが気になるところですが、バイナリ形式のリソースからのViewのツリー生成はカリカリにチューンされていて相当速く動きます。

 作成するViewごとに別々のAttributeSetインスタンスを作らず、各Viewの作成時に共通のインスタンスを使いまわすので、不必要に一時的なメモリを確保しません。そのため、不要なGCも防ぐことができます。

 バイナリ形式自体が最初からこのResXMLParserで必要な機能が高速に実装できるように決まっているため、このパースはプログラムからハードコードでViewツリーを生成するのに近いレベルの効率性を実現できています。

 日々androidを構築されている方々って、実にすばらしい(^^)/

 …その2へ続きます。
posted by 【なかま】 at 23:24 | Comment(0) | android
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: