Wiley
Wiley.com
Print this page Share

Professional Web 2.0 Programming

ISBN: 978-0-470-08788-6
552 pages
November 2006
Professional Web 2.0 Programming (0470087889) cover image
Web 2.0 architecture opens up an incredible number of options for flexible web design, creative reuse, and easier updates. Along with covering the key languages and techniques of Web 2.0, this unique book introduces you to all of the technologies that make up Web 2.0 at a professional level. Throughout the chapters, you'll find code for several example applications built with popular frameworks that you'll be able to utilize.

You'll first explore the technologies that are used to create Web 2.0 applications. This includes an in-depth look at XHTML, Cascading Style Sheets (CSS), JavaScript, and Ajax. Next, you'll gain a better understanding of the protocols and formats that enable the exchange of information between web clients and servers. Ultimately, you'll discover exactly what you need to know about server-side programming in order to implement new ideas and develop your own robust applications.

What you will learn from this book

  • How Web 2.0 applications are developed
  • New ways to get the major client-side technologies to work together
  • The new class of emerging tools
  • All about HTTP and URIs, XML, syndication, microformats, and Web Services
  • Techniques for implementing and maintaining your URI space
  • How to serve XML over HTTP
  • Steps for building mashups to aggregate information from multiple sources
  • Methods for enhancing security in your applications

Who this book is for

This book is for professional developers who have a basic understanding of HTML, CSS, JavaScript, and XML.

Wrox Professional guides are planned and written by working programmers to meet the real-world needs of programmers, developers, and IT professionals. Focused and relevant, they address the issues technology professionals face every day. They provide examples, practical solutions, and expert education in new technologies, all designed to help programmers do a better job.

This book is also available as part of the 4-book JavaScript and Ajax Wrox Box (ISBN: 0470227818). This 4-book set includes:

  • Professional JavaScript for Web Developers (ISBN: 0764579088)
  • Professional Ajax 2nd edition (ISBN: 0470109491)
  • Professional Web 2.0 Programming (ISBN: 0470087889)
  • Professional Rich Internet Applications: Ajax and Beyond (ISBN: 0470082801)
See More
Foreword.

Acknowledgments.

Introduction.

Chapter 1: Hello Web 2.0 World.

Introducing BuzzWatch.

Charting the Landscape.

Exploring Behind the Scene.

Making BuzzWatch a Better Web Citizen.

Making BuzzWatch More Maintainable.

Applying the Final Touch.

Conclusion.

Chapter 2: Page Presentation.

Creating Clean and Simple Pages.

From HTML to XHTML.

The Document Object Model.

Cascading Style Sheets.

Tools.

Summary.

Chapter 3: JavaScript and Ajax.

JavaScript: Understanding Lesser-Known but Crucial Features.

JavaScript Optimizations.

Ajax.

Summary.

Chapter 4: Design Principles.

Common Design Issues.

Summary 109

Chapter 5: What’s Next for Web 2.0?

XSLT and XPath.

SVG.

XForms.

What’s Next for HTML.

Summary.

Chapter 6: Rich Client Alternatives.

From Browsers to Rich Clients.

Comparing Rich Client Frameworks.

Summary.

Chapter 7: HTTP and URIs.

How the Web Was Won.

Web 1.0: HTML, URLs, and HTTP.

The Web Model and REST.

Considerations for Building an HTTP Service.

What’s on the Wire?

More Representations.

Summary.

Chapter 8: XML and Its Alternatives.

XML.

Alternatives to XML.

Summary.

Chapter 9: Syndication.

Some Syndication Basics.

The Syndication Process.

Syndication Formats.

Summary.

Chapter 10: Microformats.

The Basics of Microformats.

Creating Microformat Documents.

Summary.

Chapter 11: Combining Protocols to Build Web Services.

Clarifying Web Services.

REST Services.

WS-* Services.

REST versus WS-*.

Summary.

Chapter 12: Serving XML over HTTP.

How Is Serving HTML Different?

