Enterprise AJAX: Strategies for Building High Performance Web Applications

Paperback (Print)
Buy Used
Buy Used from BN.com
$26.47
(Save 41%)
Item is in good condition but packaging may have signs of shelf wear/aging or torn packaging.
Condition: Used – Good details
Used and New from Other Sellers
Used and New from Other Sellers
from $1.99
Usually ships in 1-2 business days
(Save 95%)
Other sellers (Paperback)
  • All (10) from $1.99   
  • New (1) from $23.58   
  • Used (9) from $1.99   

Overview

"The core technologies of Ajax are quite straightforward; the hard part is applying them in the real world. Fortunately, the authors have been putting Ajax into practice since long before the term ‘Ajax’ was even coined. Enterprise AJAX offers excellent coverage of issues rarely explained to date, but frequently encountered by enterprise developers—including architecting of Ajax applications, and how to deal with such concerns as usability, security, and reliability."
-DR. MICHAEL MAHEMOFF, PH.D. author of Ajax Design Patterns (AjaxPatterns.org)

"Just when you thought you knew all you need to know about Ajax, Dave, Alexei, and Andre force open your cranium and unload a dumptruck full of Enterprise Ajax techniques, best practices, and hard-earned expert insight onto your brain. If you want to mix some serious Ajax into your serious business applications, the solid information and advice you get from this book will let you do so with confidence."
-BRENT ASHLEY, Web Developer and Ajax Pioneer

"I can’t think of any better authors for a book on Enterprise AJAX. The book is sure to be a valuable reference for developers the world over working on the next generation of web applications."
-MATT MCKENZIE, Software development manager, LiveCycle, Adobe Systems Inc.

"A great resource for writing quality, enterprise-level JavaScript."
-CHRISTIAN VAN EEDEN, Senior Application Specialist, Schenker DB Logistics

BUILD RELIABLE, SCALABLE, ENTERPRISE-CLASS WEB APPLICATIONS WITH AJAX
Writing for enterprise developers, architects, and user interface specialists, the authors explain why AJAX offers such great promise in large-scale development. Next, they systematically introduce today’s key AJAX techniques and components.

You'll walk through developing frameworks for building AJAX applications that combine data tables, Web forms, charts, search, and filtering: the very systems businesses depend on in CRM, ERP, BI, and beyond. Then, building on this strong foundation, the authors identify proven AJAX architectural patterns, and present case studies drawn from actual .NET and Java AJAX applications. Coverge includes

  • Using AJAX to implement Model-View-Controller (MVC) in the browser
  • Encapsulating user interface functionality to facilitate code reuse and reduce cross-browser development problems
  • Overcoming the unique security challenges associated with AJAX Web applications
  • Optimizing AJAX usability: the "back" button, caching, bookmarking, offline usage, and beyond

From security to scalability to project risk, this is the only book to cover all the issues facing AJAX developers in the enterprise. Whether you’re migrating legacy HTML interfaces or building new applications from scratch, you’ll find it absolutely indispensable.

ABOUT THE WEBSITE
www.enterpriseajax.com contains code samples, case studies, tutorials, live demos, and other AJAX resources.

ABOUT THE AUTHORS
David Johnson has many years of experience with AJAX-related technologies. He is co-founder and CTO of Nitobi, producer of a component library designed to speed AJAX development. Johnson has written widely for print and online publications, including JavaWorld.com and XML.com. Alexei White is Product Manager at Nitobi. Andre Charland, co-founder, President, and CEO of Nitobi, is an experienced Internet software developer.

Read More Show Less

Product Details

  • ISBN-13: 9780132242066
  • Publisher: Prentice Hall
  • Publication date: 8/8/2007
  • Pages: 496
  • Product dimensions: 7.00 (w) x 9.24 (h) x 1.15 (d)

Meet the Author

Dave Johnson Dave is the co-founder and CTO of Nitobi Software, a Vancouver-based AJAX component vendor and consulting firm. Dave spends most of his time on architecting and building high performance AJAX components for use in web-based applications. A core focus of Nitobi is building AJAX components and user interfaces that deliver real value to customers through increased productivity and higher efficiency. Dave has spoken around the world about AJAX and web development, including AJAXWorld 2006, XTech 2007, and JavaOne 2007. Dave has a bachelor of science degree in electrical engineering from the University of British Columbia and is completing his Ph.D. at Imperial College London.

