SlideShare a Scribd company logo
1 of 20
Download to read offline
Introduction to
App Development in
Flutter
using
Android Studio
By
Dr. Khulood AlKhateeb
Background
• Flutter is created and supported by Google
• Dart is similar to Swift, C#, Java, JS
• Dart combined with Flutter to make mobile apps.
• Other options
• React Native (not enough support)
• Flutter vs. React Native
Is it worth it?
• The decision to venture into Flutter and Dart
• Learning a whole new language
• The possibilities
Where you at
• Android Studio 4.0 or higher installed
• Flutter SDK and dart plugins downloaded and installed
• Setup an Android Emulator
• Did a test drive to make sure all is running properly
https://flutter.dev/docs/get-started/install
Where you will be
1. Exploring the Android Studio IDE
2. Exploring main elements of a Flutter app.
3. Create simple GUI form with:
a) text,
b) input fields, and
c) buttons.
includes styling and changes to properties
4. Understanding event handling (clicks)
5. Navigating through multiple screens
6. Using the console for debugging purposes
7. Testing in the emulator
Exploring the Android Studio IDE
• points
Hello World!
• In keeping with traditions ☺
Code sample can be found in Udacity.com
App Bar
Body
Create simple GUI form
• Draw your design first.
• Then start implementing
ListTile Widget
Leading Title
Subtitle
Trailing
Source: https://www.youtube.com/watch?v=l8dj0yPBvgQ&vl=en
Padding vs Margins
Source: https://www.pluralsight.com/blog/creative-professional/whats-difference-margin-padding
Understanding event handling
• Click -> something happens
• Debugging using console
Navigation
• Navigating to another screen
Testing in the emulator
• Hot reload!
End Results
Documentations for Widgets used
• MaterialApp: https://api.flutter.dev/flutter/material/MaterialApp-class.html
• Scaffold: https://api.flutter.dev/flutter/material/Scaffold-class.html
• Container: https://api.flutter.dev/flutter/widgets/Container-class.html
• Center: https://api.flutter.dev/flutter/widgets/Center-class.html
• Text: https://api.flutter.dev/flutter/widgets/Text-class.html
• TextField: https://api.flutter.dev/flutter/material/TextField-class.html
• ListTile: https://api.flutter.dev/flutter/material/ListTile-class.html
• Icon: https://api.flutter.dev/flutter/widgets/Icon-class.html
• RaisedButton: https://api.flutter.dev/flutter/material/RaisedButton-class.html
• Image.asset: https://api.flutter.dev/flutter/widgets/Image/Image.asset.html
• Column: https://api.flutter.dev/flutter/widgets/Column-class.html
• Navigator: https://api.flutter.dev/flutter/widgets/Navigator-class.html
• Extra: Creating Widget from scratch:
https://www.youtube.com/watch?time_continue=4&v=W1pNjxmNHNQ&feature=emb_logo
Cool Short Cuts
• Alt + Enter : popup menu for wrapping widgets
• Ctrl + Space : options and Auto-complete
• Ctrl + Alt + L : reformat the code with correct indentations
iOS developer?
• Use Cupertino package:
• https://flutter.dev/docs/get-started/flutter-for/ios-devs
References
• https://flutter.dev/
• https://dart.dev/
• http://thetechnocafe.com/just-enough-dart-for-flutter-tutorial-01-
variables-types-and-functions/
• https://flutter.dev/docs/development/ui/widgets/material
• https://api.flutter.dev/flutter/material/ListTile-class.html
What’s Next!
• Join us for other workshops where we learn:
• Using firebase with flutter
• Online Store Demo!
• Would like more info?
• follow @pinkeeta.tech
• Or email pinkeeta.tech@gmail.com
• Subscribe to @pinkeeta.tech
Thank you
Please evaluate the workshop
and help us do better

More Related Content

What's hot

All a flutter about Flutter.io
All a flutter about Flutter.ioAll a flutter about Flutter.io
All a flutter about Flutter.ioSteven Cooper
 
Developing cross platform apps in Flutter (Android, iOS, and Web)
Developing cross platform apps in Flutter (Android, iOS, and Web)Developing cross platform apps in Flutter (Android, iOS, and Web)
Developing cross platform apps in Flutter (Android, iOS, and Web)Priyanka Tyagi
 
