Foundations of Android Programming

Intensive and hands-on, this five day course emphasizes becoming productive quickly in Java, Android, and Eclipse. This course quickly covers the Java 5.0 language syntax, and then moves into more advanced features of the language such as packages, abstract classes, interfaces, and exception handling. The Java section of this course culminates with coverage of inner classes and threads. The course then turns to Android specifics where students will learn how to create applications using views, resources, and layouts. If time allows, students will also learn how to create Android dialogs and menus. This course is current to Android 2.3, Gingerbread and Java 6.

Audience: Programmers moving to the Java language and Android development.
Prerequisites: Professional programming experience in C++ or C# required. Knowledge of Object-Oriented concepts is required.

1. Course Introduction

  • Course Objectives
  • Overview
  • Suggested References

2. Getting Started with Java SE

  • What is Java?
  • How to Get Java
  • A First Java Program
  • Compiling and Interpreting Applications
  • The JDK Directory Structure

3. Eclipse

  • Introduction to Eclipse
  • Installing Eclipse
  • Running Eclipse for the First Time
  • Editors, Views, and Perspectives
  • Setting up a Project
  • Creating a New Java Application
  • Running a Java Application
  • Shortcut Key Sequences
  • More Shortcut Key Sequences
  • Importing Existing Java Code into Eclipse

4. Language Fundamentals

  • A Java Program
  • If Statements
  • Switch Statements
  • Loop Statements
  • Syntax Details
  • Primitive Datatypes
  • Variables
  • Expressions in Java
  • Strings
  • Arrays
  • Enhanced for Loop

5. Objects and Classes

  • Defining a Class
  • Creating an Object
  • Instance Data and Class Data
  • Methods
  • Constructors
  • Access Modifiers
  • Encapsulation

6. Using Java Objects

  • Printing to the Console
  • printf Format Strings
  • StringBuilder and StringBuffer
  • Methods and Messages
  • toString
  • Parameter Passing
  • Comparing and Identifying Objects
  • Destroying Objects
  • Using the Primitive-Type Wrapper Classes
  • Autoboxing
  • Android Foundations

7. Inheritance in Java

  • Inheritance
  • Inheritance in Java
  • Casting
  • Method Overriding
  • Polymorphism
  • super
  • The Object Class

8. Packages

  • Packages
  • The import Statement
  • Static Imports
  • CLASSPATH and Import
  • Defining Packages
  • Package Scope

9. Exception Handling

  • Exceptions Overview
  • Catching Exceptions
  • The finally Block
  • Exception Methods
  • Declaring Exceptions
  • Defining and Throwing Exceptions
  • Errors and RuntimeExceptions

10. Advanced Java Features

  • Enumerated Types – Pre-Java 5.0
  • Enumerated Types Today
  • More Enumerated Types
  • Abstract Classes
  • Interfaces
  • Using Interfaces
  • Collections
  • Generics
  • The Collections Framework

11. Inner Classes

  • Inner Classes
  • Member Classes
  • Local Classes
  • Anonymous Classes
  • Static Nested Classes

12. Threads

  • Non-Threaded Applications
  • Threaded Applications
  • Creating Threads
  • Thread States
  • Runnable Threads
  • Coordinating Threads
  • Interrupting Threads
  • Runnable Interface
  • Race Conditions
  • Synchronized Methods
  • Deadlocks
  • Synchronized Blocks

13. Getting Started with Android

  • Android Overview
  • Android Architecture
  • The Dalvik VM
  • Android Components
  • Android Development Environment
  • A Simple Android Application
  • The Android Emulator
  • User Interface Layouts
  • Android Event Handlers
  • LogCat

14. Activities

  • Activities
  • Creating an Activity
  • Activity Lifecycle
  • Callback Methods
  • Resource Conservation
  • Intents
  • AndroidManifest.xml
  • Packaging

15. Resources

  • Resources
  • Alternative Resources
  • R.java
  • String Resources
  • String Arrays
  • Boolean and Integer Resources
  • Color and Dimension Resources
  • Style Resources
  • Image Resources
  • System Resources
  • Localization
  • Format Strings

16. Views and Event Handlers

  • Views and ViewGroups
  • Common Properties
  • Text View
  • Edit Text
  • TextChanged Events
  • Button
  • Check Box and Toggle Button
  • Radio Group and Radio Buttons
  • DatePicker
  • ProgressBar and RatingBar
  • Threads and Handlers
  • AsyncTask

17. Layouts

  • LinearLayout
  • FrameLayout
  • RelativeLayout
  • TableLayout
  • Combining Layouts
  • Scrolling
  • Screen Orientation Changes
  • Graphical Layout Tool

18. Appendix A – Dialogs

  • Toast
  • Custom Toast
  • Dialogs
  • Dismissing a Dialog
  • AlertDialog
  • AlertDialog Buttons
  • AlertDialog Items
  • Custom Dialogs
  • ProgressDialog
  • DatePickerDialog

19. Appendix B – Menus

  • Menus and Menu Items
  • OptionsMenu
  • Reacting to Menu Item Selections
  • ContextMenu
  • Submenus
  • CheckBoxes and Radio Buttons in Menu

To Hire a proven Android Programming Subject Matter Expert and Instructor who also teaches this class, call 800-798-3901 today!

Leave a Reply