  Flutter-
 


     , ,    Flutter-,   -    Android  iOS   Dart.      ,   ,   .        Flutter-.Flutter and the related logo are trademarks of Google LLC. We are not endorsed by or affiliated with Google LLC.





  Flutter-



 



 ,2020



ISBN978-5-0050-8797-3

     Ridero








 2015,   Flutter SDK,     Dart  .        ,     ,   Flutter


.

  蠖        Android iOS Flutter.       Dart    Flutter-.

     ,     ,  ,          Dart.     .  front-end-   蠖       .  ,    ,              ,    front-end-.

   ,    400  75%   .  ,    400        ,     .     :         Flutter  Dart.        material,       Dart. ,     , ,    Flutter- ,      :      .




   


   ,   .  ,        ,         Android iOS.

 ,    ,  , ,         ,  .  .        ࠖ    ,   頖     openweathermap.org.      ,   API KEY  ,  API KEY Google Maps.  ,     Git, Android Studio, Gradle.

  10-,    , 堖  ,  , ,   .         ࠖ https://github.com/acinonyxjubatus/flyflutter_fast_start (https://ridero.ru/link/Pyong3JtGbSm_f) FlyFlutter Fast Start ,       .     ,   ,     .     ,      .

 1.  Flutter [ lesson_1_hello_world]

   Flutter  Android iOS,     .  ,      Flutter     .

 2.  Dart

     Dart

 3. StatelessWidget StatefulWidget [ lesson_3_1_stateless_widget, lesson_3_1_stateful_widget]

  Stateless StatefulWidget-.    ,   .  ,    .

 4.    [ lesson_4_listivew]

 ListView,      .        .

 5.    [ lesson_5_http]

      Flutter.   , ,     .  ,   - .

 6. Inherited Widgets, Elements, Keys [ lesson_6_inherited]

,   Inherited Widget,      .  ,   Element-   .  ,    Keys      .

 7.   ,  Google Maps [ lesson_7_navigation_maps]

    Navigator-.     Google Maps ,       timezone.



 8. SQLite, Clean Architecture [ lesson_8_sqlite_clean_architecture]

  SQLite     ,   . ,  Flutter           Repository.

 9. BLoC, Streams [ lesson_9_bloc, lesson_9_1_counter_bloc]

,   BLoC,       bloc.    :      ,    䠖   .

 10. DI,  [ lesson_10_di_tests, lesson_9_1_counter_bloc]

     Flutter .     Dependency Injection Flutter   .  ,   .  unit-, widget (UI-)     .




1.  Flutter


  :

  

 Flutter?

  

 Hello World Android

 Hello World iOS





  


    ,   Flutter    .     ,     Flutter,    3 :   .

 ,        2 iOS Apple Google Android. ,            .   , , 13  .  5,  7,   .

  5 ,  ,     .   10 .    24 ,  , 24 24 .       , ,    10 5. ,  5 ,             .  ,      ,       . ,   .     ,  ,        .   . ,     Flutter.




 Flutter?


  ,    -  Flutter,   :     ,  -    ?             .

  ,   Flutter   .  ,    ,               . ,     Angry Birds, , , -.     ,     ,        .     ,       ,   Bluetooth, , .  , ,  Flutter    .  ,          / .

Ѡ ,   ,       ,      - /  ,      UI -.       ,     , -,   ,      -.

,        Flutter,  framework     .




  


