Flutter is Google’s Mobile SDK to build native iOS and Android apps from a single codebase. It was developed on December 4, 2018. When building applications with Flutter, everything is towards Widgets – the blocks with which the Flutter apps are built. The User Interface of the app comprises many simple widgets, each handling one particular job.
Flutter lets developers build apps for mobile, web, and desktop using the same code. It uses the Dart programming language and comes with ready-to-use widgets for designing user interfaces. Flutter’s special feature, hot reload, allows developers to see changes instantly as they code, making development faster.
Flutter is a free and open-source framework for developing mobile applications.
Before diving into Flutter, it is important to have a strong grasp of Dart programming, familiarity with Android Studio, and knowledge of web scripting languages like HTML, JavaScript, and CSS.
Flutter is a framework that can be used for both frontend and backend.
core differences between Flutter and React Native.
| Flutter | React Native |
|---|---|
| Initial release in 2017 | Initial release in 2015 |
| Based on Dart | Based on React JS |
| Controls every pixel on the screen | Controls via the native mobile components |
| Cross-Platform ( Mobile, Web, Desktop ) | Cross-Platform ( Mobile, React Native Web ) |
| Developed by Google | Developed by Facebook |
| Current Version 3.3.9 | Current Version 0.70 |
| App performance is higher. Flutter 60 fps or 120 fps animation. Flutter itself paints and controls every single pixel on the screen | High. It requires the JavaScript bridge to interact with the native components. |
| Flutter is the fastest growing framework for cross-platform development. Community support for flutter is amazing, with over 11100 Github stars, 15000 forks and over 41000 closed issues, it is leading the industry. | Community support for React Native is also good but it is not growing as fast as flutter. It has over 9300 Github stars, 20000 forks and over 19700 closed issues. |
Programming environment
You can choose between Visual Studio Code or Android Studio.
Important resources
https://www.geeksforgeeks.org/flutter-tutorial/
https://www.freecodecamp.org/news/how-to-develop-a-flutter-app-from-scratch/
Flutter SDK download
https://docs.flutter.dev/get-started/install
https://docs.flutter.dev/get-started/install/windows/mobile
https://codelabs.developers.google.com/codelabs/flutter-codelab-first
setting up android emulator
https://medium.com/@bosctechlabs/code-of-how-to-set-up-an-emulator-for-vscode-updated-ad4365c0559b