Introduction to Android Studio
Introduction to Android StudioIntroduction to Android Studio
Introduction to Android StudioMichael Pan
 
Building your Own Mobile Enterprise Application: It’s Not as Hard as You Migh...
Building your Own Mobile Enterprise Application: It’s Not as Hard as You Migh...Building your Own Mobile Enterprise Application: It’s Not as Hard as You Migh...
Building your Own Mobile Enterprise Application: It’s Not as Hard as You Migh...Jason Conger
 
Cross-Platform App Development with Flutter, Xamarin, React Native
Cross-Platform App Development with Flutter, Xamarin, React NativeCross-Platform App Development with Flutter, Xamarin, React Native
Cross-Platform App Development with Flutter, Xamarin, React NativeKorhan Bircan
 
Intro to Flutter SDK
Intro to Flutter SDKIntro to Flutter SDK
Intro to Flutter SDKdigitaljoni
 
Comparison between Eclipse and Android Studio for Android Development
Comparison between Eclipse and Android Studio for Android DevelopmentComparison between Eclipse and Android Studio for Android Development
Comparison between Eclipse and Android Studio for Android DevelopmentWillow Cheng
 
Flutter workshop @ bang saen 2020
Flutter workshop @ bang saen 2020Flutter workshop @ bang saen 2020
Flutter workshop @ bang saen 2020Anuchit Chalothorn
 
Project a day 2 introduction to android studio
Project a day 2   introduction to android studioProject a day 2   introduction to android studio
Project a day 2 introduction to android studioGoran Djonovic
 
Introduction_to_android_and_android_studio
Introduction_to_android_and_android_studioIntroduction_to_android_and_android_studio
Introduction_to_android_and_android_studioAbdul Basit
 
New to android studio
New to android studioNew to android studio
New to android studioEngine Bai
 
Flutter festival - Write your first Flutter application
Flutter festival - Write your first Flutter applicationFlutter festival - Write your first Flutter application
Flutter festival - Write your first Flutter applicationApoorv Pandey
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to androidKalpesh Patel
 
Exploring Android Studio
Exploring Android StudioExploring Android Studio
Exploring Android StudioAkshay Chordiya
 
Flutter for web
Flutter for web Flutter for web
Flutter for web rihannakedy
 
Flutter not yet another mobile cross-platform framework - i ox-kl19
Flutter   not yet another mobile cross-platform framework - i ox-kl19Flutter   not yet another mobile cross-platform framework - i ox-kl19
Flutter not yet another mobile cross-platform framework - i ox-kl19oradoe
 

What's hot (20)

All a flutter about Flutter.io
All a flutter about Flutter.ioAll a flutter about Flutter.io
All a flutter about Flutter.io
 
Developing cross platform apps in Flutter (Android, iOS, and Web)
Developing cross platform apps in Flutter (Android, iOS, and Web)Developing cross platform apps in Flutter (Android, iOS, and Web)
Developing cross platform apps in Flutter (Android, iOS, and Web)
 
UI Automation Using Flutter
UI Automation Using FlutterUI Automation Using Flutter
UI Automation Using Flutter
 
Introduction to Android Studio
Introduction to Android StudioIntroduction to Android Studio
Introduction to Android Studio
 
Building your Own Mobile Enterprise Application: It’s Not as Hard as You Migh...
Building your Own Mobile Enterprise Application: It’s Not as Hard as You Migh...Building your Own Mobile Enterprise Application: It’s Not as Hard as You Migh...
Building your Own Mobile Enterprise Application: It’s Not as Hard as You Migh...
 
Cross-Platform App Development with Flutter, Xamarin, React Native
Cross-Platform App Development with Flutter, Xamarin, React NativeCross-Platform App Development with Flutter, Xamarin, React Native
Cross-Platform App Development with Flutter, Xamarin, React Native
 
Android studio
Android studioAndroid studio
Android studio
 
Intro to Flutter SDK
Intro to Flutter SDKIntro to Flutter SDK
Intro to Flutter SDK
 
