Apple Unveils Extra Leopard-isms To Developers
devilsecret writes to point out that some of the new Apple capabilities for developers on Leopard have been unveiled. The most interesting parts appear to be the opening of more of iLife to other programs, and the inclusion of Ruby on Rails.
Here's the link to Apple's page describing the developer features: http://developer.apple.com/leopard/overview/index. html
'Every story, if continued long enough, ends in death.' --Ernest Hemingway
VNUnet article
Apple Insider post
Apple's Developer Overview site
In the jump from 10.4 to 10.5 you get:
You get built in backup and restore software
You get automatic backup functionality
You get virtual desktops
You get built in remote presentation and remote control software
You get new Widgets plus the ability to turn any webpage into a widget
You get a new mail program with increased planning functionality
New group management functionality in Mail and in iCal
Under the hood you get:
New animation libraries
New 64 bit CPU optimizations
New resolution independent ui
You pay for this stuff because you find it useful.
GPL Deconstructed
FWIW, I also have to mention that the upgrade from 2000 to XP was also technically a minor revision (2000 is Windows NT 5.0, XP is Windows NT 5.1).
It should be noted that one of the reasons Apple is shipping Ruby on Rails is that Rails was developed on Macs, all the major Rails developers use Macs, and the preferred editor is a Mac application called Textmate.
"Sufferin' succotash."
You forgot a biggie...
:) I think this is turned on by default and is an opt-out option for your code.
Now in Leopard, the Objective-C runtime has been updated to include a thoroughly modern and high performance garbage collection system, making memory management a thing of the past.
Garbage collection is included as part of the Obj-C 2.0 runtime... Say bye bye to most memory leaks..
Just when you make it idiotproof, some idiot builds a better idiot.
A couple of notes:
RoR is simply going to be included. Nothing more at the moment on that count. Apple already has a easy-to-use database solution for Objective-C applications in CoreData (though I wish they would make it multi-user/computer capable).
And PHP is already included in the OS, you just have to turn it on. This is somewhat good from a security standpoint, but I wish they would put in a button to turn it on (next to the one to turn on Apache).
On PowerPC you'd only want applications that actually need to do 64-bit math or address more than 2 or 3 GB of memory to be 64-bit, but for x86 it's a different story because the extra registers that are available in 64-bit mode may make applications that have no use for 64-bitness in itself a lot faster.
So I'm curious as to what developers will do. Hopefully, they'll evaluate the performance of their code and compile for 32 or 64 bits depending on which is faster. But of course you want your app to work on older Macs too, so you may need to include:
18 MB may not seem so bad at some point in the future. :-)
Ars Technica said Quartz 2D Extreme was there and possible to use, just not enabled because it probably hadn't been completely worked out by Apple yet.
But given fact #1, that Ars said that Q2DE is basically like running your whole desktop as an OpenGL scene, and fact #2, that Leopard will have "resolution-independent interfaces," I'm betting that Q2DE is fully running and implemented in 10.5.
safari is written in C++
And PHP is already included in the OS, you just have to turn it on.
Minor correction, but, there's nothing you need to do in order to 'turn PHP on' with OS X. Pop open the command line and type 'php -v,' and, like any application, you'll notice it's always there for you to use.
It's also configured with Apache by default, so you just have to start apache and you're able to serve PHP documents. It's PHP4, though.
This is admittedly off-topic, but...the fix for the "error dialog about not having a manifest file to load" is to generate a manifest (linker setting and also the new "manifest tool") and use the new "assembly" based deployment model. The release builds of CRT in VS 2005 have a runtime check which throws an exception if you don't have either a manifest resource (embedded) or .manifest file (detached) for your application. In other words, M$ is FORCING you to use their new deployment model now, whether you want to or not. And just for the sake of doing it - the .DLL's themselves don't care how they are deployed as they still run on pre-manifest systems.
Yay assemblies! They're like frameworks, except without versioning and without the development time support! More effort to build and you get nothing out of it.