フラッター:始める価値はありますか

画像

ITの新製品の熱心なファンとして、Googleの有望なプラットフォームに関する最初のニュースから、さらにはflutterに関する会議の後、Flutterを試してみることにしました。



私見がありますが、それはあなたに考えを与えますが、無料の労働時間を費やす価値があります。



私が見たかった/試してみた:



  1. ホットリロード
  2. すべてがウィジェットです
  3. クロスプラットフォーム
  4. ここで紹介された美しいアニメーション-Flutter 1.0プレゼンテーション


しかし、すべての新製品には欠陥があります。 これから説明する内容は、構成可能または「特別に行われた」可能性がありますが、これらの点に感銘を受け、iOで簡単に起動できるようにすべてのAndroidプロジェクトを書き直す価値があるかどうかを今すぐ考えて評価しました。 Dartでの書き込みを開始する方法、フラッターを実行するためにインストールするもの、「ホットリロード」を起動する方法がたくさん書かれていました。 ここでは、Android開発の経験と最初の「hello world」の分析に基づいて構築されたIMHOを共有します。



「Hello World」の本質がフラッターから「箱から出して」いることを知らない人のために。



1つのアクティビティは、プラス記号が付いたフローティングボタンで、押されるとカウンターが増加します。



画像



私見番号1。 インターネットアクセス



マニフェストファイルを参照せずにAndroidアプリケーションを作成するには、まったく作成しないでください。

マニフェストを開くと、最初に目を引くのは線です

<uses-permission android:name="android.permission.INTERNET"/>
      
      





(非Androidユーザーの場合、この行はアプリケーションにインターネットへのアクセスを提供します)。



「それはどうですか? なぜ簡単なカウンターがオンラインになるべきなのか?」 情報漏えいの写真、グーグルがみんなをスパイしている様子が頭の中ですぐに広まり、ユーザーが苦情を申し立て始めたとしても...そしてすぐに、例の思いやりのある作者がデバッグに必要であるかのようにコメントしました。心配しないでください。



  <!-- The INTERNET permission is required for development. Specifically, flutter needs it to communicate with the running application to allow setting breakpoints, to provide hot reload, etc. -->
      
      





もちろん、私はまだそのような許可が必要な理由と理由を読んでいますが、定期的なメーターでさえインターネットアクセスを要求するという事実は、最も近い掃除機が私の動きを追跡しているかどうか疑問に思いました(もちろん誇張しますが、私が意味することを理解していると思います)。



私見№2。 テーマ



テーマの色の変更(タイトルバーとフローティングボタンの色の変更)でテストされた実際に動作する「ホットリロード」に喜びを感じ、次の行は「テキストの色の変更」でした。 一般に、この例を解析してから1時間後のテキストの色は濃い灰色のままでした。 これは、アプリケーション内のすべてのウィジェットがデフォルトですでに標準テーマを持っているためです(Androidでは、これはマテリアルデザインです)。 また、テキストの色を変更する場合は、テーマとスタイルを変更してください。 そして、それらが記述されている場合、あなたはまだ見つける必要があります...そして、ここでも、例の思いやりのある作者が起因しています。



元のトピックに登らず、ベースから継承し、スタイルを書き直してください。
  /// Rather than creating a new text theme, consider using [Typography.black] /// or [Typography.white], which implement the typography styles in the /// material design specification: /// /// <https://material.google.com/style/typography.html#typography-styles> /// /// If you do decide to create your own text theme, consider using one of /// those predefined themes as a starting point for [copyWith] or [apply].
      
      







さて、常識として、ネイティブAndroidにはそのようなことがあります。コメントには、これを行う方法の例があります。



  class TitleColorThemeCopy extends StatelessWidget { TitleColorThemeCopy({Key key, this.child, this.titleColor}) : super(key: key); final Color titleColor; final Widget child; @override Widget build(BuildContext context) { final ThemeData theme = Theme.of(context); return Theme( data: theme.copyWith( textTheme: theme.textTheme.copyWith( title: theme.textTheme.title.copyWith( color: titleColor, ), ), ), child: child, ); } }
      
      





...ただ1つのフィールドのテキストの色を変更する必要があります...なぜそんなに書くのですか...



私見番号3。 アプリケーションサイズ



アプリケーションの本質はカウンターであることを思い出させてください。 写真、他の言語への翻訳、さまざまな画面サイズのアカウンティング、データベース、さまざまなデバイスアーキテクチャを考慮したNDKはありません。



電話の設定-アプリケーション-MyFirstFlutterApp-サイズ:40.68 Mb。 (たとえば、Facebookアプリケーションの重量は約53 Mbです)。



さらに、仕事や家事から解放された私の時計は、別のものを見るために終わりました。 しかし、これらのIMHOでさえ、ペットプロジェクトの作成日を少しずらしています。



All Articles