Comparison between Eclipse and Android Studio for Android Development
Comparison between Eclipse and Android Studio for Android DevelopmentComparison between Eclipse and Android Studio for Android Development
Comparison between Eclipse and Android Studio for Android Development
 
Flutter workshop @ bang saen 2020
Flutter workshop @ bang saen 2020Flutter workshop @ bang saen 2020
Flutter workshop @ bang saen 2020
 
Android Studio vs. ADT
Android Studio vs. ADTAndroid Studio vs. ADT
Android Studio vs. ADT
 
Project a day 2 introduction to android studio
Project a day 2   introduction to android studioProject a day 2   introduction to android studio
Project a day 2 introduction to android studio
 
Flutter
FlutterFlutter
Flutter
 
Introduction_to_android_and_android_studio
Introduction_to_android_and_android_studioIntroduction_to_android_and_android_studio
Introduction_to_android_and_android_studio
 
New to android studio
New to android studioNew to android studio
New to android studio
 
Flutter festival - Write your first Flutter application
Flutter festival - Write your first Flutter applicationFlutter festival - Write your first Flutter application
Flutter festival - Write your first Flutter application
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
Exploring Android Studio
Exploring Android StudioExploring Android Studio
Exploring Android Studio
 
Flutter for web
Flutter for web Flutter for web
Flutter for web
 
Flutter not yet another mobile cross-platform framework - i ox-kl19
Flutter   not yet another mobile cross-platform framework - i ox-kl19Flutter   not yet another mobile cross-platform framework - i ox-kl19
Flutter not yet another mobile cross-platform framework - i ox-kl19
 

Similar to #Code2Create:: Introduction to App Development in Flutter with Dart

Developing Cross platform apps in flutter (Android, iOS, Web)
Developing Cross platform apps in flutter (Android, iOS, Web)Developing Cross platform apps in flutter (Android, iOS, Web)
Developing Cross platform apps in flutter (Android, iOS, Web)Priyanka Tyagi
 
Whats New in Android
Whats New in AndroidWhats New in Android
Whats New in Androiddonnfelker
 
Android development workshop
Android development workshopAndroid development workshop
Android development workshopJeff Sonstein
 
Building Cross-Platform Mobile Apps
Building Cross-Platform Mobile AppsBuilding Cross-Platform Mobile Apps
Building Cross-Platform Mobile AppsTroy Miles
 
Adopting Flutter in Native Mobile Applications
Adopting Flutter in Native Mobile ApplicationsAdopting Flutter in Native Mobile Applications
Adopting Flutter in Native Mobile ApplicationsAlexandru Terente
 
flutter_bootcamp_MUGDSC_Presentation.pptx
flutter_bootcamp_MUGDSC_Presentation.pptxflutter_bootcamp_MUGDSC_Presentation.pptx
flutter_bootcamp_MUGDSC_Presentation.pptxRakshaAgrawal21
 
Shifting landscape of mobile automation, and the future of Appium - Jonathan ...
Shifting landscape of mobile automation, and the future of Appium - Jonathan ...Shifting landscape of mobile automation, and the future of Appium - Jonathan ...
Shifting landscape of mobile automation, and the future of Appium - Jonathan ...Applitools
 
Android Scripting
Android ScriptingAndroid Scripting
Android ScriptingJuan Gomez
 
The magic of flutter
The magic of flutterThe magic of flutter
The magic of flutterShady Selim
 
Cross Platform Mobile App Development
Cross Platform Mobile App DevelopmentCross Platform Mobile App Development
Cross Platform Mobile App DevelopmentAnnmarie Lanesey
 
iOS Application Security
iOS Application SecurityiOS Application Security
iOS Application SecurityEgor Tolstoy
 
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)Ryan Cuprak
 
Angular mobile angular_u
Angular mobile angular_uAngular mobile angular_u
Angular mobile angular_uDoris Chen
 
flutter Course
flutter Courseflutter Course
flutter CourseSMEClabs
 
Flutter festival gdsc juet guna
Flutter festival   gdsc juet gunaFlutter festival   gdsc juet guna
Flutter festival gdsc juet gunaSachinVerma869778
 
Cross-platform Mobile Development on Open Source
Cross-platform Mobile Development on Open SourceCross-platform Mobile Development on Open Source
Cross-platform Mobile Development on Open SourceAll Things Open
 
