昨日の12月4日、モバイル開発者向けの重要なイベントであるFlutterバージョン1.0のプレゼンテーションが行われました。
この新しいテクノロジーについて聞いたことがない場合は、少し説明する価値があります。
Flutterは、1つのコードベースからiOSおよびAndroidのネイティブアプリケーションを作成するためのGoogleのツールセットです。 つまり、Dartでコードを記述してから、iOS用のアプリケーションとAndroid用のアプリケーションにコンパイルします。 同じコードベースから異なるプラットフォーム向けにコンパイルするというアイデア自体は新しいものではありません。 React Native、Xamarin、PhoneGap ...しかし、これらのOSのネイティブアプリケーションが高速で美しいのと同じくらい、Flutterだけがアプリケーションを高速で美しいものにすることを約束します。 そしておそらくもっと美しい。 少なくとも昨日のプレゼンテーションで示されたものは非常に効果的でした。
このプレゼンテーションで最も気に入った点についてお話しします。
- すべてのアプリの歴史 。
彼らは、アプリケーションがどれだけアニメーション化され、同時に機能するかを示しました。 リストをスクロールするだけでなく、ズームジェスチャを使用してコンテンツ自体を変更することもできます-それは素晴らしかったです。 物語を思い出して、ニュートンに落ちてくるリンゴを見るのは面白いです。 また、アニメーション内で移動する携帯電話内の動作中のGoogleカード(回転および縮小、増加)が拍手を引き起こしました。 この後、設計者が描いたものの具体化に単純に制限はないようです。 - 通常、開発者であるアプリケーションに設計を実装する方法に関するストーリー。
多くの場合、デザイナーが描いたようにすぐにアプリケーションを作成することはできません。 丸みを帯びたエッジ、非標準のコントロール(私も今苦しんでいます-Androidアプリケーションに2つの最小最大スイッチとカスタムスイッチの画像があるようにスライダーを選択できません)。 単純化して、考えます。はい、いつかこのコントロールを書き直して、そのようにします...そして、これはいつかめったに起こりません。 私たちは機能し、納期を守り、何でもする必要があり、ほとんどの場合、詳細に設計を追う時間はありません。 Flutterでは、まず、すべての視覚要素の基礎となるウィジェットシステムの構築方法により、これは起こりません。 そして第二に、デザイナーはプログラマーの仕事の一部を行うことができるからです。 アプリケーションには複雑なアニメーションが必要です-デザイナーがFlareに追加し(このツールも12月4日に発表されました)、プログラマは最小限の労力でそれを使用できます。 - 両方のカメラ、カスタムフォントを使用して、タイマー付きのアプリケーションを作成します。 これらすべてと、10分でコードにどのように、何が書かれているかのストーリーも一緒に。 エキサイティングでした。 たぶん、私はFlutterプログラマーと一緒にTwitchを見始めるかどうかさえ考えました。 そしてもちろん、完全なアプリケーションをゼロから作成する期限は印象的です。平均して3か月です。
そして、真実がリリースに含まれていなかったが、明らかに即時計画と呼ばれていたといういくつかの重要なポイント:
- クロスプラットフォームリストに非モバイルプラットフォームを追加します。 つまり、少なくともMac、Linux、およびWindowsですが、 Raspberry Piとも呼ばれていました。 これがFlutter Desktop Embeddingプロジェクトになります。
- Webサポートを追加します。 つまり、コードは同じですが、ブラウザで開くことができます。 これはハミングバードプロジェクトになります。
- 既存のプロジェクトでフラッターピース(挿入?)を使用する機能を追加します。 これはすでにプロジェクトを持っている人向けですが、Flutterが提供するメリットを活用してプロジェクトを改善したいと思うでしょう。
そして最後に、この会議からの私自身の結論。
Flutterは、モバイルアプリケーションの顧客にとって非常においしいものでした。 アプリケーションを作成する条件は短くなり、設計は最高の状態になり、テストは完全に行われます。
約1年半前に、GoogleはAndroidスタジオのKotlinサポートを追加しました。 今日、ほとんどすべてのAndroid開発者の空きはKotlinについて言及しています。 しかし、空席の要件にあるモバイルアプリケーションのすべての開発者が、1年でFlutterのユーザーインターフェイスを作成および実装する要件を満たした場合はどうでしょうか。