Wednesday 26 June 2019

Flutter Introduction


flutter tutorial,flutter,flutter tutorial for beginners,flutter app,flutter tutorials,flutter sdk,tutorial,flutter course,learn flutter,flutter tutorial ios,flutter firebase tutorial,flutter widgets,flutter app development tutorial,flutter ios,flutter dart,flutter android,google flutter,flutter sdk tutorial,flutter tutorial app,google flutter tutorial,flutter sqflite tutorial,flutter tutorial deutsch,flutter tutorial android


1.What is Flutter? 
Flutter is a new tool offered by Google that let developers build cross-platform applications that could be executed in defferent system such as a Android or iOS with just a common codebase.

This tool is built in C and C++ and provides a 2D rendering, a React inspired functional-reactive framework, and a set of Material Design Widgets.

Flutter run on mobile (Android/iOS) device, it will run on desktop, embedded systems and now the web.

flutter enables smooth and easy cross-platform mobile app development you don't need to develop  iOS and Android app separately all you need is one codebase of both platforms. is free and open source.

-Is based on  Dart a fast object-oriented programming language which is in itself easy to learn,
Provide its own widgets, drawn with its own high-performance rendering engine. They are fast,pretty and customizable,

- Thanks to rich widgets, Flutter apps look and feel great (you can create your own custom app design, but also use readily available UI elements following specific platforms' guidelines)

- The architecture of Flutter is based on the very popular reactive programming of nowadays (the same that React has been made from)

- It's becoming a serious competitor to React Native, but also to native app development
- It is a stiff rival to React Native



2 Explain flutter advantage & disadvantage 
Advantage : 
Extremely Fast App Development: With features like Hot-reload, code changes in Flutter are reflected as soon as the alterations are made. The Hot-reload usually doesn't take more
than milliseconds, which in turn, helps developers to maintain high speeds and dynamically for mobile app development. Flutter widgets assist in the creation of native interfaces within few minutes.

- Faster Running of Applications: Flutter apps provide smooth and seamless scrolling experiences while n use, without much hangs or cuts.

- Reduced Efforts of Testing: Since Flutter apps are cross-platform, the testers do not always require to run the same set of tests on different platforms, such as iOS and Android, for the same app. Cross-platform application development enables applications to run on multiple
platforms by writing the programming code only once (follows the WORD concept). This saves the time of the testing team. Thus, Flutter is used extensively by every mobile app developer, Utah, for faster testing, delivery and deployment of mobile applications.

- Access of Native Features: It is extremely simple to set-up Flutter Application developers can easily have access to native features of low-level machines where Flutter is initiated. Since it is cross-platform in nature, codes written in existing Swift, Java, Objective-C, etc. can be reused
again and again.

- Excellent User Interfaces: With built in design-centric widgets, high-end development tools, advanced APIS scrolling and navigation features, etc., Flutter helps in the creation of stunning and expressive user interfaces.

- Reactive Framework: With reactive framework, the developers do not need to update UI contents manually Once the variables are updated, the UI changes will be visible automatically.

Good for MVP: Flutter is good for developing MVP (Minimum Viable Product) apps due to its speedy development process and cross platform nature. The cross-platform concept also aids in reducing costs when apps are developed with Flutter. Many modern undertakings and SMEs are thus employing flutter to increase development speeds and get the maximum outputs at lower costs.

Disadvantage :
Needs Continuous Support: Since Flutter is comparatively new, it needs continuous integration support through maintenance of scripts, as C platforms like Jenkins do not support Flutter on a large scale.

- Limited Libraries: The libraries to be accessed by the mobile application developers is very limited in Flutter. They do not always provide all the functionalities needed by the developer. Such functionalities need to be developed by the application developers by themselves.

3 Read file assets

Future String JoadRecordsAsset()
async 
{return await
rootBundle.loadString('assets/data
record json');}

Future <Record Lists> loadRecord() async{
String jsonString await_loadRecord sAsset();
final jsonResponse= json.decode json String):
RecordList records=new Record List from Json(jsonResponse);

return records;}