Skip to content

Flutter

Flutter is the latest open source technology of Google used for developing native Android and iOS apps with a single codebase. Flutter is a complete SDK – software development kit having everything that need to build cross-platform apps. From a rendering engine, to ready-made widgets, command-line tools and testing and integration APIs.

Flutter consists of two important parts:

  • An SDK (Software Development Kit): A collection of tools that are going to help you develop your applications. This includes tools to compile your code into native machine code (code for iOS and Android).
  • A Framework (UI Library based on widgets): A collection of reusable UI elements (buttons, text inputs, sliders, and so on) that you can personalize for your own needs.

High performance and productivity in Flutter are achieved by using several techniques:

  • Unlike many other popular mobile platforms, Flutter doesn’t use JavaScript in any way.
    • Dart is the programming language. It compiles to binary code, and that’s why it runs with the native performance of Objective-C, Swift, Java or Kotlin.
  • Flutter doesn’t use native UI components.
    • Because components are implemented in Flutter itself, there is no communication layer between the view and your code. Due to this, games hit the best speed for their graphics out of the smartphones. So buttons, text, media elements, background are all drawn by Flutter’s graphics engine.
    • As an aside, it should be mentioned that the bundle of the Flutter “Hello, World” application is quite small: iOS ≈ 2.5Mb and Android ≈ 4Mb.
  • Flutter uses a declarative approach, inspired by the React web framework, to build its UI based on widgets (named “components” in the world of the web).
    • To get more out of widgets, they are rendered only when necessary, usually when their state has been changed (just like the Virtual DOM does for us).

!Flutter development


About Dart

Dart is a programming language that is used to develop the application in Flutter. Learning it isn’t hard if you have experience with Java or JavaScript.

Dart focuses on front-end development, and you can use it to create mobile and web applications.

If you know a bit of programming, Dart is a typed object programming language. You can compare Dart's syntax to JavaScript.

Dart is a programming language that was initially used internally at Google to build web, server and mobile applications. Dart has been around since 2011, but it didn't get any attention outside of Google. Dart has has improved a lot over these past years.

Dart started getting more attention in 2017 when Google officially announced Flutter beta for cross-platform mobile app development. Since then, the popularity of Dart has drastically increased, you can check this graph here to see how Dart has bumped up since 2018.

At the moment, mobile application developers are eager to adopt Flutter, but they have to learn Dart to get started. However, developers that have experience with other languages can learn Dart easily.


Read more