NCDevCon 2017 - Cross Platform Mobile Apps
NCDevCon 2017 - Cross Platform Mobile AppsNCDevCon 2017 - Cross Platform Mobile Apps
NCDevCon 2017 - Cross Platform Mobile AppsJohn M. Wargo
 
GoogleDSC_ GHRCE_ flutter_firebase.pptx
GoogleDSC_ GHRCE_  flutter_firebase.pptxGoogleDSC_ GHRCE_  flutter_firebase.pptx
GoogleDSC_ GHRCE_ flutter_firebase.pptxGoogleDeveloperStude22
 

Similar to #Code2Create:: Introduction to App Development in Flutter with Dart (20)

Developing Cross platform apps in flutter (Android, iOS, Web)
Developing Cross platform apps in flutter (Android, iOS, Web)Developing Cross platform apps in flutter (Android, iOS, Web)
Developing Cross platform apps in flutter (Android, iOS, Web)
 
Whats New in Android
Whats New in AndroidWhats New in Android
Whats New in Android
 
Android development workshop
Android development workshopAndroid development workshop
Android development workshop
 
Building Cross-Platform Mobile Apps
Building Cross-Platform Mobile AppsBuilding Cross-Platform Mobile Apps
Building Cross-Platform Mobile Apps
 
Adopting Flutter in Native Mobile Applications
Adopting Flutter in Native Mobile ApplicationsAdopting Flutter in Native Mobile Applications
Adopting Flutter in Native Mobile Applications
 
flutterbootcamp
flutterbootcampflutterbootcamp
flutterbootcamp
 
flutter_bootcamp_MUGDSC_Presentation.pptx
flutter_bootcamp_MUGDSC_Presentation.pptxflutter_bootcamp_MUGDSC_Presentation.pptx
flutter_bootcamp_MUGDSC_Presentation.pptx
 
Shifting landscape of mobile automation, and the future of Appium - Jonathan ...
Shifting landscape of mobile automation, and the future of Appium - Jonathan ...Shifting landscape of mobile automation, and the future of Appium - Jonathan ...
Shifting landscape of mobile automation, and the future of Appium - Jonathan ...
 
Android Scripting
Android ScriptingAndroid Scripting
Android Scripting
 
The magic of flutter
The magic of flutterThe magic of flutter
The magic of flutter
 
Cross Platform Mobile App Development
Cross Platform Mobile App DevelopmentCross Platform Mobile App Development
Cross Platform Mobile App Development
 
iOS Application Security
iOS Application SecurityiOS Application Security
iOS Application Security
 
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
 
Angular mobile angular_u
Angular mobile angular_uAngular mobile angular_u
Angular mobile angular_u
 
flutter Course
flutter Courseflutter Course
flutter Course
 
Flutter festival gdsc juet guna
Flutter festival   gdsc juet gunaFlutter festival   gdsc juet guna
Flutter festival gdsc juet guna
 
Cross-platform Mobile Development on Open Source
Cross-platform Mobile Development on Open SourceCross-platform Mobile Development on Open Source
Cross-platform Mobile Development on Open Source
 
Introduction to jQueryMobile
Introduction to jQueryMobileIntroduction to jQueryMobile
Introduction to jQueryMobile
 
NCDevCon 2017 - Cross Platform Mobile Apps
NCDevCon 2017 - Cross Platform Mobile AppsNCDevCon 2017 - Cross Platform Mobile Apps
NCDevCon 2017 - Cross Platform Mobile Apps
 
GoogleDSC_ GHRCE_ flutter_firebase.pptx
GoogleDSC_ GHRCE_  flutter_firebase.pptxGoogleDSC_ GHRCE_  flutter_firebase.pptx
GoogleDSC_ GHRCE_ flutter_firebase.pptx
 

More from GDGKuwaitGoogleDevel

معسكر أساسيات البرمجة في لغة بايثون.pdf
معسكر أساسيات البرمجة في لغة بايثون.pdfمعسكر أساسيات البرمجة في لغة بايثون.pdf
معسكر أساسيات البرمجة في لغة بايثون.pdfGDGKuwaitGoogleDevel
 
