Publisher:O'Reilly Media Formats:
Print Ebook Safari Books Online
Print: October 2014 Ebook: October 2014 Pages: 360 Print ISBN:978-1-4919-0684-2 | ISBN 10:1-4919-0684-7Ebook ISBN:978-1-4919-0682-8 | ISBN 10:1-4919-0682-0
About the book
Yes, you can create your own apps for Android devices—and it’s easy to do. This extraordinary book introduces you to App Inventor 2, a powerful visual tool that lets anyone build apps. Learn App Inventor basics hands-on with step-by-step instructions for building more than a dozen fun projects, including a text answering machine app, a quiz app, and an app for finding your parked car!
The second half of the book features an Inventor’s Manual to help you understand the fundamentals of app building and computer science. App Inventor 2 makes an excellent textbook for beginners and experienced developers alike.
- Use programming blocks to build apps—like working on a puzzle
- Create custom multi-media quizzes and study guides
- Design games and other apps with 2D graphics and animation
- Make a custom tour of your city, school, or workplace
- Control a LEGO® MINDSTORMS® NXT robot with your phone
- Build location-aware apps by working with your phone’s sensors
- Explore apps that incorporate information from the Web
Table of Contents
- AI2 Tutorials
- Chapter 1HelloPurr
- What You’ll Learn
- The App Inventor Environment
- Designing the Components
- Live Testing
- Adding Behaviors to the Components
- Downloading the App to Your Android Device
- Sharing the App
- Variations
- Summary
- Chapter 2PaintPot
- What You’ll Learn
- Getting Started
- Designing the Components
- Adding Behaviors to the Components
- The Complete App: PaintPot
- Variations
- Summary
- Chapter 3MoleMash
- What You’ll Build
- What You’ll Learn
- Getting Started
- Designing the Components
- Adding Behaviors to the Components
- The Complete App: MoleMash
- Variations
- Summary
- Chapter 4No Texting While Driving
- What You’ll Learn
- Getting Started
- Designing the Components
- Adding Behaviors to the Components
- The Complete App: No Texting While Driving
- Variations
- Summary
- Chapter 5Ladybug Chase
- What You’ll Build
- What You’ll Learn
- Designing the Components
- Adding Behaviors to the Components
- The Return of the Ladybug
- Adding Sound Effects
- The Complete App: Ladybug Chase
- Variations
- Summary
- Chapter 6Paris Map Tour
- What You’ll Learn
- Designing the Components
- Setting the Properties of ActivityStarter
- Adding Behaviors to the Components
- The Complete App: Map Tour with Activity Starter
- The Complete App: Map Tour (Web Viewer)
- Variations
- Summary
- Chapter 7Android, Where’s My Car?
- What You’ll Learn
- Getting Started
- Designing the Components
- Adding Behaviors to the Components
- The Complete App: Android, Where’s My Car?
- Variations
- Summary
- Chapter 8Presidents Quiz
- What You’ll Learn
- Getting Started
- Designing the Components
- Adding Behaviors to the Components
- The Complete App: The Presidents Quiz
- Variations
- Summary
- Chapter 9Xylophone
- What You’ll Build
- What You’ll Learn
- Getting Started
- Designing the Components
- Creating the Keyboard
- Recording and Playing Back Notes
- The Complete App: Xylophone
- Variations
- Summary
- Chapter 10MakeQuiz and TakeQuiz
- What You’ll Learn
- Getting Started
- Designing the Components
- Adding Behaviors to the Components
- The Complete App: MakeQuiz
- TakeQuiz: An App for Taking the Quiz in the Database
- The Complete App: TakeQuiz
- Variations
- Summary
- Chapter 11Broadcast Hub
- What You’ll Learn
- Getting Started
- Designing the Components
- Adding Behaviors to the Components
- The Complete App: Broadcast Hub
- Variations
- Summary
- Chapter 12Robot Remote
- What You’ll Learn
- Getting Started
- Designing the Components
- Adding Behaviors to the Components
- Driving the NXT
- Using the Ultrasonic Sensor to Detect Obstacles
- Variations
- Summary
- Chapter 13Amazon at the Bookstore
- What You’ll Learn
- What is an API?
- Getting Started
- Designing the Components
- Programming the App’s Behavior
- The Complete App: Amazon at the Bookstore
- Customizing the API
- Variations
- Summary
- Inventor’s Manual
- Chapter 14Understanding an App’s Architecture
- Components
- Behavior
- An App as a Recipe
- An App as a Set of Event Handlers
- Event Types
- Event Handlers Can Ask Questions
- Event Handlers Can Repeat Blocks
- Event Handlers Can Remember Things
- Event Handlers Can Interact with the Web
- Summary
- Chapter 15Engineering and Debugging an App
- Software Engineering Principles
- Solve Real Problems
- Build a Prototype and Show Users
- Incremental Development
- Design Before Coding
- Comment Your Code
- Divide, Layer, and Conquer
- Understand Your Language: Tracking with Pen and Paper
- Debugging an App
- Watching Variables
- Testing Individual Blocks
- Incremental Development with Do It
- Disabling Blocks
- Summary
- Chapter 16Programming Your App’s Memory
- Named Memory Slots
- Properties
- Defining Variables
- Setting and Getting a Variable
- Setting a Variable to an Expression
- Incrementing a Variable
- Building Complex Expressions
- Displaying Variables
- Local Variables
- Summary
- Chapter 17Creating Animated Apps
- Adding a Canvas Component to Your App
- The Canvas Coordinate System
- Animating Objects with Timer Events
- Creating Movement
- Speed
- Collision Detection
- EdgeReached
- CollidingWith and NoLongerCollidingWith
- Interactive Animation
- Specifying Sprite Animation Without a Clock Timer
- Summary
- Chapter 18Programming Your App to Make Decisions: Conditional Blocks
- Testing Conditions with if and else if Blocks
- Programming an Either/Or Decision
- Programming Conditions Within Conditions
- Programming Complex Conditions
- Summary
- Chapter 19Programming Lists of Data
- Creating a List Variable
- Selecting an Item in a List
- Using an Index to Traverse a List
- Example: Traversing a List of Paint Colors
- Creating Input Forms and Dynamic Data
- Defining a Dynamic List
- Adding an Item
- Displaying a List
- Removing an Item from a List
- Lists of Lists
- Summary
- Chapter 20Repeating Blocks
- Controlling an App’s Execution: Branching and Looping
- Iterating Functions on a List with for each
- A Closer Look at Looping
- Writing Maintainable Code
- Using for each to Display a List
- The while-do Block
- Using while-do to Compute a Formula
- Summary
- Chapter 21Defining Procedures and Reusing Blocks
- Eliminating Redundancy
- Defining a Procedure
- Calling a Procedure
- The Program Counter
- Adding Parameters to Your Procedure
- Returning Values from a Procedure
- Reusing Blocks Among Apps
- The distanceBetweenPoints Procedure
- Summary
- Chapter 22Working with Databases
- Storing Persistent Data in TinyDB
- Retrieving Data from TinyDB
- Shared Data and TinyWebDB
- Requesting Data with Various Tags
- Setting Up a Web Database
- Summary
- Chapter 23Reading and Responding to Sensors
- Creating Location-Aware Apps
- Using the Orientation Sensor
- Using the Accelerometer
- Summary
- Chapter 24Communicating with the Web
- The WebViewer Component
- The Web Component
- TinyWebDB and TinyWebDB-Compliant APIs
- Summary
About the Author
David Wolber is a leader in App Inventor education and teaching beginners how to program their phones and tablets. His focus is empowering artists, designers, kids, women, men, humanity majors, business students—makers of all types—to add coding to their creative arsenals. His teaching materials, video screencasts, and course-in-a-box are available at appinventor.org, and his students have been chronicled in articles of the New York Times, San Francisco Chronicle, and Wired Magazine.
David is a professor at the University of San Francisco. He taught one of the first App Inventor courses in 2009 as part of a Google pilot and has been teaching and working with the App Inventor teaching community ever since. His teaching materials on the Google and MIT sites, and on appinventor.org, have provided the first introduction to coding for thousands of new app builders, and his course-in-a-box materials have served as a template for many App Inventor courses at the K-12 and university levels. David recently took a sabbatical at MIT to work with co-author Hal Abelson and contribute to the development of App Inventor 2. He also is contributing to the Mobile Computer Science Principles (mobile-csp.org) course for the new Advanced Placement (AP) course is US high schools.
Download
No comments:
Post a Comment