Ajax Programming Pattern Podcasts
Eine sehr schöne Reihe von Ajax Programming Pattern Podcasts sind auf dem Blog “Software As She’s Developed” von Michael Mahemoff veröffentlicht worden. Michael Mahemoff hat das Wiki AjaxPatterns erstellt und vor kurzem ein daraus resultierendes Buch “Ajax Design Patterns” geschrieben. Die in dem Buch beschriebenen Ajax Patterns stellt er auch in dieser vierteiligen Podcast Reihe vor. Also am besten einfach die vier Teile herunterladen, oder auch nur die Teile die einen interessieren, und während der Fahrt im Auto oder in der Bahn mal anhören.
Podcast Link: Download (33,8 MB | 73 Min)
Themen:
- RPC Service Expose web services as Remote Procedural Calls (RPCs). (Note: In the book and wiki, REST appears before RPC.)
- RESTful Service Expose web services according to RESTful principles.
- HTML Response Have the server generate HTML snippets to be displayed in the browser.
- Semantic Response Have the server respond with abstract, semantic, data.
- Plain-Text Message Pass simple messages between server and browser in plain-text format.
- XML Message Pass messages between server and browser in XML format.
- JSON Message Pass messages between server and browser in Javascript Object Notation (JSON) format.
Podcast Link: Download (18,3 MB | 40 Min)
Themen:
- Call Tracking Accommodate busy user behaviour by allocating a new XMLHttpRequest object for each request. See Richard Schwartz’s blog entry.Note: Pending some rewrite to take into account request-locking etc.
- Periodic Refresh The browser refreshs volatile information by periodically polling the server.
- Submission Throttling Instead of submitting upon each Javascript event, retain the data in a local buffer and upload it periodically.
- Explicit Submission Instead of submitting upon each Javascript event, require the user to explicitly request it, e.g. submit upon clicking a button.
- Distributed Events Keep objects synchronised with an event mechanism.
- Cross-Domain Proxy Allow the browser to communicate with other domains by server-based mediation.
Podcast Link: Download (13,3 MB | 29 Min)
Themen:
DOM Population:
- XML Data Island Retain XML responses as “XML Data Islands”, nodes within the HTML DOM.
- Browser-Side XSLT Apply XSLT to convert XML Messages into XHTML.
- Browser-Side Templating Produce browser-side templates and call on a suitable browser-side framework to render them as HTML.
Code reuse:
- Server-Side Code Generation Automatically generate HTML and Javascript from server-side code.
- Cross-Browser Component Create cross-browser components, allowing programmers to reuse them without regard for browser compatibility.
Podcast Link: Download (11,5 MB | 33 Min)
Themen:
- Browser-Side Cache Maintain a local cache of information.
- Guesstimate Instead of grabbing real data from the server, make a guesstimate that’s good enough for most user’s needs. ITunes Download Counter, GMail Storage Counter.
- Multi-Stage Download Quickly download the page structure with a standard request, then populate it with further requests.
- Predictive Fetch Anticipate likely user actions and pre-load the required data.
- Fat Client Create a rich, browser-based, client by peforming remote calls only when there is no way to achieve the same effect in the browser.
- Pseudo-Threading Use a timer and a worker queue to process jobs without the blocking application flow.
- Code Compression Compress code on the server, preferably not on the fly.
