30 Days of Flutter

Flutter – a framework developed by Google – allows you to learn one language (Dart) and build beautiful native mobile apps in no time. Flutter is a SDK providing the tooling to compile Dart code into native code and it also gives you a rich set of pre-built and pre-styled UI elements (so called widgets) which you can use to compose your user interfaces.

Flutter is extremely trending and gets used for major Google apps like their Adwords app – it’s now marked as “ready for production”, hence now is the time to jump in and learn it!

This course will teach Flutter & Dart from scratch, NO prior knowledge of either of the two is required! And you certainly don’t need any Android or iOS development experience since the whole idea behind Flutter is to only learn one language.

You’ll learn Flutter not only in theory but we’ll build a complete, realistic app throughout this course. This app will feature both all the core basics as well as advanced features like using Google Maps, the device camera, adding animations and more!

With Flutter, you’ll be able to write code only once and ship your apps both to the Apple AppStore and Google Play.

Use Google’s Material Design to build beautiful, yet fully customizable, apps in no time with almost zero effort. You can use the rich widget suite Flutter provides to add common UI elements like buttons, switches, forms, toolbars, lists and more – or you simply build your own widgets – Flutter makes that a breeze, too.

Here’s what’s included in the course:

  • Detailed setup instructions for both macOS and Windows
  • A thorough introduction to Flutter, Dart and the concept behind widgets
  • An overview of the built-in widgets and how you may add your own ones
  • Debugging tipps & tricks
  • Page navigation with tabs, side drawers and stack-based navigation
  • State management solutions
  • Handling and validating user input
  • Connecting your Flutter app to backend servers by sending Http requests
  • User authentication
  • Adding Google Maps
  • Using native device features like the camera
  • Adding beautiful animations & page transitions
  • Image Upload
  • Push Notifications – manual approach and automated
  • How to publish your app to the app stores
  • And more!

This course is for you if …

  • You’re interested in building real native mobile apps for the two most popular mobile platforms – iOS and Android
  • You want to explore the full set of features Flutter offers
  • Don’t want to spend hours learning two completely different languages

We know that you’re here because you value your time. If you wanted to watch someone program for hours and hours without explaining what they’re doing, you’d be on YouTube.

Flutter is a newcomer to the mobile development scene.  Strongly supported by Google, it is already viewed as an ideal platform for replacing native Swift and Android development.  Thanks to its amazing standard library of widgets, fast compile times, and amazing documentation, developers are falling in love with Flutter!  

This course supports MacOS and Windows – develop Android and iOS apps easily!

Flutter apps are created using the language Dart.  No problem if you’re not already familiar with Dart; this course includes a lightning fast introduction to Dart at the beginning, along with hours of bonus lectures at the end of the course solely focused on Dart and its advanced features.  If you come from a background working with Java, Ruby, or Javascript, you’ll feel right at home with Dart – the syntax is nearly identical, only a few core concepts need to be learned.  Dart is a strongly typed language – but don’t be discouraged if you’re not a fan of strong types!  I spend special time in this course to make it extra clear why developing with a strongly typed language is a breeze!

One of the greatest challenges around developing Flutter applications right now is understanding how to design and architect apps.  Flutter is still in rapid development, and the community at large is still trying to find out the best techniques.  With this in mind, special attention is paid in the course to making sure you understand the primary design patterns advocated by Google’s Flutter team, including both the ‘Stateful Widget’ pattern and the ‘BLOC’ pattern.  The ‘BLOC’ pattern makes heavy use of Reactive Programming techniques, which you’ll learn about in this course as well.  These techniques can be easily applied to other languages and frameworks as well – talk about a bonus!

Of course, no mobile app is complete without some nice looking animations.  You’ll learn how to build animations using Flutter’s standard library of tools, which can be easily used to make interactions that your users will love.  You should plan to complete the course with knowledge of how to reference Flutter’s standard library of widgets to assemble complex animations.

By getting this course, you can be rest assured that the course is carefully thought out and edited. There are beautiful animations that explain all the difficult concepts and we’re always on hand to answer student questions.

So by the end of the course, you’ll completely understand:

  • Fundamental Flutter concepts e.g. Stateful vs. Stateless Widgets, Widget tree, state management, animations, themes and much more.
  • Fundamental Dart concepts e.g. lists, maps, enums, loops, futures, streams, mixins, classes, and much more.
  • Concepts of Object Oriented Programming (OOP): The type system, variables, functions and methods, inheritance, classes and protocols.
  • Control Structures: Using If/­Else clauses, Switch statements and logic to control the flow of execution.
  • Data Structures: How to work with collections, such as Lists and Maps.
  • Software Design: How to organise and format code for readability and how to implement the Model ­View­ Controller (MVC) design pattern.
  • Networking: How to make asynchronous API calls, store and retrieve data from the cloud, and use the JSON format for server communication.
  • Data Storage: How to use Firebase Cloud Firestore to act as a backend for your Flutter apps.
  • Authentication: How to use log in and register users for your Flutter apps.
  • State Management: How to use setState, prop drilling, lifting state up, callbacks and the Provider package to manage app state.

Also Enroll in 20 HOUR Python course from Intelij

Get 3 course worth $129 for FREE

RECENT COURSE

COURSERA COURSE