The i-Technology Media!
Register | Log in
   
 
.NET  ·  AJAX  ·  CLOUD  ·  ECLIPSE  ·  FLEX  ·  OPEN WEB  ·  iPHONE  ·  JAVA  ·  LINUX  ·  OPEN SOURCE  ·  ORACLE  ·  PBDJ  ·  SEARCH  ·  SILVERLIGHT  ·  SOA  ·  VIRTUALIZATION  ·  WEB 2.0  ·  WIRELESS  ·  XML
Comments
Drool, Britannia? Is the UK Failing the Cloud?
By Roger Strukhoff
Richard Davies wrote: The UK has a good crop of technology pioneers in cloud computing - for example ElasticHosts, FlexiScale, Flexiant, OnApp - and also some strong government initiatives such as G-Cloud. We will have to see whether this kind of technical leadership converts into swift mass-market adoption or not.
Jan. 8, 2012 11:38 AM EST
read more & respond »
Cloud Expo on Google News
Did you read today's front page stories & breaking news?

Cloud Expo & Virtualization 2011 West
Keynotes
Oracle
Opening Keynote | An Enterprise Cloud for Business-Critical Applications
Abiquo
Day 2 Keynote | The Enterprise Cloud Tightrope - Balancing for Success
Akamai
Day 3 Keynote | The DNA of an Enterprise Cloud
DIAMOND SPONSOR:
Oracle
Many Clouds, Many Choices'Cloud
PLATINUM PLUS SPONSORS:
Abiquo
Enterprise Cloud Best Practices - Town Hall - Join the discussion…
PLATINUM SPONSORS:
Intel
Progressing Toward the Federated, Automated and Client-Aware Cloud
New Relic
How to build an app with Twitter-like throughput
Rackspace
Computing in the Cloud Era
GOLD SPONSORS:
Gale Technologies
Practical Cloud Migration
IBM
Re-think IT. Re-inventing Business.
Intel/McAfee
Identity Driven Security in the Cloud
PerspecSys
Hackers Hackers Everywhere, Is My Public Cloud That Safe?
Red Hat
Unlock the Value of the Cloud
SHI
Mission Critical Applications and the Cloud - Myth or Reality?
SoftLayer
Not Your Grandpa's Cloud
Terremark
Integrating Enterprise Clouds
VMware
Upgrade to a vCloud
POWER PANELS:
Cloud Expo Silicon Valley: CTO Power Panel
Cloud Expo Silicon Valley: CEO Power Panel
Cloud Expo Silicon Valley: Cloud SuperStars Panel
Cloud Expo Silicon Valley: CloudNOW Panel
Click For 2010 West
Event Webcasts
Cloud Expo & Virtualization 2011 East
DIAMOND SPONSOR:
Dell
Dell & VMware Deliver the Enterprise Hybrid Cloud
PLATINUM PLUS SPONSORS:
Abiquo
Are Financial Services Organizations Risking Security by Avoiding Cloud Computing?
Oracle
From Consolidation to Enterprise Private PaaS
PLATINUM SPONSORS:
Intel
Driving the Transformation to Next Generation Cloud Data Centers
Rackspace
The Inevitability of an Open Cloud
GOLD SPONSORS:
CA Technologies
Follow YOUR path to Cloud Computing
Interxion
Who Keeps the Cloud in the Air?
Microsoft
Patterns for Cloud Computing
PerspecSys
War in the Clouds: Are you ready?
ServiceMesh
The Big Win: Stop Playing Small-Ball with Your Cloud Strategy
Terremark
Evaluating Enterprise Clouds
Xiotech
Cloud Storage: Myths and Realities
POWER PANELS:
Cloud Expo New York: CTO Power Panel
Cloud Expo New York: CEO Power Panel
Cloud Expo New York: CMO Power Panel
Cloud Expo New York: Wrap-Up Power Panel
Click For 2010 West
Event Webcasts
Live Google News by SYS-CON!
Top Three Links You Must Click On


Postback: DataStore Improvements and Dynamic Loading!

By: Charles Jolley
Sep. 17, 2009 01:00 AM

I just pushed a big bunch of changes to the public repository tonight, including a month’s worth of bug fixes and tweaks, along with a few major new changes.

I don’t normally write a blog post about every change we push to the repository.  But this push includes a fairly major API change.  Since SproutCore 1.0 means we’re making a commitment to our API, all changes we make need to be carefully planned and well documented.

What Changed and Why

So far the SproutCore 1.0 API has worked really well.  One spot that trips up everyone, however, is in the DataStore framework; in the interface between SC.Store.find()/findAll() and the fetch() method in the data source .  It was really each prior to this change to write the fetch() method in your app data source in such a way that it would break find()/findAll() entirely.  This is evil.

Here’s how we fixed it:

  1. To find multiple records in the store, you must now always construct a Query object.  A Query object is how tell the store what type of records to return and any special conditions (using the SproutCore Query Language).
  2. We got rid of findAll().  Now there is just SC.Store.find().  Pass a recordType/id pair to this method and it will return a single object.  Pass a Query object, and find() will return all records that match it.
  3. The return value of fetch() in your DataSource is no longer important.  Instead, you need to invoke a callback on the store telling the store when you are finished with a query.  This is the same way you handle records in a DataSource so it is actually more consistent.

