Google App Engine for Java Developers
|
|
Duration:
5 Days
|
|
|
This course is designed for professionals who have experience with
programming in Java.
-
Architects
-
Designers
-
Consultants
-
Developers
-
Technical managers
| |
Fluency in Java
|
|
|
Description
|
When Google opened up the Google App Engine (GAE) to the world, cloud
computing took a giant leap forward. The GAE engine makes it easy to
deploy Java based application solutions to the cloud.
This course shows how using Java one may easily create applications
running on the Google cloud. The covers the toolset used by the GAE
and all the API's available to the GAE developer.
The course has been specially designed for professional Java
programmers looking to build large-scale applications on the
cloud. We'll systematically go through the tools and the API's
used when building GAE applications.
The course also covers best practices for architecting and designing
GAE applications.
|
|
Objectives
|
This course teach the students how to create, test and deploy
Java applications to the cloud using the Google App Engine (GAE)
-
Master the toolset that comes with the Google App Engine
-
Understand the API's avaliable to you in GAE
-
Master design principals and patterns for cloud computing on Google
-
Understanding the best practice architecture for GAE
-
Understand how to persist business objects through the Google persistence API
-
Master the use of Google Web Toolkit
-
Understand how to configure a Google application
|
|
Course Outline
|
Introduction
- What is Google App Engine (GAE)
- Towards the cloud
- Python or Java
- Architectural overview
- Standards supported
- Tooling support
- Installing Eclipse and Google Tools
Simple Example
- Creating a project
- Defining a business object
- Adding persistence
- Defining a U/I
- Build the application
- Debug the application locally
- Deploy the application to the cloud
- Dissecting the example
- Exercise - You try it!
Tools Overview
- Development server
- Uploading and managing Google Apps
- Eclipse
- Using Ant
- Working from the command line
Google Web Toolkit
- Introduction to GWT
- How does GWT work
- The development environment
- Server-side vs. client-side code
- GWT Modules
- Building user-interfaces with GWT
- GWT best practices
- Exercise - Your first GWT application
Java Servlet Environment
- What are servlets?
- What ar JSPs?
- Creating a servlet
- Testing the servlet
- Deploying a servlet
- Using JSPs
- Servlets vs. GWT
- Exercise - Create your first servlet
Architect GAE solutions
- How to architect your business solution
- Model View Controller
- Service objects
- Business models
- Persisting the business models
- Exercise - Design a business application
Creating services
- Building service objects
- What is a good service?
- Granularity of services
- Best practices for design of services
- How to do unit testing
- Exercise - Build services
| |
Implementing persistence
- From business models to persistence
- Persistence API's
- JDO vs JPA
- Example of persistence using JDO
- Example of persistence using JPA
- Exercise - First example of persistence
Java Persistence API
- Overview of JPA
- JPA annotations
- XML mapping
- Entity class and O/R mappings
- Persistent fields and properties
- Identity management
- Entity relationship mappings
- Inheritance mappings
- Entity lifetimes
- Unsupported JPA features
- Exercise - Persist business objects using JPA
Java Data Object
- What is JDO
- JDO annotations
- XML mapping
- Post-compilation enhancement
- Persistent fields and properties
- Identity management
- Entity relationship mappings
- Inheritance mappings
- Entity lifetimes
- JDOQL
- Unsupported JDO features
- Exercise - Persist business objects using JDO
Configuration
- What can be configured
- The deployment descriptor
- App config
- Index config
Google Services
- Memcache
- URL Fetch
- Mail
- Images
- Google accounts
- Scheduled tasks
Summary and Conclusions
- What have we learned?
- Sample Applications
- The Cookbook
- Useful references
|
|