You are on page 1of 2

Introduction

Dart programming language was revealed initially at the GOTO conference which took place at
Aarhus, Denmark in October 2010. The main goal was to create a faster and more structured
language than JavaScript. Let’s dive deep into the history and beauty of Dart programming
language The main contributor of the creation of Google chrome Lars Bak, a famous
programmer from Danish and Kasper Lund were the founding fathers of Dart. For dart to be
standardize as a new programming language Ecma International held a technical committee
known as the TC52. In July 2014 Ecma International approved the first version of Dart at the
General Assembly of the international body. Within a span of six months another edition of
Dart programing language was approved by the same organization Dart was announced by
Google and introduced in October 2011 . The man idea was to build a programming language
for web applications , to tackle client server architecture . This was a vital Progress because it
allowed programmers to write code that will run in browser and on the server

In 2013 Dart version M1 was released and it marked a milestone because beginning of june
2013 Dart had increased performance and efficiency compared to the previous version made in
2011. During the same year in November Dart had improved more with the implementation of
PUB package manager which is used to manage packages for every Dart project.

The developers were working tirelessly and during mid August of 2018 Dart2 was released. The
newly released version came with upgraded compiler and robust runtime environment. It was
now a stronger type language, in simple terms it does not allow reinterpret cast which helps
programmers to catch errors during the compilation time which is more efficient than catching
the error at runtime. Besides new compiler and runtime environment Just in time compilation
and Ahead of Time compilation was introduced.

Just in Time compilation - It allowed Dart code to be compiled to machine language code at
runtime , this did not just improve optimization but it also made it easy to debug Dart .

Flutter framework - During the same year 2018 Flutter framework was released which is one of
the most important innovations of Dart. Flutter was not just a mare framework but it was a
game changer in the realm of mobile and desktop app development

Single Codebase – This allowed programmers to write code for all platforms like android, ios,
web and desktop using the same code . This feature had a huge impact on efficiency and it
increased speed of development for various platforms

Widgets – In Flutter almost everything is a widget this includes buttons, panels , text , windows
etc. Widget utilization improved the User Interface and its much faster and it can be
manipulated easily according to the developer’s needs.
Use of Dart – Flutter uses Dart as its language. It has some rich features which work well with
flutter like asynchronous programming with the use of wait and async which is essential for
building dynamic and responsive user interfaces.

Hot Reload – For example if you are writing a C or C++ code if you make changes you have to
compile and run again for you to be able to see any changes but using Flutter the changes are
rendered dynamically . This feature makes flutter makes the changes made to flutter codebase
to appear instantly in the output or on the user interface while it’s still running without losing
any data or causing memory leaks. This improves development speed because you can do try
and error and without recompiling you can see if the changes are what you need.

Open source – Dart source code is available for everyone .In other words the community of
developers from any country can contribute to the growth and improvement of Dart. This
speeds up the development and it allows bugs to be reported and solved earlier. This feature
has contributed to the built of many new libraries and frameworks. Besides improvement of the
programming language itself a huge community makes it easy for beginners to learn the
language easily with proper guidance .

Static typing - Dart is a statically typed language which means for each variable you have to
declare the type . This helps to catch errors during compile time therefore reducing overhead
which comes with dynamic typed languages. On top of optimization explicit static typing makes
the code more readable and easy to understand.

Garbage collection – Dart manages its memory automatically and it frees all the memory that is
no longer in use. Let’s say there are two abject A and B if we assign A = B the memory of B will
be freed .The garbage collector continuously checks the heap for any unreferenced objects .
This helps to avoid memory leaks. For example in C developers focus on managing memory and
avoidance of memory leaks but in Dart there is no such scenarios hence developers are more
focused on writing efficient code and increasing readability rather than focusing on managing
memory

Last but not least Dart is an object oriented programming language, its mainly build using
objects and classes. It supports inheritance, Encapsulation, abstraction and polymorphism. This
feature makes the code more organized and it allows the reuse of code.

You might also like