NDO is a development tool for Microsoft® Visual Studio .NET®, which maps object oriented code to relational databases. This concept is called O/R Mapping (Object Relational Mapping).
Why is Object Oriented Programming (OOP) Important?
OOP describes powerful programming concepts for modelling complex systems. Examples of such concepts are classes, objects, inheritance, and polymorphism.
One of the goals of an OOP developer is to create a mechanism and practice to reduce and factor out details so that one can focus on a few concepts at a time, this property is referred to as abstraction in the object oriented community. So, with OOP a developer builds a kind of domain language with constructs like "Customer", "Order" and so on and thus can develop software on the basis of this higher level "language", instead of working with the older, data-driven concepts.
This approach is nearer to the problem itself and leads to faster program development. Additionally the program code is easier to understand and maintain afterwards.
OOP comes along with the object oriented analysis and design methodologies (OOA and OOD). OOA and OOD are proven to be successful in the realization of complex software systems
Why are Relational Databases Important?
Relational Databases like Microsoft SQL Server® are software products specialized in storing large amounts of data. They are fast, reliable, and take care of various security issues. Another advantage of using a relational database is that your business application and its data are separated from each other. Thus it is possible to use, manipulate, and analyze the data independent of the applications producing it. The clean separation between data and application makes it much easier to transfer existing data sets to new hardware or software. This requirement is so important that Gartner Group and IDC estimated a market size for relational and object relational systems of 13-15 billion dollars in 2005 with an annual growth rate of nearly 10%.
Why is O/R Mapping Important?
In a nutshell, O/R Mapping brings together OOP and relational databases. Initially, special object oriented databases were designed for OOP. But so far they have not gained much market acceptance whereas SQL based relational systems are the de facto standard in the market.
The problem with relational databases is that they can not store object systems directly. Software developers must write huge amounts of code to translate object oriented constructs into relational constructs and vice versa.
The concept of O/R mapping automates this process. Thus it is possible to save up to 70% of application code in typical business applications - that is the amount of code normally used for data access. Such high saving quotes are possible because of the byte code or intermediate code used on the Java or .NET platforms. The technology which makes all that happen is called Byte Code Enhancer or Assembly Enhancer.
Why Should You Use NDO?
NDO is able to automatically enhance code that is written and compiled with Microsofts Visual Studio® and other compilers. The enhancement works completely transparent for the developer.
Developers are able to minimize the code needed for data access and minimize the error rate of their code.
Special code for classes is not necessary to use the classes within the NDO framework.
Object data is stored and retrieved automatically from the database.
NDO is able to generate new databases or integrate existing databases.
The NDO Query Language is much easier to use than SQL and provides nearly the same capabilities.
NDO Queries are checked by the C#- or Visual Basic compiler, tools without such checks carry risks such as program interrupts caused by spelling mistakes in SQL queries.
Developers benefit from the object oriented analysis, design, and coding methodologies.
Thus your systems show a better maintainability and extensibility.
With NDO switching to another database is easy. Develop an application with SQL Server® today and use it with Oracle® tomorrow.
® The mentioned names are registered trade marks of their respective owners.