i/o extended: Intro to <UX> Design
i/o extended: Intro to <UX> Design  i/o extended: Intro to <UX> Design
i/o extended: Intro to <UX> Design GDGKuwaitGoogleDevel
 
Building arcade game using python workshop
 Building arcade game using python workshop Building arcade game using python workshop
Building arcade game using python workshopGDGKuwaitGoogleDevel
 
Wordpress website development workshop by Seham Abdlnaeem
Wordpress website development workshop by Seham AbdlnaeemWordpress website development workshop by Seham Abdlnaeem
Wordpress website development workshop by Seham AbdlnaeemGDGKuwaitGoogleDevel
 
WTM/IWD 202: Introduction to digital accessibility by Dr. Zainab AlMeraj
WTM/IWD 202: Introduction to digital accessibility by Dr. Zainab AlMerajWTM/IWD 202: Introduction to digital accessibility by Dr. Zainab AlMeraj
WTM/IWD 202: Introduction to digital accessibility by Dr. Zainab AlMerajGDGKuwaitGoogleDevel
 
GDG Kuwait - Modern android development
GDG Kuwait - Modern android developmentGDG Kuwait - Modern android development
GDG Kuwait - Modern android developmentGDGKuwaitGoogleDevel
 
DevFest Kuwait 2020 - Building (Progressive) Web Apps
DevFest Kuwait 2020 - Building (Progressive) Web AppsDevFest Kuwait 2020 - Building (Progressive) Web Apps
DevFest Kuwait 2020 - Building (Progressive) Web AppsGDGKuwaitGoogleDevel
 
DevFest Kuwait 2020- Cloud Study Jam: Kubernetes on Google Cloud
DevFest Kuwait 2020- Cloud Study Jam: Kubernetes on Google CloudDevFest Kuwait 2020- Cloud Study Jam: Kubernetes on Google Cloud
DevFest Kuwait 2020- Cloud Study Jam: Kubernetes on Google CloudGDGKuwaitGoogleDevel
 

More from GDGKuwaitGoogleDevel (11)

معسكر أساسيات البرمجة في لغة بايثون.pdf
معسكر أساسيات البرمجة في لغة بايثون.pdfمعسكر أساسيات البرمجة في لغة بايثون.pdf
معسكر أساسيات البرمجة في لغة بايثون.pdf
 
#Code2 create c++ for beginners
#Code2 create  c++ for beginners #Code2 create  c++ for beginners
#Code2 create c++ for beginners
 
i/o extended: Intro to <UX> Design
i/o extended: Intro to <UX> Design  i/o extended: Intro to <UX> Design
i/o extended: Intro to <UX> Design
 
#Code2Create: Python Basics
#Code2Create: Python Basics#Code2Create: Python Basics
#Code2Create: Python Basics
 
Building arcade game using python workshop
 Building arcade game using python workshop Building arcade game using python workshop
Building arcade game using python workshop
 
Wordpress website development workshop by Seham Abdlnaeem
Wordpress website development workshop by Seham AbdlnaeemWordpress website development workshop by Seham Abdlnaeem
Wordpress website development workshop by Seham Abdlnaeem
 
WTM/IWD 202: Introduction to digital accessibility by Dr. Zainab AlMeraj
WTM/IWD 202: Introduction to digital accessibility by Dr. Zainab AlMerajWTM/IWD 202: Introduction to digital accessibility by Dr. Zainab AlMeraj
WTM/IWD 202: Introduction to digital accessibility by Dr. Zainab AlMeraj
 
GDG Kuwait - Modern android development
GDG Kuwait - Modern android developmentGDG Kuwait - Modern android development
GDG Kuwait - Modern android development
 
DevFest Kuwait 2020 - Building (Progressive) Web Apps
DevFest Kuwait 2020 - Building (Progressive) Web AppsDevFest Kuwait 2020 - Building (Progressive) Web Apps
DevFest Kuwait 2020 - Building (Progressive) Web Apps
 
DevFest Kuwait 2020- Cloud Study Jam: Kubernetes on Google Cloud
DevFest Kuwait 2020- Cloud Study Jam: Kubernetes on Google CloudDevFest Kuwait 2020- Cloud Study Jam: Kubernetes on Google Cloud
DevFest Kuwait 2020- Cloud Study Jam: Kubernetes on Google Cloud
 
