Advocacy
Dojo (HowTo)
Reference
Markets
Museum
News
Other
|
Resource Management is changing in OS X and Carbon. These resource changes are coming soon -- actually, they will come to Sonata first, then OS X later. If you don't know what resources are, then read Hack : What is a Resource or Innovation : File Forks to get what these things are and to understand a little about how (why) they work. There will still be traditional resources, just like now -- but the way they are bundled in with Applications is changing (expanding). In fact, the way that you "package" an Application (with all the code and resources) is being radically improved. The Old WayIn the early days, Mac Apps were very simple. What the user sees = Application. There was one Application that the user saw, and it did everything. People that wanted to move an Application would just move it, and everything to do with that Application would move as well (it was self-contained). Everything you would want to contain for an App was in that single file. Things were simple and pure. Well times they have been a changin'. The problem was that a single file (Application) couldn't contain everything that a user might need. So things grew, and grew, and grew. Now days a single Application usually a folder, that contains many parts of the Application, some plug-ins, some parts, and so on. It is big, messy, and worst of all that isn't all of it -- some parts of an Application can be stuffed into the extensions folder (shared libraries) or put elsewhere on the system at install time. When you copy a folder, you may not get those parts, and so your Application is broken, some installers may remove those shared libraries, which can break another Application, and so on. The Mac is almost behaving as poorly as Windows. And we need even MORE complexity and power for building future Applications than the mess we already have. So now it is time (or well over time) to make things easy again. The New Way (called a Package)So Apple is bringing back the single Application. What the user sees = Application. Now of course, Apple isn't going to be able to force users to cram everything into one file again -- that would be ugly and bad, and you can't turn back the clock. But Apple can make it look like that, even when there is really a whole hierarchy (directory tree) containing an Application. Apple created a solution that was a very nice hybrid of the way that NeXT did things, combined with the way the Mac does things -- and we get something that is better than either. Apple will use a special bit for a folder, which tells the folder that it is a special hierarchy of folders that will contain all the proper parts that the System wants for a single Application. What will truly be there, behind the facade of a single Application, is really the following:
What this hierarchy gives users, and programmers, are many new features.
ConclusionBasically what all this means is that Applications will just be magic for users and programmers. Programmers just bind in all the things that they need to work. New Resources (Application binding) use the best of the NeXT way -- but is still compatible with Macs, old resources, and you can do more than you could before. Things should be even more transparent for users, because of Mac advantages as well, and you can still encapsulate file fragments into a single file. It will be far harder to break programs by deleting a component (as a programmer or user). This system is far more versatile than the current Mac way. And this system is more standard, and is more likely to work across networks since any filing system can understand what is going on. This is truly the best of both worlds. It is very rare that you can get a Win-win (win-win-win-win...) type of improvement in any sort of engineering -- but this appears to be one of those rare cases.
|