Alexei White Alexei is a developer, designer, and user-experience advocate. As product manager for component tools at Nitobi and a long-time developer of AJAX components and applications, he tries to find ways to build web applications that are faster, cheaper, and that users love. He is the primary architect of RobotReplay (www.robotreplay.com), a next generation web-analytics tool by Nitobi and SayZu (www.sayzu.com), an AJAX-driven, up-and-coming web survey service. At Nitobi, he has been involved in the design and development of many mission-critical and largescale web applications with an emphasis on rich, AJAX-driven interfaces. Alexei has a bachelor’s degree in commerce from the University of British Columbia, and he lives in Vancouver.

Andre CharlandAndre Charland co-founded Nitobi in 1998 after working for several other Internet startups. As president and CEO, he is directly involved in software development and has successfully executed more than 100 development projects. He was also an early proponent of the building blocks of AJAX. Andre has spoken widely on AJAX, blogging, and web usability. He has been quoted internationally in the media on blogging for business and maintains his own blog at http://captainajax.com. Charland is on the board of BALLE BC and co-founder of the Social Tech Brewing Co.

Read More Show Less

Read an Excerpt

Excerpt from Enterprise AJAX: Strategies for Building High Performance Web Applications.

By David Johnson, Alexei White, Andre Charland
Published by Prentice Hall
ISBN-10: 0-13-224206-0
ISBN-13: 978-0-13-224206-6

Share and Enjoy:

E-mail this to a friend

Newsletters: Sign-Up & Save! Receive Special Offers, Free Chapters, Articles Reference Guide Updates, and plug into the pulse of what's happening in your corner of the industry by subscribing to InformIT newsletters! FREE coupon after sign-up!

Try Safari Books Online NOW! Access the largest fully searchable e-reference library for programmers and IT professionals!

Preface

We decided to write this book after being frustrated that there was still frustratingly little information available on some of the more advanced topics in AJAX development. This was mainly because people in the industry were still 'writing the book' on some of these topics, and despite a couple years in mainstream use, AJAX was still just creeping into the enterprise software stack. We wanted to create a resource of information that would be of interest to enterprise developers in this space. To that end, we have tried to bring together current development approaches with JavaScript and the other technologies that comprise AJAX, and present it in a way that would be familiar and amenable to any enterprise developer.WHY DO YOU NEED THIS BOOK?

We've given a considerable amount of time to discussing how to write JavaScript code in a way that should be familiar to Javaor C# developers to get you up and running quickly. In doing so we described AJAX development with familiar software design patterns at the forefront of our minds, and included information on some of the hottest topics in AJAX development such as security and offline storage. We also present readers with real solutions to building high performance AJAX applications not just through code optimization but through taking advantage of Internet infrastructure mainstays such as caching.

This book takes slightly different approach than other AJAX books in that we try to present a well rounded discussion – one that includes (of course) a lot of advice about programming, but also a fair amount of discussion on issues such as application usability, accessibility and internationalization. It also includes a framework for assessing risk in an AJAX development project and even spotlights some developers in the field using AJAX in real enterprise applications to see what can be learned from their experiences.