Together these changes are fairly minor but they really clean up this part of the API.  The upshot is that if you update to the latest code, it will probably break your SproutCore 1.0 app until you make it work with this new API.

The good news is, this is the very last API change I know about for the SproutCore 1.0 framework.  All we have left to do now is to fix a few remaining bugs.

And finally: Better Documentation!

To help you along that process, I have nearly completed writing a brand new DataStore Programming Guide over on the wiki.  This guide describes the new DataStore APIs in some detail to help keep you moving.  There are a few bits in the DataStore section still missing; but I’ll hopefully get that in tomorrow.

Checkout the DataStore Programming Guide on the Wiki »

Other Improvements

We did slip in some nice improvements and enhancements in this postback you will probably love.

  • SC.Record.toMany() and toOne() now fully support bi-direction relationships!  This means you can setup two properties as the inverse of the other.  When you modify one, it will automatically change the other one too.  Hurray for ORM!
  • The build tools now support Ruby 1.9.  Yay!  They also will use “Thin” if you have it installed, instead of Mongrel or Webrick.  This can make your build tools significantly faster at times.
  • The build tools and framework now also support an experimental form of dynamic framework loading.  Now instead of loading all of your app code up front, you can split your app into pieces and load some parts on-demand.  This can improve your initial load time.  In the future this will probably develop into full CommonJS SecurableModule support.

We’ve also added some nifty new sample apps, such as Signup, which demonstrates how to use Responders and statecharts to organize the overall flow of your code.

The end is in sight for SproutCore 1.0.  It’s a hard drive to the finish line now.  If only my wrists hold out… :-)

Read the original blog entry...

Published Sep. 17, 2009— Reads 307
Copyright © 2009 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
About Charles Jolley
Charles Jolley is the creator of SproutCore and CEO of Sproutit, which provides consulting and software services for building SproutCore applications on the web. He has helped build some of the most popular RIAs on the web today.

Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021

SYS-CON Featured Whitepapers

ADS BY GOOGLE

Breaking Java News
Richard F. Aster, Jr. Passes Away
CFIA/Health Hazard Alert - Certain Country Morning Brand Beef Burger & No Name Brand Club Pack Beef Steakettes may Contain E. coli O157:H7 Bacteria
National Coalition Holds Prescription Drug Take-back Day in Palm Springs Ahead of Pain Medicine Scientific Meeting
Media Advisory/REMINDER: Astronaut Chris Hadfield Talks About His Upcoming Mission at AAAS Family Science Days in Vancouver

ADVERTISE   |   MAGAZINE SUBSCRIPTIONS   |   FREE BREAKING-NEWSLETTERS!   |   SYS-CON.TV   |   BLOG-N-PLAY!   |   WEBCAST   |   EDUCATION   |   RESEARCH

.NET Developer's Journal - .NETDJ   |   ColdFusion Developer's Journal - CFDJ   |   Eclipse Developer's Journal - EDJ   |   Enterprise Open Source Magazine - EOS
Open Web Developer's Journal - OPENWEB   |   iPhone Developer's Journal - iPHONE   |   Virtualization - Virtualization   |   Java Developer's Journal - JDJ   |   Linux.SYS-CON.com
PowerBuilder Developer's Journal - PBDJ   |   SEO / SEM Journal - SJ   |   SOAWorld Magazine - SOAWM   |   IT Solutions Guide - ITSG   |   Symbian Developer's Journal - SDJ
WebLogic Developer's Journal - WLDJ   |   WebSphere Journal - WJ   |   Wireless Business & Technology - WBT   |   XML-Journal - XMLJ   |   Internet Video - iTV
Flex Developer's Journal - Flex   |   AJAXWorld Magazine - AWM   |   Silverlight Developer's Journal - SLDJ   |   PHP.SYS-CON.com   |   Web 2.0 Journal - WEB2
Apache   |   CMS   |   CRM   |   HP   |   Oracle Journal   |   Perl   |   Python   |   Red Hat   |   Ruby on Rails   |   SAP   |   SaaS

SYS-CON MEDIA:   ABOUT US   |   CONTACT US   |   COMPANY NEWS   |   CAREERS   |   SITE MAP
SYS-CON EVENTS:   |  AJAXWorld Conference & Expo  |  iPhone Developer Summit  |  Cloud Computing Conference & Expo  |  SOA World Conference & Expo  |  Virtualization Conference & Expo
INTERNATIONAL SITES:   India  |  U.K.  |  Canada  |  Germany  |  France  |  Australia  |  Italy  |  Spain  |  Netherlands  |  Brazil  |  Belgium
 Terms of Use & Our Privacy Statement     About Newsfeeds / Video Feeds
Copyright ©1994-2008 SYS-CON Publications, Inc. All Rights Reserved. All marks are trademarks of SYS-CON Media.
Reproduction in whole or in part in any form or medium without express written permission of SYS-CON Publications, Inc. is prohibited.
 
close this window