Android Programming: Developing Mobile Apps with Java

November 3-7 2014, JHU Dorsey Center, Elkridge MD
Co-Sponsored by Johns Hopkins Engineering for Professionals
JHU/EP Logo


This page is about the public Android course to be held in Maryland. For a customized onsite class, please see the Android training page.

This class is now over. Next public version is tentatively set for early 2015 at the same Johns Hopkins location in Maryland. In the meantime, please contact hall@coreservlets.com for information on a customized onsite version at your location. Lower price, more convenient for your developers, and customizable content. For clients in the Baltimore/Washington area, late afternoon, evening, or weekend sessions can be arranged.

“Wonderful. In 20 years, this is the best organized, most pragmatic and enjoyable course I've taken.”

“The best instructor-led course I have attended, by far.”

“Best short course ever!”

“Compared to the other short courses I have taken, this one completely redefined my scale from 1-10.”

“In my 35+ years of taking technical courses, Marty's classes consistently come out ranking #1 on my list. Highly relevant material is delivered with enthusiasm, humor, and a high degree of class interaction that is unmatched anywhere.”

more student reviews

Android Logo This page describes the public (open enrollment) training course on Android programming to be held through at in Elkridge, MD (co-sponsored by the Johns Hopkins University Engineering for Professionals program). The entire course is personally developed and taught by leading Java developer, speaker, and author Marty Hall. No contract instructor regurgitating someone else's materials! Marty has taught Java technology courses onsite for dozens of organizations in the US, Canada, Mexico, Australia, Japan, Norway, Puerto Rico, India, Cambodia, and the Philippines, all to rave reviews.

If you are looking for customized training courses on Java 7 or 8, JSF 2, PrimeFaces, Android, Ajax, jQuery, Hadoop (and Hadoop cerfication), GWT, Spring, Hibernate, Servlets, JSP, HTML5, or RESTful Web Services taught on-site at your company, please see this page.

Register Early! Five of Marty's previous public short courses were full, so reserve your spot today. Registrations are taken in the order they are received.


Course Overview

Android is now the world's bestselling mobile platform, and its nonrestrictive policies and the use of Java as the core application language makes Android an ideal choice for developing internal corporate mobile applications. However, the API is large, complex, and sometimes difficult to get started with. This course gives a practical, hands-on introduction to developing Android applications. It provides thorough coverage of the the foundational Android topics: installation, setup, XML-based layouts, event-handling strategies, basic widget types, and window layout types. it also gives a fast-moving survey of some of the most important libraries: location-based services, screen rotations, multithreaded applications, network programming, animation, and lots more. In each section, it gives details on the most important topics, surveys more advanced or lesser-used topics, stresses best practices, and gives plenty of working examples. Each section is followed by a series of hands-on exercises to reinforce the concepts. There are a choice of exercises of varying complexity so as to accommodate developers with various levels of expertise and previous experience. All exercises can be run inside Eclipse on the Android emulator, so owning a physical Android device is not a requirement for the course. However, if you bring an Android phone or tablet, we will show you how to test your exercises on it.

Marty normally runs on-site Android training courses at customer locations. This is easier administratively, is better for clients since the topics and schedule can be customized, and is more cost effective for students since no travel is required. However, due to demand from those who do not have enough students for an on-site course, Marty will be running a public (open enrollment) Android training course at the Johns Hopkins Dorsey Center in Elkridge MD.

The course is developed and taught by Marty Hall, an experienced developer, award-winning instructor, popular conference speaker (5 times at JavaOne), and author of several bestselling Java books.

About the Instructor

