EOF Wiki: Difference between revisions

From EOFWiki
Jump to navigationJump to search
 
(19 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Welcome ==
== Welcome ==


This is the [[Objective-C EOF]] Wiki. It started as the [[MulleEOF]] wiki but soon after setting it up, it seemed to be a good idea to make it a more general EOF Wiki. People looking for an [[Objective-C EOF]] clone: this is the place to be.  
This is the [[Objective-C EOF]] Wiki. It started as the [[MulleEOF]] wiki but soon after setting it up, it seemed to be a good idea to make it a more general EOF Wiki. If you have an [[Objective-C EOF]] clone or are looking for one: this is the place to be.  


This Wiki is <b>wholly</b> unconcerned about Java-EOF as available through WebObjects 5 from Apple.
This Wiki is <b>wholly</b> unconcerned about Java-EOF as available through WebObjects 5 from Apple.From now on all references to [[EOF]] will always mean [[Objective-C EOF]] and Java will be ignored.


From now on all references to [[EOF]] will always mean [[Objective-C EOF]] and Java will be ignored.
If you are not that familiar with [[EOF]] and it's history, you can read a good historical overview on [http://en.wikipedia.org/wiki/Enterprise_Objects_Framework Wikipedia].  
 
If you are not that familiar with [[EOF]] and it's history, you can read a good historical overview on [http://en.wikipedia.org/wiki/Enterprise_Objects_Framework Wikipedia].


<i>Because of Spambots, you will have to register and confirm your email address, before you can change anything.</i>
<i>Because of Spambots, you will have to register and confirm your email address, before you can change anything.</i>
Line 14: Line 12:


EOF is commonly referred to as a database abstraction layer. And it is also a toolkit of various components that can be used independently. Even if your application doesn't access a database, it can pay off to get familiar with [[EOF]].
EOF is commonly referred to as a database abstraction layer. And it is also a toolkit of various components that can be used independently. Even if your application doesn't access a database, it can pay off to get familiar with [[EOF]].
[[Image:Layers.png]]
[[EOF]] traditionally has been separated in three frameworks
[[EOF]] traditionally has been separated in three frameworks


Line 20: Line 21:
* [[EOAccess]] for the concrete use of [[EOControl]]. It contains an [[EOObjectStore]] subclass, that uses one or multiple SQL databases for persistance
* [[EOAccess]] for the concrete use of [[EOControl]]. It contains an [[EOObjectStore]] subclass, that uses one or multiple SQL databases for persistance


== Articles ==
Here's a look at the classes contained in those frameworks:


[[Image:EOFClassesLayered.png]]


Articles about [[EOControl]]
Download the [http://www.project-titmouse.de/project-titmouse/EOFClassesLayered.pdf PDF] to look at it in detail.


* What problems can [[EOFault]] solve for you ?
== Articles ==
* What is the [[entity concept]] in [[EOControl]] ?


Articles about [[EOInterface]]
{{:Articles}}
* [http://www.mulle-kybernetik.com/software/MulleEOInterface/ChangePropagation.pdf How changes in EOEnterpriseObjects propagate to EOAssociations' subjectChanged] details the control flow starting with <tt>[self willChange]</tt>
* [http://www.mulle-kybernetik.com/software/MulleEOInterface/NIBOwnageEOInterface.pdf Who retains who] when a NIB is loaded


== Documentation ==
== Documentation ==


Documentation for EOF is available from Apple on the developer site.
{{:Documentation}}
 
* [http://developer.apple.com/documentation/LegacyTechnologies/WebObjects/WebObjects_4.5/System/Library/Frameworks/EOControl.framework/ObjC_classic/EOControlTOC.html EOControl API Reference]
* [http://developer.apple.com/documentation/LegacyTechnologies/WebObjects/WebObjects_4.5/System/Library/Frameworks/EOAccess.framework/ObjC_classic/EOAccessTOC.html EOAccess API Reference]
* [http://developer.apple.com/documentation/LegacyTechnologies/WebObjects/WebObjects_4.5/System/Library/Frameworks/EOInterface.framework/ObjC_classic/EOInterfaceTOC.html EOInterface API Reference]
 
Also some of these links may be helpful, as EOF became a part of WebObjects at some point in history
 
* [http://developer.apple.com/documentation/LegacyTechnologies/WebObjects/WebObjects_4.5/webobjects.html WebObjects 4.5]
* [http://developer.apple.com/documentation/LegacyTechnologies/WebObjects/WebObjects_4.5/System/Documentation/Developer/WebObjects/DevGuide/DevGuideTOC.html WO Developers Guide]
* [http://developer.apple.com/documentation/LegacyTechnologies/WebObjects/WebObjects_4.5/System/Library/Frameworks/WebObjects.framework/ObjC_classic/WebObjectsTOC.html WO API Reference]
* [http://developer.apple.com/documentation/Cocoa/Reference/Foundation/ObjC_classic/index.html Foundation API Reference]
* [http://developer.apple.com/referencelibrary/LegacyTechnologies/idxWebObjects-date.html Legacy Docs]


== Implementations ==
== Implementations ==
Line 54: Line 41:
* [[EOF 4.5.1]] by Apple  
* [[EOF 4.5.1]] by Apple  


and the clones  
and the clones and relatives of EOF


* [[AJRDatabase]]
* [[AJRDatabase]]
Line 67: Line 54:
== Related Projects and other Resources ==
== Related Projects and other Resources ==


* [[BDControl]] qualifier and sort ordering
{{:RelatedProjects and Resources}}
* [[MulleConnectInspector]] for Interface Builder 2.4
* [http://www.omnigroup.com/mailman/listinfo/eof EOF Mailinglist] hosted by the Omnigroup extremely low traffic

Latest revision as of 14:20, 15 January 2008

Welcome

This is the Objective-C EOF Wiki. It started as the MulleEOF wiki but soon after setting it up, it seemed to be a good idea to make it a more general EOF Wiki. If you have an Objective-C EOF clone or are looking for one: this is the place to be.

This Wiki is wholly unconcerned about Java-EOF as available through WebObjects 5 from Apple.From now on all references to EOF will always mean Objective-C EOF and Java will be ignored.

If you are not that familiar with EOF and it's history, you can read a good historical overview on Wikipedia.

Because of Spambots, you will have to register and confirm your email address, before you can change anything.

Description

EOF is commonly referred to as a database abstraction layer. And it is also a toolkit of various components that can be used independently. Even if your application doesn't access a database, it can pay off to get familiar with EOF.

Layers.png

EOF traditionally has been separated in three frameworks

  • EOControl the abstraction layer that provides the groundwork for the editing and persistance of objects
  • EOInterface the GUI component, that ties AppKit to EOControl
  • EOAccess for the concrete use of EOControl. It contains an EOObjectStore subclass, that uses one or multiple SQL databases for persistance

Here's a look at the classes contained in those frameworks:

EOFClassesLayered.png

Download the PDF to look at it in detail.

Articles

Articles about EOAccess

Articles about EOControl

Articles about EOInterface

Some of these articles are not part of this Wiki and therefore also not part of the CC license.

Documentation

Documentation for EOF is available from Apple on the developer site.

Also some of these links may be helpful, as EOF became a part of WebObjects at some point in history

Most of these links are not part of this Wiki and therefore also not part of the CC license.

Implementations

The original

and the clones and relatives of EOF


It'd be good to have a feature comparison chart at some point in time.

Related Projects and other Resources