Unit 7d: REST, N-Tier Applications, Integration

April 25, 2011

Objectives

Learn about and gain experience with:

Recap / Prerequisites

You should have completed the reading and videos from Unit 7c and have completed Project 7.4. Your application should be in production, and you should have played with the other teams' applications (creating funny things, entering bugs/tickets).

Summary

This unit focuses on one main question: how can we get Web applications to talk to one another? What is a "Service-Oriented Architecture" and what is REST? While diving into Project 7.5, try to educate yourself using the following resources.

Topics & Resources (Week 5, Apr 25 - May 2)

For this unit, you should watch these Yongcasts and complete some additional reading. You should also be working toward completing Project 7.5.

Read Agile Web Development with Rails chapter 26. This chapter is critical for helping you quickly complete Project 7.5.

Quickly Read Roy Fielding's 2000 dissertation, "Architectural Styles & the Design of Network-Based Software Architectures" ("the REST paper"). Focus mostly on chapters 4 and 5, titled "Designing the Web Architecture: Problems and Insights" and "Representational State Transfer."

Watch this short video demonstrating a workflow when fixing bugs in your application.

Are you intimidated by the time that it takes to write tests and develop in a test-driven manner? Pay attention to how much time you waste that could be better spent on writing tests.

Make sure you understand the difference between AJAX and DHTML, and see how you might implement a simple AJAX-driven feature with Rails rather than writing your own JavaScript.

Please accomplish the above by Monday, May 2.