There are many programming languages you can start learning today. But not many are modern, easy to learn, object-oriented and scalable as Dart. Plus, combined with Flutter, it allows you to build native iOS & Android applications with a single code base.
Dart Apprentice will teach you all the basic concepts you need to master this language. Follow along the easily and thoroughly explained concepts and you will be building Dart applications in a breeze.
Before You Begin
This section tells you a few things you need to know before you get started, such as what you’ll need for hardware and software, where to find the project files for this book, and more.
What You Need
FreeIntroduction
FreeSection I: Dart Apprentice
Begin your journey learning all the basic concepts you need to master this language. Follow along the easily and thoroughly explained concepts and you will be building Dart applications in a breeze.
Hello, Dart!
FreeThis chapter will help you set up your development environment to work with Dart, and it will also teach you how to create your first Dart projects. Follow along to install the necessary tools and Dart’s SDK. Get to understand the structure of a Dart project and how to configure it in a code editor.
1Now you’ll learn the basic concepts needed to start programming in Dart. What’s the difference between a variable and a constant? How do you write comments? And what mathematical expressions can you use? These will allow you to get started with the basic principles you need to become a master of Dart.
2In this chapter you’ll move forward by learning some of the main types provided by Dart and the different operations you can perform on them. You’ll learn about strings and the way Dart represents text and characters using Unicode. You’ll also learn about converting between types and what type inference, concatenation are interpolation are used for. Finally, you see the difference between dynamically and statically typed languages.
3Move on to some more advanced concepts. As the name implies, control flow will allow you to determine what your program does at each step. Booleans, enums, switches, if-else statements and loops will allow you to set the path your program will follow.
4The time has arrived to start looking at functions, one of the concepts you’ll use extensively when programming in Dart and many other languages. Check out how powerful and flexible Dart functions are, and learn about closures and the difference between anonymous and arrow functions.
5Next you’ll learn one of the most important concepts in object-oriented programming: Classes. They’ll allow you to create your own types, defining the properties they have and what they can do.
6Nullability allows you to handle the absence of a value while programming. Null safety is a new feature in Dart and has made it an even stronger language. Never has 'nothing' been useful. Follow along to learn why.
7Collections allow you to group data in different useful ways. Discover lists, sets and maps and all the properties and operations you can perform with them. You’ll finish up by learning about higher order methods and the power they provide you with.
8In Chapter 6 you learned about classes, and now it’s time for more advanced concepts such as inheritance, abstract classes, interfaces and mixins.
9Learn how concurrency works in Dart, as well as other related topics such as futures, streams, isolates and more. You'll be challenged with a network call to practice what you've learned.
10Meet the team
Who is this book for
This book is for anyone interested in learning this new, modern, programming language. If you are a beginner and want to start programming, this is great place to start. If you are an experienced programmer interested in learning Dart, here you will find all the concepts you need to know.
Concepts covered in this book
Version history
First Edition · Flutter, Dart 2.12.2, VS Code 1.54
First Edition · Flutter, Dart 2.8.4, VS Code 1.46
First Edition - Early Access 1 · Flutter, Dart 2.8.4, VS Code 1.46
Dart Apprentice
Dart Apprentice will teach you all the basic concepts you need to master this language. Follow along the easily and thoroughly explained concepts and you will be building Dart applications in a breeze.