* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Enterprise Object Framework
Microsoft Access wikipedia , lookup
Extensible Storage Engine wikipedia , lookup
Entity–attribute–value model wikipedia , lookup
Open Database Connectivity wikipedia , lookup
Functional Database Model wikipedia , lookup
Microsoft Jet Database Engine wikipedia , lookup
Concurrency control wikipedia , lookup
Relational model wikipedia , lookup
Clusterpoint wikipedia , lookup
ContactPoint wikipedia , lookup
Enterprise Object Framework What is EOF? Enterprise Objects Framework is a set of tools and resources that help you create applications that work with the most popular relational databases—or with your own custom data store. …Enterprise Objects Framework lets you design object-oriented database applications that are easy to build and maintain and that draw upon standard user interface features. [EOF Developer’s Guide.pdf] Problems Addressed SQL + Object Oriented Paradigm Reusability Maintainability Scalability Interactivity Portability Transaction Support Business Logic Implementation in 4GL Limited reuse Not maintainable Different implementations Poor data integrity Doesn’t scale well Implementation in DB Limited interactivity No back-end portability SQL is a poor development language ..or Enterprise Object Framework Provides: Encapsulation Reuse A more natural model of the real world. Database-to-object mapping Object-to-interface mapping What is an Enterprise Object? Properties that map to stored or persistent data. Knows how to interact with WebObjects to give and receive values for its properties. Contains business logic for an application. Provides an access layer for an application that resides just above the database. From Database to Object Correspondence between database tables and enterprise object classes . Database rows map to instances of the appropriate class. Flexibility Objects can map to tables, subsets of tables, or across tables. Object properties can map to one column, or to a derived column. Object inheritance hierarchy can be mapped to one or more database tables. to-one and to-many relations provided. Relations To-one To-many Uniquing Ensures that the mapping of each enterprise object to row in a database table is one-to-one. Limits memory usage. Ensures data integrity. Uniquing Example Relationships and Faulting Resolution of relationships during fetching Faults as stand-ins Tuning relationship resolution Pre-fetching Batch faulting From Objects to Database Validation Referential integrity enforcement To-one: Mandatory vs. Optional Delete: cascading vs. nullify vs. deny Automatic primary and foreign key generation Transaction management Locking Pessimistic, optimistic, on-demand From Objects to Interface Changes made from the interface by the user are automatically synchronized with the enterprise objects. Changes made to the enterprise objects automatically updates the user interface to reflect these changes. Ingredients for an EOF Application A user interface A model Enterprise Objects EOF’s classes and interfaces A database server and adapter. Ingredients (Cont.) Components involved Access layer – Fetches rows from the database and tranforms them into enterprise objects. Registers the enterprise objects with the control layer. Control layer – Manages the graph of enterprise objects in memory, tracking changes made to them, and messaging the access layer to commit changes. Components (Cont.) Interface layer – Maps data between the control layer and the application’s user interface as designed with an SDK (such as Java or AppKit from Apple). WebObjects – Combines the use of an interface SDK and the interface layer to present the application with an HTML interface over the web. Access Layer Adapter layer – Classes that connect with specific databases. Database layer – Classes that create enterprise objects from the data source. Modeling classes – Supplies database login information and database to object mappings. Control Layer EOObjectStoreCoordinator – manages interactions with the access layer EOEditingContext – manages graphs of enterprise objects and track changes made. EOModeler Application Automation Demonstration References [1]http://developer.apple.com/techpubs/webobjects/WebObjects_4.5 /System/Documentation/Developer/EnterpriseObjects/DevGuide/EO FDevGuide.pdf [2]http://developer.apple.com/techpubs/webobjects/WebObjects_4.5 /System/Documentation/Developer/EnterpriseObjects/EOTools/EOT oolsAndTech.pdf [3]http://developer.apple.com/techpubs/webobjects/WebObjectsOver view/WebObjects_Overview.pdf [4]http://developer.apple.com/techpubs/webobjects/DiscoveringWO/ webobjectsforhtml.pdf [5]http://developer.apple.com/techpubs/webobjects/GettingStartedO nWindows/WOGettingStarted.pdf All images presented from [1]