Ajax Design Patterns: Creating Web 2.0 Sites with Programming and Usability Patterns (英語) ペーパーバック – 2006/7/9
Kindle 端末は必要ありません。無料 Kindle アプリのいずれかをダウンロードすると、スマートフォン、タブレットPCで Kindle 本をお読みいただけます。
Ajax Design Patterns shows you best practices that can dramatically improve your web development projects. It investigates how others have successfully dealt with conflictingdesign principles in the past and then relays that information directly to you.
The patterns outlined in the book fall into four categories:
- Foundational technology: Examines the raw technologies required for Ajax development
- Programming: Exposes techniques that developers have discovered to ensure their Ajax applications are maintainable
- Functionality and usability: Describes the types of user interfaces you'll come across in Ajax applications, as well as the new types of functionality that Ajax makes possible
- Development: Explains the process being used to monitor, debug, and test Ajax applications
Ajax Design Patterns will also get you up to speed with core Ajax technologies, such as XMLHttpRequest, the DOM, and JSON. Technical discussions are followed by code examples so you can see for yourself just what is-and isn't-possible with Ajax. This handy reference will help you to produce high-quality Ajax architectures, streamline web application performance, and improve the userexperience.
Michael Mahemoff holds a PhD in Computer Science and Software Engineering from the University of Melbourne, where his thesis was "Design Reuse in Software Engineering and Human-Computer Interaction." He lives in London and consults on software development issues in banking, health care, and logistics.
"Michael Mahemoff's Ajax Design Patterns is a truly comprehensive compendium of webapplication design expertise, centered around but not limited to Ajax techniques. Polished nuggets of design wisdom are supported by tutorials and real-world code examples resulting in a book thatserves not only as an intermediate to expert handbook but also as an extensive reference for building rich interactive web applications."
--Brent Ashley, remote scripting pioneer
"Ajax Design Patterns fills the literary void that exists in AJAX design by using real examples of best practice to enhance your apps. As with most AJAX titles it's pretty intense and hardcore reading, but then if you're into AJAX you're probably pretty hardcore too. Thankfully, Ajax Design Patterns is one of the most organised books on any programming subject. It's a massive book, but you won't get lost as the chapters are sensibly divided up and the sound layout means there's nothing whatsoever to fear. The book gets inside what makes top apps like NumSum tick and there's even a look at the code of DHTML Lemmings thrown in for good measure!" .Net, October 2006商品の説明をすべて表示する
The majority of the book is the patterns grouped by foundational technology, programming patterns, functionality and usability patterns, and development patterns. The immense amount of patterns mentioned is a bit overwhelming to read from cover-to-cover (though I did this otherwise I would not have reviewed this book) though the benefit is to acquaint yourself with a plethora of interesting ideas (and several not-so-plausible) that could be beneficial to your Web 2.0 (this misnomer is more of a marketing term) development. The chapter of Development Patterns is a must read for developers discussing diagnosis and testing patterns.
I like the layout of each pattern with a Name, Goal Story, Problem Forces, Solution, Decisions, Real-World Examples, Alternatives and more. However, they really should have printed each pattern on the top of a new page instead of having it start at various places within the pages; this looks a bit tacky.
Be warned that the server-side code examples are in PHP (though almost all Ajax books tend to reference that so I do not mind). Other than that and certain layout issues I do not have many problems with this book (here is another book that could have benefited from a hardback edition). Though, I do think the Evidence (done by using three buttons to establish real-world evidence) was a bit arbitrary and sometimes silly (but I'll let you be the judge of that) and the book could have referenced more than six other books.
There are so many examples and references that all of these sites are a boon to building your software acumen (of course the rub is that relying on links in your book means that many of these will eventually be outdated). In fact the Appendix is the best resource I've seen (in print) for Ajax Frameworks and Libraries. I recommend this book to web developers who are serious about Ajax and learning existing and newer uses of this software paradigm.
The book's organization is logically laid out, providing a historical and academic profile of the technological foundations that gave rise to modern-day asynchronous programming. Michael then leads into the actual patterns, being grouped by function. Probably the most relevant to web developers are those related to into the various forms of web remoting, DOM manipulation, and next-gen visualization (i.e., drag-and-drop effects); while programming patterns geared for performance enhancement and code generation will whet the appetites of even the most advanced coders.
If, for no other reason, you buy this book it should be for any developer considering themselves to be cutting-edge should buy this book for the section on Chapter 9 on REST applications development. This in my opinion is the most well-rounded discussion of what RESTful production is(n't), and how to incorporate such architecture into your own web projects. Being a .NET developer, that platform's framework serves to both abstract my kind away from having to directly deal with such concepts, or Microsoft blatantly neglects to mention it at all. After scouring the Web for months looking for good content on REST, Michael lays it all out in easy to understand lingo and examples. I'm having the REST chapter photocopied and bronzed for my desk. It's that good.
The one thing I didn't dig too much about the book is its exclusive lean towards PHP for examples where server-side logic was needed. While other platforms like J2EE, .NET, Ruby on Rails and Cold Fusion are keenly cited for their contributions and capabilities, the vast majority of the code is in PHP. But this is just a personal quirk...I'm obviously not big on PHP.
But that minor preference aside, I've followed this book's development since its days as a wiki. It's an invaluable resource as your online development begins to get more complex in a demanding world expecting web apps with rich UIs and multifaceted formats (e.g., JSON, SOAP, XML, et al.). I find it to serve equally well as programmer's reference and architecture guide. I rarely rate any books a perfect score, but this certainly is deserving of such a nod.
This is truly a masterpiece, and one that no developer doing Web 2.0 work should be without.