Kids, Code, and Computer Science Magazine

Dart

Dart

This open source programming language is used to create web, servers, mobile, and IoT apps.

Initially developed by Google, the Dart programming language is now under development as an open source project standardized through the ECMA standards group. Software applications for the web, server, mobile, and Internet of Things (IoT) can be built with Dart.

When first presented by Google, many developers had concerns about yet another language for the web to complicate how web applications are created. Because many web applications are built with JavaScript, developers also were concerned Dart might replace JavaScript without being an improvement.

However, in addition to other functionality, Dart has evolved into a programming language that compiles to JavaScript code. This allows the Dart language to provide benefits that might not be available in other languages with the certainty the result can run in modern web browsers.

What Makes Dart Special?

Perhaps the most interesting part of the Dart language is its relationship to a larger Google project, also called Dart, which tries to solve programming problems beyond web applications.

For example, the project wants to improve the Document Object Model (DOM), the tree structure made of all parts of a web page that programmers use to add or modify content on web pages. Dart also is designed for high performance and ease of use. And it can be used for mobile and Internet of Things applications.

The language also uses C style syntax which makes it relatively easy for programmers to learn if they know C, C++, C#, Java, and other languages with similar syntax rules.

Here’s an example of Dart code to show how it uses C syntax with curly braces and semi-colons to print Hello World!:

void main() {
    print(‘Hello World!’);
}

Dart uses snapshots to handle out of memory conditions and memory constraints found on mobile hardware so the language can be used on web servers and mobile clients, like JavaScript. Embedded systems used in the Internet of Things (IoT) devices also have constrained memory requirements. To execute multiple computations at the same time, Dart also uses a single isolate — a dedicated chunk or heap of memory — to avoid conflicts and ensure reliability. Isolates communicate through messages which are copied before being sent to another isolate, also adding to reliability.

 

Become a subscriber and get access to the rest of this article. Plus all our magazine articles.

Stories also include numerous links to help parents, kids, and teachers learn more. Get access today at just $15 per year!

Subscribe Today!

Also In The February 2016 Issue

Ideas for most young kids (and their families), from board games and more offline options to online games and apps.

Computers can be programmed to make intelligent decisions. Does that make a computer intelligent?

The many pieces that make up AI have been built and used for thousands of years in many cultures.

Math circles are groups of students who come together to have fun discussing and solving intriguing math questions.

Unit testing tests a set of code with data to test with the code and details about how the code is used and operated upon.

There are several places to go online to play classic video games like Donkey Kong and Castlevania.

How we manage limited resources and share costs is an important question far beyond software development.

For twenty years, since 1996, cars have used computers to control different parts of the car.

Danny Fenjves currently is the founder of Upperline, teaching students how to turn their ideas into reality through programming.

This Computational Fairy Tale explains how loops work through the sad tale of Simon, the hapless apprentice to a blacksmith.

Links from the bottom of all the February 2016 articles, collected in one place for you to print, share, or bookmark.

Interesting stories about computer science, software programming, and technology for February 2016.