Your SlideShare is downloading. ×
Building Desktop RIAs With PHP And JavaScript
Building Desktop RIAs With PHP And JavaScript
Building Desktop RIAs With PHP And JavaScript
Building Desktop RIAs With PHP And JavaScript
Building Desktop RIAs With PHP And JavaScript
Building Desktop RIAs With PHP And JavaScript
Building Desktop RIAs With PHP And JavaScript
Building Desktop RIAs With PHP And JavaScript
Building Desktop RIAs With PHP And JavaScript
Building Desktop RIAs With PHP And JavaScript
Building Desktop RIAs With PHP And JavaScript
Building Desktop RIAs With PHP And JavaScript
Building Desktop RIAs With PHP And JavaScript
Building Desktop RIAs With PHP And JavaScript
Building Desktop RIAs With PHP And JavaScript
Building Desktop RIAs With PHP And JavaScript
Building Desktop RIAs With PHP And JavaScript
Building Desktop RIAs With PHP And JavaScript
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Building Desktop RIAs With PHP And JavaScript

2,555

Published on

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,555
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
49
Comments
0
Likes
3
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Building Desktop RIAs with PHP and JavaScript Ed Finkler • funkatron.com • @funkatron php|tek 09
  • 2. What to expect This is mainly a JavaScript talk Compare JS and PHP jQuery framework for JS examples This is mainly a desktop app dev talk Diffs between server app dev and desktop app dev Examples of desktop app <-> server app interaction
  • 3. Web runtimes A browser engine environment used for building quot;localquot; apps
  • 4. Current web runtimes AIR (adobe.com/go/air) Titanium (titaniumapp.com) Palm webOS (developer.palm.com)
  • 5. We'll use AIR But others bear examination
  • 6. JavaScript in AIR Can use (almost) any available JS libs/frameworks No cross-domain restrictions security restrictions in app sandbox ( eval() ) Access AIR APIs Access standard Flash APIs Use compiled AS3 libs
  • 7. PHP vs JavaScript JavaScript is fundamentally different JS is a functional language closures first-order functions Object model is totally different
  • 8. PHP vs JavaScript Everything in JS is an object Arrays are not associative – objects serve as associative array equivalents No include/require statements available Event-driven model/asynchronous actions Further reading: – JavaScript: The Definitive Guide, David Flanagan – JavaScript: The Good Parts, Douglas Crockford
  • 9. Desktop vs Server-side PHP stack is built up/torn down every time mem leaks not much of an issue exec time < a few seconds max almost always synchronous calls Desktop apps are persistent exec time can be hours or days mem leaks a HUGE issue almost always asynchronous calls
  • 10. JavaScript frameworks Some stuff is a huge pain without the help of a framework Lots of choices Must play well with AIR eval usage gotchas
  • 11. jQuery pwnz yoo jQuery is teh awesome but you can use anything
  • 12. PHP is your server-side buddy PHP tubby jedi master JavaScript hyper frontman Use 5.2 at least (you are, right?) adds native JSON encoding/decoding
  • 13. PHP talking to AIR Serve data structures instead of HTML Use JSON Use JSON USE JSON do not use XML (if you can avoid it) set the correct mime type (application/json)
  • 14. Example 1: PHP duz yer math Async calls using jQuery AJAX methods Communicate via JSON Flash Zee Cloud web server Webkit
  • 15. Example 2: PHP 'shops yer pics Uploading via Flash APIs JSON based communication Flash Zee Cloud web server Webkit
  • 16. Example 3: DearZend.com JSON based communication Desktop alternative to web front-end Flash Zee Cloud web server Webkit
  • 17. Additional resources Adobe AIR for JavaScript Developers Pocketguide http://www.tostring.org/ Developing Adobe® AIR™ Applications with HTML and Ajax http://short.ie/ggd9tc Titanium http://titaniumapp.com/ Titanium Forums http://short.ie/d4ponk Searchatron Source http://short.ie/g9z6qt DearZend.com source http://github.com/funkatron/dearzend-server http://github.com/funkatron/dearzend-client
  • 18. Questions? @funkatron • http://funkatron.com • joind.in/198

×