Most of this content has been derived from our years of first-hand experience in building AJAX applications and user-interface components over at Nitobi (http://www.nitobi.com). We feel that this represents an excellent cross-section of the knowledge we've acquired during this time, and should serve as a useful resource for any developer hoping to include AJAX in their development projects.WHO IS THIS BOOK FOR?

Enterprise AJAX has been written with intermediate to advanced server-side developers in mind (be they Java, Object Oriented PHP, or ASP.NET). Many of the concepts in the book have been adopted from the time honoured software engineering patterns introduced by the Gang of Four*, and readers would benefit from a basic understanding of software design patterns, or at least an interest in learning more about them - as they are applied throughout the book. We hope that delivering AJAX in a familiar way using patterns will help the more experienced developer understand the concepts and ideas more easily.

*Design Patterns: Elements of Reusable Object-Oriented Software, Gamma, Helm, Johnson, Vlissides, Addison-Wesley Professional, 0201633612.

Perhaps more important than understanding patterns, readers should ideally have at least a basic knowledge of JavaScript, HTML, and CSS. Even some understanding of

After reading this book developers should be familiar with the constituent parts that make up the AJAX technology stack and be very familiar with object oriented JavaScript development. Similarly, the reader will have a very good knowledge of the tools available to them to aid them in development AJAX applications and also have good knowledge of various AJAX issues such as security, usability and accessibility.WHAT'S IN STORE

We begin in Chapter 1 by covering the basics of what an AJAX application is and how the pieces all fit together. There we also discuss the evolution of the web application and some of the reasons that AJAX is becoming the preferred solution for web based applications.

In Chapter 2 we dive right into the AJAX technology stack. This includes critical information about the right way to program JavaScript and we pay special attention to Object Oriented JavaScript development, the Document Object Model, Cascading Stylesheets, Events, the

Chapter 3 builds on Chapter 2 and lays a foundation for understanding the major browser differences and with that knowledge looks at how one can build AJAX applications using the Model-View-Controller design pattern. In particular, we see how to write a client-side Model in JavaScript, how to generate HTML views from data and how to connect the Model and View using a JavaScript based Controller that relies on a publish-subscribe event system.

In Chapter 4 we are ready to look at how one may go about building an AJAX user-interface component for use in a web application. In particular we examine the differences between an imperative and declarative approach and look at some of the caveats of a declarative approach while presenting a complete example of building an AJAX based data-grid component.

At this point in the book we begin looking at some of the overarching goals and problems with AJAX development. Chapter 5 specifically looks at issues throughout the software development lifecycle that are unique to AJAX from application design to testing to deployment. Readers should leave this chapter with a very good idea of various AJAX performance problems as well as many of the tools that are useful from the start to end of any AJAX development project.

Chapter 6 introduces the reader to various architectural issues surrounding AJAX development. This includes investigating asynchronous messaging patterns, approaches to server communication such as server push, caching, scaling, and offline AJAX. While many of these are common to any web-based application we approach these issues with a unique AJAX perspective.

Building on Chapter 6, Chapter 7 discusses how AJAX can fit into a service oriented architecture using Web Services in the web browser as well as the different security problems that can arise when building an AJAX web application.

Chapter 8 starts the final section of the book by exploring some pertinent topics in usability, specifically where they apply to building AJAX applications for everyday users. Of interest in Chapter 8 are complete solutions to common problems such as the back-button problem as well as approaches to addressing accessibility and internationalization.

Chapter 9 is a hands-on exploration of some powerful AJAX user-interface patterns including in-place editing, master-detail, live forms, and drag and drop. These are some of the core user-interface design patterns that developers should be aware of when building almost any AJAX application.

In Chapter 10 we shift gears and explore sources of risk in developing scalable enterprise-grade AJAX applications. This is likely the least explored topic in AJAX books but is equally important to the technology itself when considering building a new application.

To wrap things up, in Chapter 11 we look at some actual AJAX implementations in demanding enterprise environments. We speak to the developers and hear what they did right, wrong, and what they would do differently next time.

All in all, we hope this will give you a new perspective on AJAX development, and most of all that you come away with some new skills to bring to your development projects.

Copyright © 2007 Pearson Education. All rights reserved.

Read More Show Less

Table of Contents

About the Authors

Chapter 1 AJAX and Rich Internet Applications

Chapter 2 AJAX Building Blocks

Chapter 3 AJAX in the Web Browser

Chapter 4 AJAX Components

Chapter 5 Design to Deployment

Chapter 6 AJAX Architecture

Chapter 7 Web Services and Security

Chapter 8 AJAX Usability

Chapter 9 User Interface Patterns

Chapter 10 Risk and Best Practices

Chapter 11 Case Studies

Appendix A The OpenAjax Hub

Index

Read More Show Less

Preface



Excerpt from Enterprise AJAX: Strategies for Building High Performance Web Applications.

Share and Enjoy:

E-mail this to a friend

Newsletters: Sign-Up & Save! Receive Special Offers, Free Chapters, Articles Reference Guide Updates, and plug into the pulse of what's happening in your corner of the industry by subscribing to InformIT newsletters! FREE coupon after sign-up!

Try Safari Books Online NOW! Access the largest fully searchable e-reference library for programmers and IT professionals!


Preface

We decided to write this book after being frustrated that there was still frustratingly little information available on some of the more advanced topics in AJAX development. This was mainly because people in the industry were still 'writing the book' on some of these topics, and despite a couple years in mainstream use, AJAX was still just creeping into the enterprise software stack. We wanted to create a resource of information that would be of interest to enterprise developers in this space. To that end, we have tried to bring together current development approaches with JavaScript and the other technologies that comprise AJAX, and present it in a way that would be familiar and amenable to any enterprise developer.

WHY DO YOU NEED THIS BOOK?

We've given a considerable amount of time to discussing how to write JavaScript code in a way that should be familiar to Java or C# developers to get you up and running quickly. In doing so we described AJAX development with familiar software design patterns at the forefront of our minds, and included information on some of the hottest topics in AJAX development such as security and offline storage. We also present readers with real solutions to building high performance AJAX applications not just through code optimization but through taking advantage of Internet infrastructure mainstays such as caching.

This book takes slightly different approach than other AJAX books in that we try to present a well rounded discussion – one that includes (of course) a lot of advice about programming, but also a fair amount of discussion on issues such as application usability, accessibility and internationalization. It also includes a framework for assessing risk in an AJAX development project and even spotlights some developers in the field using AJAX in real enterprise applications to see what can be learned from their experiences.

Most of this content has been derived from our years of first-hand experience in building AJAX applications and user-interface components over at Nitobi (http://www.nitobi.com). We feel that this represents an excellent cross-section of the knowledge we've acquired during this time, and should serve as a useful resource for any developer hoping to include AJAX in their development projects.

WHO IS THIS BOOK FOR?

Enterprise AJAX has been written with intermediate to advanced server-side developers in mind (be they Java, Object Oriented PHP, or ASP.NET). Many of the concepts in the book have been adopted from the time honoured software engineering patterns introduced by the Gang of Four*, and readers would benefit from a basic understanding of software design patterns, or at least an interest in learning more about them - as they are applied throughout the book. We hope that delivering AJAX in a familiar way using patterns will help the more experienced developer understand the concepts and ideas more easily.

*Design Patterns: Elements of Reusable Object-Oriented Software, Gamma, Helm, Johnson, Vlissides, Addison-Wesley Professional, 0201633612.

Perhaps more important than understanding patterns, readers should ideally have at least a basic knowledge of JavaScript, HTML, and CSS. Even some understanding of XML, XSLT or JSON would be helpful, although not essential. Furthermore, we expect that the reader is experienced with server-side programming in an object oriented language such as Java, C# or PHP.

After reading this book developers should be familiar with the constituent parts that make up the AJAX technology stack and be very familiar with object oriented JavaScript development. Similarly, the reader will have a very good knowledge of the tools available to them to aid them in development AJAX applications and also have good knowledge of various AJAX issues such as security, usability and accessibility.

WHAT'S IN STORE

We begin in Chapter 1 by covering the basics of what an AJAX application is and how the pieces all fit together. There we also discuss the evolution of the web application and some of the reasons that AJAX is becoming the preferred solution for web based applications.

In Chapter 2 we dive right into the AJAX technology stack. This includes critical information about the right way to program JavaScript and we pay special attention to Object Oriented JavaScript development, the Document Object Model, Cascading Stylesheets, Events, the XMLHttpRequest object as well as other issues relating to transferring data from the client to the server.

Chapter 3 builds on Chapter 2 and lays a foundation for understanding the major browser differences and with that knowledge looks at how one can build AJAX applications using the Model-View-Controller design pattern. In particular, we see how to write a client-side Model in JavaScript, how to generate HTML views from data and how to connect the Model and View using a JavaScript based Controller that relies on a publish-subscribe event system.

In Chapter 4 we are ready to look at how one may go about building an AJAX user-interface component for use in a web application. In particular we examine the differences between an imperative and declarative approach and look at some of the caveats of a declarative approach while presenting a complete example of building an AJAX based data-grid component.

At this point in the book we begin looking at some of the overarching goals and problems with AJAX development. Chapter 5 specifically looks at issues throughout the software development lifecycle that are unique to AJAX from application design to testing to deployment. Readers should leave this chapter with a very good idea of various AJAX performance problems as well as many of the tools that are useful from the start to end of any AJAX development project.

Chapter 6 introduces the reader to various architectural issues surrounding AJAX development. This includes investigating asynchronous messaging patterns, approaches to server communication such as server push, caching, scaling, and offline AJAX. While many of these are common to any web-based application we approach these issues with a unique AJAX perspective.

Building on Chapter 6, Chapter 7 discusses how AJAX can fit into a service oriented architecture using Web Services in the web browser as well as the different security problems that can arise when building an AJAX web application.

Chapter 8 starts the final section of the book by exploring some pertinent topics in usability, specifically where they apply to building AJAX applications for everyday users. Of interest in Chapter 8 are complete solutions to common problems such as the back-button problem as well as approaches to addressing accessibility and internationalization.

Chapter 9 is a hands-on exploration of some powerful AJAX user-interface patterns including in-place editing, master-detail, live forms, and drag and drop. These are some of the core user-interface design patterns that developers should be aware of when building almost any AJAX application.

In Chapter 10 we shift gears and explore sources of risk in developing scalable enterprise-grade AJAX applications. This is likely the least explored topic in AJAX books but is equally important to the technology itself when considering building a new application.

To wrap things up, in Chapter 11 we look at some actual AJAX implementations in demanding enterprise environments. We speak to the developers and hear what they did right, wrong, and what they would do differently next time.

All in all, we hope this will give you a new perspective on AJAX development, and most of all that you come away with some new skills to bring to your development projects.


Copyright © 2007 Pearson Education. All rights reserved.

Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star

(0)

4 Star

(0)

3 Star

(0)

2 Star

(0)

1 Star

(0)

Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation

Reminder:

  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

 
Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously

    If you find inappropriate content, please report it to Barnes & Noble
    Why is this product inappropriate?
    Comments (optional)