
What is William Shakespeare famous for? His literature works. To put it another way, his ways of using and combining language is brilliant. A little off topic, but it’s to show you the importance of language to a well-known work. Likewise, to have a successful Flutter app, you need to have Dart. Think about it, isn’t it correct?
Today, AHT devoted team would love to introduce the awesomeness of Dart by answering these 4 questions:
- What is Dart?
- What are its components?
- Who is using Dart? (sneak peak: there’s one that everybody knows)
- Why does Flutter use it?
Let’s get started!
What is Dart?
Dart is an open-source programming language like Python, JavaScript and PHP and was developed by Google in 2011. What’s more, the latest version in time of this article was 2.8.4 in June 2020.
Although Dart is not as popular, it has the biggest increasing gap and stands at 19. We are really looking forward to its huge jump next month or year!

What is Dart used for, you ask? It helps create frontend UI for web and mobile apps. Overall, the biggest difference between Dart and other languages is that it supports collection. In other words, it can copy the data structure, namely arrays, generics and optional typing. Below is an example:
void main() {
for (int i = 0; i < 5; i++) {
print('hello ${i + 1}');
}
}
What are Dart components?
Data Type
In Dart, every value must have a type when compiling the code. Here are 4 most common types with example:
a. String
It holds text and uses single or double quotation marks
String myName = 'javatpoint';
b. Num, int, double
There are 2 types in Dart:
- Integer
int age = 25
- Double
double price = 125.50
c. Boolean
It uses keywords to represent True/False value
bool var_name = true;
Or
bool var_name = false;
d. Object
can go from general to complex
Person = Person()
Variables and Functions
Variables are the namespace that store values while functions are a set of statements that can perform a task. For example,
Variable:
var price1 = 29.99;
var price2 = 20.81;
Function
var price1 = 29.99;
var price2 = 20.81;
var total = addNumbers(price1, price2);

Operators
Arithmetic, Equality, Increment and Decrement, Logical and Comparison are all supported in Dart.
Decision Making & Loops
Dart can process If, If-else and Switch decision-making statements.
As for Loops, ‘for, for..in, while, do…while’ are available.
Continue and Break
It helps stop the current flow to continue a loop.
void main() {
for(int i=1;i<=10;i++){
if(i==5){
print("Hello");
continue; //it will skip the rest statement
}
print(i);
}
}
Final and Const Keyword
Final keyword is used to limit and restrict users, while Const helps declare constants.
void main() {
final a = 100;
const pi = 3.14;
print(a);
print(pi);
}
Object-oriented Programming
Object is an entity and has state and behaviour.
Class is a collection of objects and also includes Fields, Methods, Constructor, Getters and Setters.
Who uses Dart?
Although relatively new, it is widely used by some of these brands namely Blossom, Alibaba, Workiva,… and above all, Google.

Here comes the most concerned question:
Why does Flutter use Dart?
In short, simple because Dart offers lots of amazing features and functions that Flutter needs. But what exactly are they?
#1. Compilation and Execution
- Compiling and Executing Dart
Dart is the only common programming language that can compile both AOT and JIT. Thus, it is super beneficial for Flutter
- Stateful Hot Reload
If you have read’ Flutter app: How to improve its performance?’, you will know that Hot Reload plays a vital role in Flutter. Hot reload makes it easier to experiment with alternatives. As a result, developers can freely try multiple methods and boost creativity!

#2. Avoiding Jank
Avoiding Jank will make the app run extra smoothly. What a coincidence, Dart offer such features to avoid common things that cause jank:
- AOT compilation and the ‘bridge’
- Scheduling and shared resources
- Allocation and garbage collection
In fact, Dart uses an advanced scheme that leads to smooth scrolling and animation!
#3. Unified Layout
To clarify, when using Dart, Flutter does not split layout among your program. As a result, it is much easier and faster to visualize the code outcome! After all, the new tools will surely make complex layouts more simple to test and run.
Looking for help? AHT is only one call away!
Founded in 2007, ArrowHitech JSC is one of the leading IT outsourcing companies in Vietnam. We have worked with over 1,000 customers worldwide and completed more than 10,000 projects. Based in an Asian country, we provide effective services at a very low cost.
We value every customer, treat them like family and build relationships on trust. For that reason, we are confident that we can help YOU operate your online stores and deliver the best solutions at an affordable cost. For reference, check out our Flutter App Development Services right now – we welcome customers all the time!
Final Words
Finally, we have come to the end of today’s topic: Dart and why Flutter loves it. AHT hopes that you have learned lots of new ideas that will serve your future. Again, as usual, we truly wish you the best of good luck and success!
We’d love to hear from you at:
- + 84 243 7955 813
- support@arrowhitech.com
- Contact Us Form