Marty Hall Marty Hall is president of coreservlets.com, a training and consulting company focusing on server-side Java technology, Android development, and Rich Internet Apps with Ajax. In addition to long Java development and consulting experience, Marty has an extensive background in teaching and training, having given training courses on Java 7, Java 8, JSF 2, PrimeFaces, Android, Ajax/jQuery, and other Java EE topics in Japan, Canada, Australia, the Philippines, Mexico, Puerto Rico, India, Cambodia, Norway, and dozens of US venues. He has taught onsite at Google (both the Mountain View and NY offices), the NSA, the CIA, General Dynamics, Northrup Grumman, General Motors, VeriSign, Symantec, the Federal Reserve Bank, Comcast, Hewlett Packard, Fannie Mae, Learjet, the US Navy, the Australian Treasury Department, Telenor Norway, and dozens of other organizations around the world. (A more extensive list can be found on Marty's bio page.)

JavaU @ JavaOne

A popular and entertaining speaker, Marty has also spoken at conferences and user groups around the world, including Comdex, the Web 2.0 Expo, and five times at JavaOne. Marty is also adjunct faculty in the Johns Hopkins University part-time graduate program in Computer Science, where he directs the Java and Web-related concentration areas.

Marty Hall is also the lead author of six popular Java EE books, including Core Servlets and JSP, and is the co-author of the upcoming JSF 2.2 edition of Core JSF.

  • Core Servlets and JSP is the all-time worldwide bestselling servlet/JSP book, published in Bulgarian, Chinese Simplified Script (Mainland China), Chinese Traditional Script (Taiwan), Czech, Greek, English, French, German, Hebrew, Japanese, Korean, Macedonian, Polish, Portuguese, Russian, and Spanish.
  • Core JSF is widely recognized as the leading text on Web App development with JavaServer Faces.
  • In addition be being best sellers in industry, Marty's books have been widely used in academia (including Stanford, MIT, Princeton, U.C. Berkeley, UCLA, Johns Hopkins, and dozens of others).

For more details, please see the Marty Hall bio.

Prerequisites

Android applications are written in Java, so at least moderate previous Java experience is needed. You need not be a Java expert, but you should be comfortable with basic syntax (loops, conditionals, Strings, etc.), OOP (classes, methods, constructors, interfaces, etc.), basic data structures (arrays, Lists, Maps, etc.), and how to go about creating and debugging basic Java programs. If you have never programmed in Java before, the course will definitely move too fast for you, and you should consider the Java programming crash course instead. Some previous exposure to XML is helpful but not absolutely required. No previous experience with Android or mobile apps is expected.

Venue

JHU/EP Logo The course will be held at the Johns Hopkins Dorsey Center in Elkridge, Maryland. This is a modern, comfortable venue with separate computers for each student, fast internet connections, and with coffee, snacks, and meals included. Class meets from 8:30 am to 4:30 pm daily. For students who prefer to bring their own laptops, fast wifi is available, and you can email the instructor for information on installing the class software in advance.

For Maryland residents, the location is centrally located 5 minutes from BWI airport and has plenty of free parking. For out-of-town students, there are many hotels within 1 mile.

Registration

The five-day course costs $2695 per student and includes an extensive course notebook, a commercial textbook, exercises, and exercise solutions. Free breakfast, snacks, and lunch. Compare this price to courses from Learning Tree, GlobalKnowledge, and Oracle University that cost $3500-$4200 for five-day courses and $2800-$3000 for four-day courses and that do not include textbooks or meals. Besides, those courses almost always use an unknown instructor who did not develop the course materials and often lacks significant real-world development experience.

To register, fill out and send in the course registration form. Space is limited: five previous offerings of coreservlets.com courses were full. Bonus: Register at least two weeks in advance and get a $100 gift certificate from amazon.com.

Questions and More Info



  • Guinea pigs? No! Marty's courses are well-tested, having been taught in 8 countries and dozens of US venues. We don't use your developers as guinea pigs for new materials.
  • Regurgitation? No! Marty developed all his own materials. No contract instructor regurgitating memorized PowerPoint slides.
  • Green? No! Marty is an experienced developer, and is the author of 6 popular Java EE texts from Prentice Hall. The course gives best practices and real-world strategies. No newbie instructor dodging tough questions.

Syllabus

Here is the tentative syllabus, based on earlier Android courses taught by Marty. The topics will probably change slightly between now and the course.

  • Introduction and overview. Pros and cons.
  • Installation, setup, and getting started.
  • Android Programming Basics
  • Widget Event Handling
  • Widgets I: Buttons and Similar Clickable Widgets
  • Widgets II: Spinners (Combo Boxes)
  • Layouts: Organizing the Screen
  • Coding Style: The Official Android Conventions
  • Location-Based Services
  • Intents Part I: Invoking Activities by Class Name
  • Intents Part II: Invoking Activities with URIs
  • Intents Part III: Invoking Activities with Tabbed Windows
  • Localization and Resources
  • Handling Screen Rotations and App Restarts
  • Google Map Components
  • Networking I: General Techniques
  • Networking II: HTTP and JSON Techniques
  • Multithreaded Programming Part I: General Techniques
  • Multithreaded Programming Part II: Android-Specific Techniques
  • 2D Graphics, Canvas, and Animation