Serving Static Content.

Serving Dynamic Content.

XQuery and XML Databases.

Serving JSON.

Summary.

Chapter 13: Databases and Non-XML Sources.

Dealing with Non-XML Sources.

Converting Relational Data to XML.

Converting Binary Data to XML.

Summary.

Chapter 14: Creating Syndication Channels.

A Simple Atom Service.

Running the Application.

Adding E-mail Support.

Summary.

Chapter 15: Mashups, HTML Scraping, and Web Services.

Popular Examples: Mapping Mashups.

Why Use Mashups?

The Business Model of Mashups.

Screen Scraping.

Creating Feeds.

Mapping and Badges.

Summary.

Chapter 16: Implementing and Maintaining Your URI Space.

Future-Proofing Your URIs.

Managing Change in Your URI Space.

Your URI Mapping Toolbox.

Summary.

Chapter 17: Podcasting and Serving Multimedia.

The Formats Labyrinth.

Protocols.

Summary.

Chapter 18: Security.

What Is Security?

Lessons Learned from History.

The Layered Approach.

Authentication and Authorization.

Message Encryption.

Message Digests.

Digital Certificates.

Secure Sockets Layer.

Code Security.

Web Services Security.

Summary.

Index.

See More
Eric van der Vlist is an independent consultant and trainer. His domain of expertise includes Web development and XML technologies. He is the creator and main editor of XMLfr.org, the main site dedicated to XML technologies in French, the author of the O’Reilly books XML Schema and RELAX NG, and a member or the ISO DSDL (http://dsdl.org) working group, which focuses on XML schema languages. He is based in Paris and you can reach him by mail (vdv@dyomedea.com) or meet him at one of the many conferences where he presents his projects.

Alessandro Vernet has been involved with web and XML technologies from day one. Prior to co-founding Orbeon, he worked at Symantec Corporation as part of the VisualCafe team, working on the next-generation RAD for web applications. He is the co-author of The Best of Java, received the 1998 Logitech Award for his master’s thesis on Jaskell, and is one of the architects of the open source Orbeon PresentationServer (OPS) project. His current interests lie in XML technologies and web applications. He recently implemented an XForms engine using Ajax/JavaScript, co-authored the XML Pipeline Language specification published by the W3C, and is active in two W3C Working Groups: the XForms and XML Processing Model Working Groups. He holds an MS/CS from the Swiss Institute of Technology (EPFL) in Lausanne, Switzerland.

Erik Bruchez has extensive experience in the software industry as a software architect and consultant. As a former employee of Symantec Corporation, he contributed to the VisualCafe for Java product line. In 1999, he co-founded Orbeon, Inc. (www.orbeon.com), where he is now an architect of Orbeon PresentationServer (OPS), an open source web platform for form-based applications that builds on technologies such as XForms and Ajax. Erik participates in the W3C’s XForms and XML Processing Model working groups. He is the author of articles about web applications and XML technologies and has been a speaker at conferences such as JavaOne, ObjectWebCon, and XTech. Erik holds an MS/CS degree from the Swiss Institute of Technology (EPFL) in Lausanne, Switzerland. He spends most of his time between Switzerland and California and can be reached by email at ebruchez@orbeon.com.

Joe Fawcett started programming in the seventies and briefly worked in IT after leaving full-time education. He then pursued a more checkered career before returning to software development in 1994. In 2003 he was awarded the title of Microsoft Most Valuable Professional in XML for community contributions and technical expertise. He currently works in London as senior developer for FTC Kaplan Ltd, a leading international provider of accountancy and business training.

Danny Ayers is a freelance developer, technical author, and consultant specializing in cutting-edge Web technologies. His motivation is the belief that with a little encouragement, the Web can be significantly more useful and interesting than it is now. He’s been a blogger for some five years (http://dannyayers.com), with a tendency to post material relating to the Semantic Web or cat photos.

Technical Editor Micah Dubinko is an experienced software architect and writer working for the Mobile Platform group at Yahoo! Inc. He has been programming since the third grade—at the time on a computer with only 2K of memory. Micah served as an editor and author of the W3C XForms specification, publishing a book in print and online, and eventually being awarded the InfoWorld Innovators 2004 award for his effort. Since then, he has contributed to and edited numerous Web 2.0 books and articles. His blog is at http://dubinko.info/blog/. Micah lives with his wife and two daughters in Silicon Valley.

See More
Future-Proofing Your URIsAn excerpt from Chapter 16, "Implementing and Maintaining Your URI Space" of Professional Web 2.0 Programming.
Professional Web 2.0 Programming BlogAn aggregator site pulling in content from all of the individual author blogs, Web 2.0 style.
See More
Download TitleSizeDownload
Download YUI 0.11.4 which is the version that will work best with the buzzwatch application:
http://downloads.sourceforge.net/yui/yui_0.11.4.zip?modtime=1159287676&big_mirror=0
   
Download SQLite used by the Buzzwatch application:
http://www.sqlite.org/download.html
   
Download Code for Chapter 1
Download a .zip file with the code and examples used in Chapter 1.
To uncompress the file, Windows users can use Windows built-in ZIP utilities or a 3rd party utility like WinZip or WinRAR. Macintosh users can simply double-click the downloaded file to extract using the built-in archive utility.
66.66 KB Click to Download
Download Code for Chapter 2
Download a .zip file with the code and examples used in chapter 2.
To uncompress the file, Windows users can use Windows built-in ZIP utilities or a 3rd party utility like WinZip or WinRAR. Macintosh users can simply double-click the downloaded file to extract using the built-in archive utility.
29.63 KB Click to Download
Download Code for Chapter 3
Download a .zip file with the code and examples used in chapter 3.
To uncompress the file, Windows users can use Windows built-in ZIP utilities or a 3rd party utility like WinZip or WinRAR. Macintosh users can simply double-click the downloaded file to extract using the built-in archive utility.
9.14 KB Click to Download
Download Code for Chapter 4
Download a .zip file with the code and examples used in chapter 4.
To uncompress the file, Windows users can use Windows built-in ZIP utilities or a 3rd party utility like WinZip or WinRAR. Macintosh users can simply double-click the downloaded file to extract using the built-in archive utility.
748.32 KB Click to Download
Download Code for Chapter 5
Download a .zip file with the code and examples used in chapter 5.
To uncompress the file, Windows users can use Windows built-in ZIP utilities or a 3rd party utility like WinZip or WinRAR. Macintosh users can simply double-click the downloaded file to extract using the built-in archive utility.
24.47 KB Click to Download
Download Code for Chapter 6
Download a .zip file with the code and examples used in chapter 6.
To uncompress the file, Windows users can use Windows built-in ZIP utilities or a 3rd party utility like WinZip or WinRAR. Macintosh users can simply double-click the downloaded file to extract using the built-in archive utility.
1.18 MB Click to Download
Download Code for Chapter 7
Download a .zip file with the code and examples used in chapter 7.
To uncompress the file, Windows users can use Windows built-in ZIP utilities or a 3rd party utility like WinZip or WinRAR. Macintosh users can simply double-click the downloaded file to extract using the built-in archive utility.
68.74 KB Click to Download
Download Code for Chapter 8
Download a .zip file with the code and examples used in chapter 8.
To uncompress the file, Windows users can use Windows built-in ZIP utilities or a 3rd party utility like WinZip or WinRAR. Macintosh users can simply double-click the downloaded file to extract using the built-in archive utility.
1.29 KB Click to Download
Download Code for Chapter 9
Download a .zip file with the code and examples used in chapter 9.
To uncompress the file, Windows users can use Windows built-in ZIP utilities or a 3rd party utility like WinZip or WinRAR. Macintosh users can simply double-click the downloaded file to extract using the built-in archive utility.
3.71 KB Click to Download
Download Code for Chapter 10
Download a .zip file with the code and examples used in chapter 10.
To uncompress the file, Windows users can use Windows built-in ZIP utilities or a 3rd party utility like WinZip or WinRAR. Macintosh users can simply double-click the downloaded file to extract using the built-in archive utility.
65.98 KB Click to Download
Download Code for Chapter 11
Download a .zip file with the code and examples used in chapter 11.
To uncompress the file, Windows users can use Windows built-in ZIP utilities or a 3rd party utility like WinZip or WinRAR. Macintosh users can simply double-click the downloaded file to extract using the built-in archive utility.
1.52 KB Click to Download
Download Code for Chapter 12
Download a .zip file with the code and examples used in chapter 12.
To uncompress the file, Windows users can use Windows built-in ZIP utilities or a 3rd party utility like WinZip or WinRAR. Macintosh users can simply double-click the downloaded file to extract using the built-in archive utility.
6.03 KB Click to Download
Download Code for Chapter 13
Download a .zip file with the code and examples used in chapter 13.
To uncompress the file, Windows users can use Windows built-in ZIP utilities or a 3rd party utility like WinZip or WinRAR. Macintosh users can simply double-click the downloaded file to extract using the built-in archive utility.
1.50 MB Click to Download
Download Code for Chapter 14
Download a .zip file with the code and examples used in chapter 14.
To uncompress the file, Windows users can use Windows built-in ZIP utilities or a 3rd party utility like WinZip or WinRAR. Macintosh users can simply double-click the downloaded file to extract using the built-in archive utility.
8.85 KB Click to Download
Download Code for Chapter 15
Download a .zip file with the code and examples used in chapter 15.
To uncompress the file, Windows users can use Windows built-in ZIP utilities or a 3rd party utility like WinZip or WinRAR. Macintosh users can simply double-click the downloaded file to extract using the built-in archive utility.
45.91 KB Click to Download
Download Code for Chapter 17
Download a .zip file with the code and examples used in chapter 17.
To uncompress the file, Windows users can use Windows built-in ZIP utilities or a 3rd party utility like WinZip or WinRAR. Macintosh users can simply double-click the downloaded file to extract using the built-in archive utility.
4.88 KB Click to Download
Download Code for Chapter 18
Download a .zip file with the code and examples used in chapter 18.
To uncompress the file, Windows users can use Windows built-in ZIP utilities or a 3rd party utility like WinZip or WinRAR. Macintosh users can simply double-click the downloaded file to extract using the built-in archive utility.
486.93 KB Click to Download
See More

Do you think you've discovered an error in this book? Please check the list of errata below to see if we've already addressed the error. If not, please submit the error via our Errata Form. We will attempt to verify your error; if you're right, we will post a correction below.

ChapterPageDetailsDatePrint Run
67 Errors in Bullet
2nd bullet, first line, last word:
double

should be:
apply

AND

2nd bullet, line 7:
that the function result only uses

should be:
that the returned function only uses
12/21/2007
76 Typo
"Cons" column in table at top, 2nd item, 3rd line:
soly

should be:
solely
11/30/06
95 Typos
first ital note paragraph, first sent:
accessibilityand

should be:
accessibility and

AND

last paragraph, last line:
tobear

should be:
to bear
11/30/06
141 Typo
2nd line:
Operabreaks

should be:
Opera breaks
11/30/06
18 488-9 Error in Code
the shaded code at the top has the line:
password = "hopeYouCantGuessMe";

In the text at the top of page 489 it is shown as:
password = "!" + token.Password; ;

It should actually be:
password = "!" + token.Password;

in both cases.
11/16/07
See More
Buy Both and Save 25%!
+

Professional Web 2.0 Programming (US $39.99)

-and- Beginning SharePoint Designer 2010 (US $34.99)

Total List Price: US $74.98
Discounted Price: US $56.23 (Save: US $18.75)

Buy Both
Cannot be combined with any other offers. Learn more.

Related Titles

Back to Top