Book Image

DART Cookbook

By : Ivo Balbaert
Book Image

DART Cookbook

By: Ivo Balbaert

Overview of this book

Table of Contents (18 chapters)
Dart Cookbook
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Introduction


Working with files is the bread and butter of every programming language when reaching out for data in the environment. The classes and methods dealing with this functionality can be found in the dart:io package, together with support for networking (sockets and HTTP). This package can only be used in Dart command-line applications, not in browser apps, so our code runs in a Dart VM.

When working with files, and I/O in general, there are two modes of operation:

  • Synchronous operations, where code execution waits for the I/O result

  • Asynchronous operations, where the code execution is not blocked and continues while I/O is taking place

Because the Dart VM is single threaded, a synchronous call blocks the application. So, for scalability reasons, the asynchronous way is the best practice using the Future and Stream classes from the dart:async package. Most methods on files come in pairs, the asynchronous and the synchronous versions, such as copy and copySync. Unless you really have...