ネイティブのAndroid開発者として働きたかったのですが、Flutter開発者としての仕事に就きました

簡単な紹介

休暇(1月)の後、仕事と勉強を組み合わせるために、Android開発者としてハーフタイムで少し働くことにしました。





12月に、ソチを拠点とするIT企業のチーフプログラマーに会いました。





会社の秘密を守るために会社名を開示することはありませんが、これは重要ではありません。同社は非常に若いため、新しいテクノロジーを使用しています。Java / KotlinではなくFlutter開発者が必要だと言われたとき、私は驚きました。





それが私がFlutterを知るようになった方法です。





第一印象

Flutterで生成されたモバイルアプリプロジェクトを最初に見たとき、私は完全に驚いていました。すべてが通常のネイティブAndroid開発とは完全に異なっていました。





最初に目を引いたのは、まったく別の言語であるダートでした。





私はすぐにこのセクションを研究し始め、Flutterが宣言型のUIを書くフレームワークであることがわかりました。





私はこのスタイルのコーディングを理解したことがありません。過去にReactJSをマスターすることを決心しましたが、それを乗り越えることができず、諦めました(主に愚かさと怠惰のため)。なぜ宣言型プログラミングスタイルなのか?直感的に必要なものがあります。ボタンオブジェクトを作成し、それを親要素に追加するなどです。





Flutterに興味を持ったとき、このアプローチの主な利点に気づき、理解しました。





  • より少ないコード





  • 直感的





  • 開発の加速









. .





, , UI , Android Studio:





Scaffold(    
  appBar: AppBar(    
    title: Text("Counter App"),    
  ),    
  body: Center(child: Column(    
    mainAxisAlignment: MainAxisAlignment.center,    
    children: [
      Text("You have pushed the button this many times: "),
      SizedBox(height: 10),  
      Text("$counter",
           style: Theme.of(context).textTheme.headline4,    
      )
    ],    
  ),),
  floatingActionButton: FloatingActionButton(    
    onPressed: () { setState(() => counter = counter + 1); },
    child: Icon(Icons.add),    
  ),
);
      
      



: , )))





: , - , UI





: . UI .





, Dart : , , UI .





. Flutter , , Java / Kotlin - 100% ( ).





, , : , .





flutter.dev, .





, sqlite Android iOS - sqflite.





, (pub-) pubspec.yaml, build.gradle (Android).





Dart ( Flutter) pub.dev





, Flutter Android iOS, .





C .





Dart. , Dart Tour





, - , UI (, ..). : , ..





Thread' (Java), Coroutines (Kotlin) Android





Flutter , :





fun getArticles() async {
  final response = await http.get("https://xxx.ru/rest/getArticles");
  final List<Article> articles = decodeArticles(response.body);
	setState(() {
    this.articles = articles;
  });
}
      
      



Flutter , setState



.





setState



(Dart ) , .





setState



: , , Flutter . ( , Flutter , , , ).





Flutter - .





: flutter.dev





Flutter .





Flutter - ( ).





Flutter .





provider . .





Google Play Apple Store





Flutter

, Flutter - framework , , React Native .





Flutter.





Flutter :





  • UI framework, . Android , .. View ;





  • - .. Flutter , iOS Android, , :)





  • ,





  • - Flutter , pub-, ). Flutter , Flutter Engage 2021





Flutter:





  • - , Flutter









  • -









この記事は主観的な意見であるため、私はいくつかの点で、そしておそらくすべての点で間違っている可能性があります。





私の主な目標は、Flutterでの謙虚な開発経験を表現し、私の意見といくつかのコメントを共有することでした。





最後に、Flutterには将来の開発に必要なすべての状況があり、まだ成長していない場合でも、クロスプラットフォーム開発の他のアプローチ(React Native)よりも成長する可能性があることに注意してください。





便利なリンク:





  • Android開発者向けのフラッター





  • flutter.dev





  • pub.dev





  • Android、IOS用のSQLiteプラグイン





  • ダートツアー





  • Flutter Engage 2021





  • 状態管理





  • 中のアプリへのリンクGoogleのプレイアップルストア








All Articles