The Dart Programming Language

Dart is a class-based, object-oriented language that simplifies the development of structured modern apps, scales from small scripts to large applications, and can be compiled to JavaScript for use in any modern browser. In this rigorous but readable introductory text, Dart specification lead Gilad Bracha fully explains both the language and the ideas that have shaped it.

 

The Dart Programming Language offers an authoritative description of Dart for programmers, computer science students, and other well-qualified professionals. The text illuminates key programming constructs with significant examples, focusing on principles of the language, such as optional typing and pure object-orientation.

 

Bracha thoroughly explains reflection in Dart, showing how it is evolving into a form that programmers can easily apply without creating excessively large programs. He also shares valuable insights into Dart’s actor-style model for concurrency and asynchronous programming. Throughout, he covers both language semantics and the rationale for key features, helping you understand not just what Dart does, but why it works the way it does.

 

You will learn about

  • Dart’s object model, in which everything is an object, even numbers and Boolean values
  • How Dart programs are organized into modular libraries
  • How Dart functions are structured, stored in variables, passed as parameters, and returned as results
  • Dart’s innovative approach to optional typing
  • How Dart handles expressions and statements
  • How to use Dart’s implementation of reflection to introspect on libraries, classes, functions, and objects
  • Isolates and other Dart features that support concurrency and distribution

Register your product at informit.com/register for convenient access to downloads, updates, and corrections as they become available.

1124173468
The Dart Programming Language

Dart is a class-based, object-oriented language that simplifies the development of structured modern apps, scales from small scripts to large applications, and can be compiled to JavaScript for use in any modern browser. In this rigorous but readable introductory text, Dart specification lead Gilad Bracha fully explains both the language and the ideas that have shaped it.

 

The Dart Programming Language offers an authoritative description of Dart for programmers, computer science students, and other well-qualified professionals. The text illuminates key programming constructs with significant examples, focusing on principles of the language, such as optional typing and pure object-orientation.

 

Bracha thoroughly explains reflection in Dart, showing how it is evolving into a form that programmers can easily apply without creating excessively large programs. He also shares valuable insights into Dart’s actor-style model for concurrency and asynchronous programming. Throughout, he covers both language semantics and the rationale for key features, helping you understand not just what Dart does, but why it works the way it does.

 

You will learn about

  • Dart’s object model, in which everything is an object, even numbers and Boolean values
  • How Dart programs are organized into modular libraries
  • How Dart functions are structured, stored in variables, passed as parameters, and returned as results
  • Dart’s innovative approach to optional typing
  • How Dart handles expressions and statements
  • How to use Dart’s implementation of reflection to introspect on libraries, classes, functions, and objects
  • Isolates and other Dart features that support concurrency and distribution

Register your product at informit.com/register for convenient access to downloads, updates, and corrections as they become available.

47.99 In Stock
The Dart Programming Language

The Dart Programming Language

by Gilad Bracha
The Dart Programming Language

The Dart Programming Language

by Gilad Bracha

eBook

$47.99 

Available on Compatible NOOK devices, the free NOOK App and in My Digital Library.
WANT A NOOK?  Explore Now

Related collections and offers


Overview

Dart is a class-based, object-oriented language that simplifies the development of structured modern apps, scales from small scripts to large applications, and can be compiled to JavaScript for use in any modern browser. In this rigorous but readable introductory text, Dart specification lead Gilad Bracha fully explains both the language and the ideas that have shaped it.

 

The Dart Programming Language offers an authoritative description of Dart for programmers, computer science students, and other well-qualified professionals. The text illuminates key programming constructs with significant examples, focusing on principles of the language, such as optional typing and pure object-orientation.

 

Bracha thoroughly explains reflection in Dart, showing how it is evolving into a form that programmers can easily apply without creating excessively large programs. He also shares valuable insights into Dart’s actor-style model for concurrency and asynchronous programming. Throughout, he covers both language semantics and the rationale for key features, helping you understand not just what Dart does, but why it works the way it does.

 

You will learn about

  • Dart’s object model, in which everything is an object, even numbers and Boolean values
  • How Dart programs are organized into modular libraries
  • How Dart functions are structured, stored in variables, passed as parameters, and returned as results
  • Dart’s innovative approach to optional typing
  • How Dart handles expressions and statements
  • How to use Dart’s implementation of reflection to introspect on libraries, classes, functions, and objects
  • Isolates and other Dart features that support concurrency and distribution

