售 价:¥
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
Learning Dart
Table of Contents
Learning Dart
Credits
About the Authors
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers and more
Why Subscribe?
Free Access for Packt account holders
Preface
Spiral approach
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
Questions
1. Dart – A Modern Web Programming Language
What is Dart?
Dart is a perfect fit for HTML5
A very short history of web programming
Dart empowers the web client
JavaScript is not the way to go for complex apps
Google, GWT, and Dart
Advantages of Dart
Getting started with Dart
Installing the Dart Editor
Your first Dart program
Getting a view on the Dart tool chain
The Dart execution model
A bird's eye view on Dart
Example 1 – raising rabbits
Extracting a function
A web version
Example 2 – banking
Making a todo list with Dart
Summary
2. Getting to Work with Dart
Variables – to type or not to type
Built-in types and their methods
Conversions
Operators
Some useful String methods
Dates and times
Lists
Maps
Documenting your programs
Changing the execution flow of a program
Using functions in Dart
Return types
Parameters
First class functions
Recognizing and catching errors and exceptions
Debugging exercise
Summary
3. Structuring Code with Classes and Libraries
A touch of class – how to use classes and objects
Visibility – getters and setters
Types of constructors
Named constructors
factory constructors
const constructors
Inheritance
Abstract classes and methods
The interface of a class – implementing interfaces
Polymorphism and the dynamic nature of Dart
Collection types and generics
Typing collections and generics
The collection hierarchy and its functional nature
Structuring your code using libraries
Using a library in an app
Resolving name conflicts
Visibility of objects outside a library
Managing library dependencies with pub
Unit testing in Dart
Project – word frequency
Summary
4. Modeling Web Applications with Model Concepts and Dartlero
A short introduction to Git and GitHub
Creating a repository on GitHub and a local version
Collaborating on a GitHub project
What a model is and why we need it in programming
Model concepts – a graphical design tool for our models
Working with model concepts
Explaining the model
Drawing the model
Exporting the model
What is JSON?
Dartlero – a simple domain model framework
An example of using Dartlero
The categories and links application
Summary
5. Handling the DOM in a New Way
Finding elements and changing their attributes
Finding elements
Changing the attributes of elements
Creating and removing elements
Handling events
Manipulating the style of page elements
Animating a game
Ping Pong using style(s)
How to draw on a canvas – Ping Pong revisited
Spiral 1 – drawing a circle and a rectangle
Spiral 2 – colored circles and rectangles
Spiral 3 – moving a ball
Spiral 4 – reorganizing the code
Spiral 5 – a bouncing ball
Spiral 6 – displaying the racket
Spiral 7 – moving the racket using keys
Spiral 8 – moving the racket using the mouse
Spiral 9 – a real game
Spiral 10 – title and replay
Spiral 11 – the master version
Summary
6. Combining HTML5 Forms with Dart
Spiral 1 – the power of HTML5 forms
Spiral 2 – how to validate data with Dart
Validation in the model
Spiral 3 – how to store data in local storage
Spiral 4 – reading and showing data
Spiral 5 – changing and updating data
Spiral 6 – working with a list of bank accounts
Summary
7. Building Games with HTML5 and Dart
The model for the memory game
Spiral 1 – drawing the board
Spiral 2 – drawing cells
Spiral 3 – coloring the cells
Spiral 4 – implementing the rules
Spiral 5 – game logic (bringing in the time element)
Spiral 6 – some finishing touches
Spiral 7 – using images
Adding audio to a web page
Using an audio library – Collision clones
Adding video to a web page
Summary
8. Developing Business Applications with Polymer Web Components
How web components change web development
Web components with Polymer.dart
Declaring and instantiating a web component
Two-way data binding in Polymer.dart
Creating the polymer_links project
Spiral s01
Spiral s02
Spiral s04
Spiral s05
Spiral s06
Using Polymer for the category links project
Adding local storage
Applying web components to the project tasks app
Add and remove Task propagations
Summary
9. Modeling More Complex Applications with Dartling
The Dartling domain modeling framework
Design of the Travel Impressions model in spirals
Generating Travel Impressions code from the model
Initializing the Travel Impressions model with Data
Testing the Travel Impressions model
Defining and using the MVC pattern
The TodoMVC app
Spiral 0 – generating a class model
Spiral 1 – adding todo tasks
Spiral 2 – showing how many todo tasks left
Spiral 3 – removing a single task and completed tasks
Spiral 4 – editing todos (undo and redo)
Spiral 5 – displaying completed, remaining, or all todos
Spiral 6 – editing a task
Summary
10. MVC Web and UI Frameworks in Dart – An Overview
DQuery
Bootjack
Dart Web Toolkit (DWT)
The dartling_dwt_todo_mvc_spirals project
Dart widgets
Bee
HTML components
Rikulo UI
Rikulo MVC
Hipster-mvc
Puremvc
StageXL
Flash Professional CC – toolkit for Dart
Angular.dart
Summary
11. Local Data and Client-Server Communication
The options for browser storage
Asynchronous calls and Futures
Using IndexedDB with Dart
Spiral s00
Spiral s01
Spiral s02
Spiral s03
Spiral s04
Spiral s05
Using Lawndart
A Dart web server
Using JSON web services
Spiral s07
Summary
12. Data-driven Web Applications with MySQL and MongoDB
Database drivers for Dart
Storing todo data in MySQL
Dartlero tasks – a many-to-many model in MySQL
The JSON storage
MySQL storage
MongoDB – a NoSQL database
Using the mongo_dart driver to store the todo data in MongoDB
Summary
Index
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