Presentation is loading. Please wait.

Presentation is loading. Please wait.

Object-relational mapping Author: Jaroslav Orság Diploma thesis supervisor: Ing. Augustín Mrázik.

Similar presentations


Presentation on theme: "Object-relational mapping Author: Jaroslav Orság Diploma thesis supervisor: Ing. Augustín Mrázik."— Presentation transcript:

1 Object-relational mapping Author: Jaroslav Orság Diploma thesis supervisor: Ing. Augustín Mrázik

2 Goal of Thesis Analysis of OOP principles, which should be supported by ORM frameworks Analyze some of the most important ORM frameworks (free, commercial) Compare reviewed frameworks  Brief qualified overview of ORM for developers and IT managers

3 Contents The Problem Kinds of Cooperation Patterns Analisis of Frameworks –Frameworks –Criteria Conclusion

4 The Problem (1) OOP Encapsulation Inheritance Polymorphism Class, Instance

5 The Problem (2) RDBMS Tables Views Stored Procedures Relations

6 The Problem (3) 2 different worlds (different paradigms) Different data representation Different data manipulation Different modeling techniques Semantic gap Impedance mismatch Problem appears in huge software projects with lots of entities

7 The Problem (4) Typical EIS Typical architecture of today’s information system

8 Kinds of cooperation (1) HTML + ASP + MS SQL (Example 1) –SQL statements in ASP(JScript, VB) code –Working with tuples (records) in ASP environment –Code is ugly –Sufficient for small projects

9 Kinds of cooperation (2).NET + MS SQL (Example 2) –Instruments for more sophisticated data manipulation (.net DataSets, DataTables) –It is possible (more simple) to create kind of own specific mapper –This mapper is not reusable –Java + JDBC + Oracle

10 Kinds of cooperation (3).NET + ORM + MS SQL (Example 3) –Reusable ORM mapper is used –Object model is created and appropriate relational model is created and maintained by mapper

11 Mapping Approaches Do It Yourself (Example 1 & 2) Free or commercial software (Example 2 & 3) Approaches used by 3 rd party tools (mappers) –Entity approach Data are just data - use of objects without behavior Special classes for changing state of objects (objects are parameters of static methods of so-called management classes) Since ’70-ies –Domain model approach No management classes Persistent objects contains behavior Possible use of polymorphism to override behavior True ORM mappers

12 Patterns (1) Mapping of inheritance –One inheritance tree – one table

13 Patterns (2) Mapping of inheritance –One class – one table

14 Patterns (3) Mapping of inheritance –One concrete class – one table

15 Patterns (4) Mapping of inheritance –Generic table structure

16 Patterns (5) Mapping of aggregation –Single table aggregation

17 Patterns (6) Mapping of aggregation –Foreign key aggregation

18 Performance Caching Lazy loading Delayed updates

19 Configuration Attribute-oriented programming Configuration files

20 Analysis of Frameworks DataObjects.NET Hibernate TopLink LLBLGenPro Java Data Object (JDO)

21 Analysis Aspects Architecture Criteria –Transparency –Documentation & support –Dependencies, supported platforms, portability –Maintainability of model –Usability –Configuration vs. automation –Constraints on design of object model

22 Framework Overview

23 Conclusion Work brings orientation within given topic and can serve as a guide when deciding which framework to use Evaluation presented in this work cannot be considered to be general for any purpose / problem ("one size fits all...") Different frameworks are designed for different situations Results of this work can serve as a guide for evaluation of frameworks for a particular development project

24 Odpovede (1) Kompilačná práca

25 Odpovede (2) “Autor vychádza najmä z troch prác, pričom štruktúra textu (kapitoly a podkapitoly) spracovaného textu nápadne pripominajú jeden z citovaných zdrojov.”

26 Odpovede (3) “Kvalita grafického spracovania príkladov/obrázkov nezodpovedá zvyšku práce, a v čitateľovi podobne vzbudzuje pochybnosti o ich pôvode.”

27 Odpovede (4) Porovnanie frameworkov a kritériá

28 Odpovede (5) Anglický jazyk

29 Odpovede (6) Použitá literatúra, zdroje

30 Questions …


Download ppt "Object-relational mapping Author: Jaroslav Orság Diploma thesis supervisor: Ing. Augustín Mrázik."

Similar presentations


Ads by Google