Register your product at informit.com/register for convenient access to downloads, updates, and corrections as they become available.


Product Details

ISBN-13: 9780133429954
Publisher: Pearson Education
Publication date: 12/07/2015
Sold by: Barnes & Noble
Format: eBook
Pages: 224
File size: 11 MB
Note: This product may take a few minutes to download.
Age Range: 18 Years

About the Author

Gilad Bracha is a software engineer at Google where he works on Dart. In prior lives he has been a VP at SAP Labs, a Distinguished Engineer at Cadence, and a Computational Theologist and Distinguished Engineer at Sun. He is the creator of the Newspeak programming language, co-author of the Java Language and Virtual Machine Specifications, and a researcher in the area of object-oriented programming languages. Prior to joining Sun, he worked on Strongtalk, the Animorphic Smalltalk System. He received his B.Sc. in Mathematics and Computer Science from Ben Gurion University in Israel and a Ph.D. in Computer Science from the University of Utah.

Table of Contents

Foreword xi

Preface xv

Acknowledgments xvii

About the Author xix

 

Chapter 1: Introduction 1

1.1 Motivation 1

1.2 Design Principles 2

1.3 Constraints 4

1.4 Overview 4

1.5 Book Structure 10

1.6 Related Work and Influences 10

 

Chapter 2: Objects, Interfaces, Classes and Mixins 13

2.1 Accessors 14

2.2 Instance Variables 17

2.3 Class Variables 17

2.4 Finals 18

2.5 Identity and Equality 19

2.6 Class and Superclass 21

2.7 Abstract Methods and Classes 22

2.8 Interfaces 23

2.9 Life of an Object 24

2.10 noSuchMethod() 30

2.11 Constant Objects and Fields 31

2.12 Class Methods 32

2.13 Instances, Their Classes and Metaclasses 33

2.14 Object and Its Methods 34

2.15 Mixins 36

2.16 Related Work 45

2.17 Summary 46

 

Chapter 3: Libraries 47

3.1 The Top Level 47

3.2 Scripts 48

3.3 Privacy 48

3.4 Imports 49

3.5 Breaking Libraries into Parts 53

3.6 Exports 55

3.7 Diamond Imports 56

3.8 Deferred Loading 57

3.9 Related Work 58

3.10 Summary 59

 

Chapter 4: Functions 61

4.1 Parameters 61

4.2 Function Bodies 63

4.3 Function Declarations 64

4.4 Closures 65

4.5 Invoking Methods and Functions 66

4.6 The Function Class 68

4.7 Functions as Objects 69

4.8 Generator Functions 71

4.9 Related Work 74

4.10 Summary 74

 

Chapter 5: Types 75

5.1 Optional Typing 75

5.2 A Tour of Types 77

5.3 Interface Types 79

5.4 Types in Action: The Expression Problem, Typed 82

5.5 Generics 85

5.6 Function Types 91

5.7 Type Rei_cation 95

5.8 Malformed Types 102

5.9 Unsoundness 104

5.10 Related Work 106

5.11 Summary 107

 

Chapter 6: Expressions and Statements 109

6.1 Expressions 109

6.2 Statements 125

6.3 Summary 137

 

Chapter 7: Reflection 139

7.1 Introspection 139

7.2 Why Mirrors 165

7.3 Metadata 165

7.4 Reflection via Code Generation 166

7.5 Beyond Introspection 169

7.6 Related Work 169

7.7 Summary 170

 

Chapter 8: Asynchrony and Isolates 171

8.1 Asynchrony 171

8.2 Futures 172

8.3 Streams 174

8.4 Isolates 175

8.5 Example: Client-Server Communication 177

8.6 Asynchronous Functions 183

8.7 Related Work 185

8.8 Summary 185

 

Chapter 9: Conclusion 187

9.1 Optional Typing 187

9.2 Object Orientation 188

9.3 Reflection 188

9.4 Tooling 189

9.5 Summary 189

 

Bibliography 191

Index 195

From the B&N Reads Blog

Customer Reviews