再実装Flutter UIフレームワークをゼロから自作する

速川 湧気(著)

 /

NextPublishing

作品情報

Widgetを組み合わせるだけでさまざまな画面を作ることができるFlutterですが、なぜそのようなことが可能なのでしょうか。「setState()の魔法」で簡単に画面を書き換えられるのがFlutterですが、なぜそのようなことが可能なのでしょうか?

本書ではFlutterを自身で1から実装し直し、「Flume」という新たなUIフレームワークを作ります。再実装を通じて、UIフレームワークを支える複雑な世界と、Flutterの高速動作を支える差分更新システムの理解を目指します。

Flutter自体はすでに巨大かつ複雑なソフトウェアであり、隅々まで実装するのは困難です。そのためFlumeでは本質的に重要な機能のみをピックアップして説明・実装することにします。
またFlutterのEngineとフレームワークがどのような関係になっているのか、画面をいかに効率的に更新しているのかについて進み、それらを実装していきます。最終的には、自作のフレームワークでsetState()を使った○×ゲームを作ることができるようになります。

機能を絞るため、もちろん実用に足るフレームワークを作ることは叶いません。しかしUIの管理手法というのはFlutterだけでなくWebフレームワークやブラウザ、AndroidやiOSなどのネイティブアプリでも共通して利用されています。まずはシンプルなFlumeの仕様を理解することで、本家Flutterや他のフレームワークのコードを理解する後押しになることを目指しています。


【目次】
第1章 画面の表示とSkiaによる描画
第2章 Skiaで遊ぼう
第3章 TaskRunnerの実装
第4章 Layerツリーの実装と表示
第5章 RenderツリーからLayerツリーの構築
第6章 色々なRenderObject
第7章 Elementツリー・Widgetツリーの構築1
第8章 Elementツリー・Widgetツリーの構築2
第9章 テキストの表示
第10章 runAppとWidgetsFlutterBinding
第11章 Engineの隠蔽と画面の更新タイミング
第12章 Engineのキー入力対応
第13章 markNeedsPaint()
第14章 markNeedsLayout()
第15章 WidgetにGenericsを適用しよう
第16章 Widgetツリーの差分計算1
第17章 Widgetツリーの差分計算2
第18章 StatefulWidgetとStatelessWidgetの実装
第19章 ○×ゲームを作ってみよう
第20章 ポインターイベントの処理
第21章 アニメーションの実装
第22章 InheritedWidgetの実装
第23章 ○×ゲームを進化させよう

もっとみる

商品情報

シリーズ
再実装Flutter
著者
速川 湧気
ジャンル
コンピュータ・情報 - アプリケーション・プログラミング
出版社
インプレス NextPublishing
掲載誌・レーベル
NextPublishing
Reader Store発売日
2023.01.27
ファイルサイズ
14.4MB

以下の製品には非対応です

  • PlayStation®Vita

再実装Flutter UIフレームワークをゼロから自作する

  • 試し読み
  • 新刊通知

    • 速川 湧気

    • 再実装Flutter

    もっとみる

    この作品のレビュー

    平均 0 (0件のレビュー)

    レビューを書く

    0
    0
    0
    0
    0

    新刊自動購入は、今後配信となるシリーズの最新刊を毎号自動的にお届けするサービスです。

    • ・発売と同時にすぐにお手元のデバイスに追加!
    • ・買い逃すことがありません!
    • ・いつでも解約ができるから安心!

    ※新刊自動購入の対象となるコンテンツは、次回配信分からとなります。現在発売中の最新号を含め、既刊の号は含まれません。ご契約はページ右の「新刊自動購入を始める」からお手続きください。

    ※ご契約をいただくと、このシリーズのコンテンツを配信する都度、毎回決済となります。配信されるコンテンツによって発売日・金額が異なる場合があります。ご契約中は自動的に販売を継続します。

    不定期に刊行される「増刊号」「特別号」等も、自動購入の対象に含まれますのでご了承ください。(シリーズ名が異なるものは対象となりません)

    ※再開の見込みの立たない休刊、廃刊、出版社やReader Store側の事由で契約を終了させていただくことがあります。

    ※My Sony IDを削除すると新刊自動購入は解約となります。

    お支払方法:クレジットカードのみ
    解約方法:マイページの「予約・新刊自動購入設定」より、随時解約可能です

    続巻自動購入は、今後配信となるシリーズの最新刊を毎号自動的にお届けするサービスです。

    • ・発売と同時にすぐにお手元のデバイスに追加!
    • ・買い逃すことがありません!
    • ・いつでも解約ができるから安心!
    • ・優待ポイントが2倍になるおトクなキャンペーン実施中!

    ※続巻自動購入の対象となるコンテンツは、次回配信分からとなります。現在発売中の最新巻を含め、既刊の巻は含まれません。ご契約はページ右の「続巻自動購入を始める」からお手続きください。

    ※ご契約をいただくと、このシリーズのコンテンツを配信する都度、毎回決済となります。配信されるコンテンツによって発売日・金額が異なる場合があります。ご契約中は自動的に販売を継続します。

    不定期に刊行される特別号等も自動購入の対象に含まれる場合がありますのでご了承ください。(シリーズ名が異なるものは対象となりません)

    ※再開の見込みの立たない休刊、廃刊、出版社やReader Store側の事由で契約を終了させていただくことがあります。

    ※My Sony IDを削除すると続巻自動購入は解約となります。

    お支払方法:クレジットカードのみ
    解約方法:マイページの「予約自動購入設定」より、随時解約可能です

    Reader Store BOOK GIFT とは

    ご家族、ご友人などに電子書籍をギフトとしてプレゼントすることができる機能です。
    贈りたい本を「プレゼントする」のボタンからご購入頂き、お受け取り用のリンクをメールなどでお知らせするだけでOK!
    ぜひお誕生日のお祝いや、おすすめしたい本をプレゼントしてみてください。

    ※ギフトのお受け取り期限はご購入後6ヶ月となります。お受け取りされないまま期限を過ぎた場合、お受け取りや払い戻しはできませんのでご注意ください。
    ※お受け取りになる方がすでに同じ本をお持ちの場合でも払い戻しはできません。
    ※ギフトのお受け取りにはサインアップ(無料)が必要です。
    ※ご自身の本棚の本を贈ることはできません。
    ※ポイント、クーポンの利用はできません。

    クーポンコード登録

    登録

    Reader Storeをご利用のお客様へ

    ご利用ありがとうございます!

    エラー(エラーコード: )

    本棚に以下の作品が追加されました

    追加された作品は本棚から読むことが出来ます

    本棚を開くには、画面右上にある「本棚」ボタンをクリック

    スマートフォンの場合

    パソコンの場合

    このレビューを不適切なレビューとして報告します。よろしいですか?

    ご協力ありがとうございました
    参考にさせていただきます。

    レビューを削除してもよろしいですか?
    削除すると元に戻すことはできません。