,   ,      Flutter,     !

   Flutter SDK.   SDK   (https://ridero.ru/link/F2EsjzLUqg7UoZ) (https://flutter.dev/docs/get-started/install (https://ridero.ru/link/F2EsjzLUqg7UoZ)).    (Windows, Mac, Linux)  .

    PATH Flutter/bin

export PATH=$PATH:`pwd`/flutter/bin //Ma

    .

     

flutter doctor

,     .

     iOS,     Xcode    brew,    flutter doctor,     macos (https://ridero.ru/link/Iz9OlOANd_FMt8)https://flutter.dev/docs/get-started/install/macos) (https://ridero.ru/link/4SNl-RstVZHtZs)






  flutter doctor 



   Android-,   Android Studio.    Android Studio,   (https://ridero.ru/link/4VTK6KAsRfoGnB)  (https://developer.android.com/studio/install (https://ridero.ru/link/4VTK6KAsRfoGnB)),  .




 Hello World! Android


,     Flutter.        Android Studio, XCode  VS Code   .     Android Studio.

 Android Studio  Start anew Flutter project.






   



 Flutter Application

  flutter_hello_world  ProjectName

company domain flyflutter.ru  Finish.



       main. dart  젖  

		void main () => runApp (MyApp());

   .  main ()       Dart.        MyApp,   StatelessWidget   UI ࠖ .    Dart    ,   .

,     , ࠖ .






 main. dart    



   Android iOS    lib.      main.dart

Android Studio     ,    ,    ,    








  蠖 Hot Reload   .








 ,  Hot Reload Flutter       .



,     , !.






, ! 



  .    , MyApp  StatelessWidget,   UI -. ,  Flutter  ,  .      build,  ,   .

      MaterialApp,    .   ,   home,   Scaffold  ,     appBar body.    HTML,     <title> <body>.



     :








 Scaffold    ,    ,     .






, ! 



 Flutter ,        (UI)    ,  -ࠖ dart.       xml .




 Hello World iOS


   !     iOS-.      iOS-   dropdown-  .






 iOS






, ! iOS



  ,       debug,     . .

 ,    debug,  MaterialApp  debugShowCheckedModeBanner  false

		return MaterialApp (
		debugShowCheckedModeBanner: false,

  ,   pubspec. yaml 

		dev_dependencies:
		flutter_launcher_icons: ^0.7.4

          .      assets ,    

		flutter_icons:
		android: launcher_icon
		ios:true
		image_path: assets/icons/flyflutter_ic_512.webp

  flutter,    assets

		flutter:

		uses-material-design:true
		assets:
		assets/
		assets/icons/

       

		flutter pubget
		flutter pub run flutter_launcher_icons:main

   ( ) :

 Android   android/app/src/main/AndroidManifest. xml   application 

		android: label=FlyFlutter

 iOS   Info.plist  ios>runner/Info.plist     CFBundleName

		<key> CFBundleName </key>
		<string> FlyFlutter </string>

.    .




2.  Dart


  :

,   







 (mixin)

Callable 



 



 










  Flutter   Dart.     . Dart   -       .   Google.   C, Javascript, C#, Java.     Java C#  garbage collector.   ,  (. Mixin),  ,   .

Dart    2011    (Lars Bark)   (Kasper Lund).   1.0 2013,  2.02018



:       Dart 2


  Dart,  C Java,     main()








 ,     Dart  ,     main:









,   


Dart  .        ,      (runtime) .    ,    . ,     :










:  Dart 2  new  








,      .    Java-  ,  private, protected public Dart.

     [_]  ,       ,   .







  Dart    Object.   Object Java.      hasCode ()  equals,    ==

  Object   toString()

  :

 (num   int double)

 (strings)

 (Booleans)

,   (list)

 (set)

 (map)

 (for expressing Unicode characters inastring)

 (symbols)



int  .   Dart   -2


2


1



:   JavaScript  int-a -2


2


1


double 64-   

Ƞint double  num



String

  Dart    UTF-16.      ,   :








       $ {}








bool

    Dart    bool.      true false.  ,  bool b = 0; , 








List

蠖    .    :








  Dart 2.3   堖       :








Sets

     .  Dart  ,   ,               :








Maps

     -. ,  ,     .    ,    ,  .  :








  








Runes

Dart    . ,    .   dartpad (https://dartpad.dartlang.org/)









final const


      final const.

   ,      final     var.      .  const   final.        .







 Dart    .  ,          .       .   ,  :








      ,     :








 => -     return.



 



         . ,    -      ,     .   ,       ( )  .

 Dart     :  .   .




  .


   .

   ,     (https://www.litres.ru/book/andrey-aleev/bystryy-start-flutter-razrabotchika-48781701/chitat-onlayn/)  .

      Visa, MasterCard, Maestro,    ,   ,     ,  PayPal, WebMoney, ., QIWI ,       .


