Code in the Cloud |
Author: Mark C. Chu-Carroll
As its subtitle indicates, this book is about using the Google AppEngine rather than general cloud computing. However, it starts off with a look at the general idea before moving on to setting up a Google AppEngine account and how much it will all cost you. Unfortunately Google has changed its pricing structures since this book was written, so you need to take the advice with caution and checkout the current terms and conditions.
Part II of the book is where the real work begins - programming AppEngine in Python. You get the impression that the author doesn't really like Python but has to use it because it is one of the main ways of working with App Engine. The example used is a chat room using HTTP as the communications protocol. The workings of HTTP are described in some detail so basically all you need to know is Python. Chapter 4 shows how to use persistent storage. This is a very slow and gentle introduction to using AppEngine's database. Chapter 5 moves on to authentication via the users service. The next chapter starts a section on the UI It looks at the UI in terms of HTML and templating using Django and chapter 7 extends this to include CSS. Both are very basic and the chapter on CSS assumes you know nothing about it and so it explains selectors and the basics of flow layout with float and clear. Chapter 8 changes the topic to clientside JavaScript. This assumes that you already know JavaScript and then goes on to describe the Model-View-Controller pattern. Of course to make all this work it also has to introduce you to Ajax. Part III of the book is about programming AppEngine with Java. Once again we are reminded that the author doesn't really like Python and is relived to be back in Java land. The case is put for using Java even if you are a Python fan. There then follows an argument that GWT is the best possible way to create a web app. There are arguments in its favour but it still isn't a mainstream approach to the problem. What you make of this part of the book really does depend on what you think of Java and more specifically GWT. After a simple example we move on to managing server-side data and then on to building the UI with GWT widgets. Finally we have a chapter which returns to the Chat room application and shows how to work with the server side. The final part of the book is about advanced topics. Chapters 13 and 14 are about using the datastore with Java and Python including queries and indices. Chapter 15 describes some of the other AppEngine services such as Memcache, mail and chat. The final few chapters are a sort of general round out. Chapter 16 explains how to arrange for your programs to run at timed intervals using the chron scheduler and task queues. Chapter 17 deals with security and 18 deals with issues of administration. The final chapter is a final look at cloud computing and where to go next. This is a well written book that deals using AppEngine in Python reasonably well but really wants you to work in Java GWT. This said, the treatment of Python isn't bad and the whole approach of covering the two languages works quite well. The big problem is the uneven coverage of the basics - why cover the basics of CSS and HTTP but not JavaScript? It would have been better to simply assume that the reader knew about these topics and spend more time on AppEngine. Overall this is a book that doesn't go very deep into the subject and it would make a good introduction for the beginner who wanted a quick start to Python and Java GWT with App Engine.
|
|||
Last Updated ( Monday, 07 November 2011 ) |