DevFest Kuwait 2020 - GDG Kuwait
DevFest Kuwait 2020 - GDG KuwaitDevFest Kuwait 2020 - GDG Kuwait
DevFest Kuwait 2020 - GDG Kuwait
 

Recently uploaded

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 

Recently uploaded (20)

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 

#Code2Create:: Introduction to App Development in Flutter with Dart

  • 1. Introduction to App Development in Flutter using Android Studio By Dr. Khulood AlKhateeb
  • 2. Background • Flutter is created and supported by Google • Dart is similar to Swift, C#, Java, JS • Dart combined with Flutter to make mobile apps. • Other options • React Native (not enough support) • Flutter vs. React Native
  • 3. Is it worth it? • The decision to venture into Flutter and Dart • Learning a whole new language • The possibilities
  • 4. Where you at • Android Studio 4.0 or higher installed • Flutter SDK and dart plugins downloaded and installed • Setup an Android Emulator • Did a test drive to make sure all is running properly https://flutter.dev/docs/get-started/install
  • 5. Where you will be 1. Exploring the Android Studio IDE 2. Exploring main elements of a Flutter app. 3. Create simple GUI form with: a) text, b) input fields, and c) buttons. includes styling and changes to properties 4. Understanding event handling (clicks) 5. Navigating through multiple screens 6. Using the console for debugging purposes 7. Testing in the emulator
  • 6. Exploring the Android Studio IDE • points
  • 7. Hello World! • In keeping with traditions ☺ Code sample can be found in Udacity.com App Bar Body
  • 8. Create simple GUI form • Draw your design first. • Then start implementing
  • 9. ListTile Widget Leading Title Subtitle Trailing Source: https://www.youtube.com/watch?v=l8dj0yPBvgQ&vl=en
  • 10. Padding vs Margins Source: https://www.pluralsight.com/blog/creative-professional/whats-difference-margin-padding
  • 11. Understanding event handling • Click -> something happens • Debugging using console
  • 13. Testing in the emulator • Hot reload!
  • 15. Documentations for Widgets used • MaterialApp: https://api.flutter.dev/flutter/material/MaterialApp-class.html • Scaffold: https://api.flutter.dev/flutter/material/Scaffold-class.html • Container: https://api.flutter.dev/flutter/widgets/Container-class.html • Center: https://api.flutter.dev/flutter/widgets/Center-class.html • Text: https://api.flutter.dev/flutter/widgets/Text-class.html • TextField: https://api.flutter.dev/flutter/material/TextField-class.html • ListTile: https://api.flutter.dev/flutter/material/ListTile-class.html • Icon: https://api.flutter.dev/flutter/widgets/Icon-class.html • RaisedButton: https://api.flutter.dev/flutter/material/RaisedButton-class.html • Image.asset: https://api.flutter.dev/flutter/widgets/Image/Image.asset.html • Column: https://api.flutter.dev/flutter/widgets/Column-class.html • Navigator: https://api.flutter.dev/flutter/widgets/Navigator-class.html • Extra: Creating Widget from scratch: https://www.youtube.com/watch?time_continue=4&v=W1pNjxmNHNQ&feature=emb_logo
  • 16. Cool Short Cuts • Alt + Enter : popup menu for wrapping widgets • Ctrl + Space : options and Auto-complete • Ctrl + Alt + L : reformat the code with correct indentations
  • 17. iOS developer? • Use Cupertino package: • https://flutter.dev/docs/get-started/flutter-for/ios-devs
  • 18. References • https://flutter.dev/ • https://dart.dev/ • http://thetechnocafe.com/just-enough-dart-for-flutter-tutorial-01- variables-types-and-functions/ • https://flutter.dev/docs/development/ui/widgets/material • https://api.flutter.dev/flutter/material/ListTile-class.html
  • 19. What’s Next! • Join us for other workshops where we learn: • Using firebase with flutter • Online Store Demo! • Would like more info? • follow @pinkeeta.tech • Or email pinkeeta.tech@gmail.com • Subscribe to @pinkeeta.tech
  • 20. Thank you Please evaluate the workshop and help us do better