ADO.NET is a newer version of ADO or ActiveX Data Objects. Microsoft created the ADO object model as a way to connect to databases from within programs (Wikipedia – ActiveX Data Objects, 2006). Although ADO.NET is based on ADO, there are some significant differences. Most of the changes made to ADO.NET are improvements such as better XML integration, disconnected data access, and .NET Framework integration (MSDN – ADO.NET for the ADO Programmer, 2006). ADO.NET is used to connect to a variety of different data sources such as MySQL and MS SQL Server. The data can be viewed and manipulated in different ways. For instance, it is possible to view, update, and delete data using different queries (MSDN – Overview of ADO.NET, 2006). The advantages of using ADO.NET are its improvements over ADO as mentioned above, as well as performance and its ease of implementation (ADO.NET Pros and Cons, 2006).
ADO.NET consists of two main components: the Data provider and the DataSet. The Data provider objects are classes that are used to connect to and communicate with a database. Five common objects are used as part of the Data provider. The Connection object is used to connect to a data source. The Command object is used to run a command against a data source, such as a query. The Parameter object is used to send a parameter with a command, such as a stored procedure. The DataAdapter object is used to send data back and forth between the DataSet and the data source. The DataReader object is used to process a large amount of data but only one record can be read at a time. The DataSet is the other main component of ADO.NET. DataSet objects contain classes, which represent an actual database and the data within it. A DataSet object can contain other objects such as a DataTable, a DataRelation and a Constraint. The DataTable object can contain objects such as a DataColumn and a DataRow. All of these objects are used to represent the data and structure in a database (Wikipedia – ADO.NET, 2006).
Knowing how to take advantage of the features of ADO.NET is essential when developing business applications. Many business applications contain or communicate with a backend database. Some standalone applications might include with it a small Access or dBase database. For instance, a bug tracking program or a low-end customer relations management application would need to store information in a database. That information may need to be viewed and/or updated. The application would be designed to limit the control that users have over the backend database. If necessary, a custom application could be developed using .NET to connect to the backend database, which could offer more or less functionality based on the needs of the users. ADO.NET features could be used in the custom .NET application to provide access to the data within the database. Some larger organizations might have huge database systems that contain much more information than a smaller Access database would be able to support. These organizations require higher end database systems, such as Oracle or MS SQL Server. ADO.NET could be used within a client/server .NET application to connect to these higher end systems as well (W3Schools, 2006).
Resources:
Wikipedia – ActiveX Data Objects. (2006). Retrieved June 3, 2006 from http://en.wikipedia.org/wiki/ActiveX_Data_Objects
MSDN – ADO.NET for the ADO Programmer. (2006). Retrieved June 3, 2006 from http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndotnet/html/adonetprogmsdn.asp
MSDN – Overview of ADO.NET. (2006). Retrieved June 3, 2006 from http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconOverviewOfADONET.asp
ADO.NET Pros and Cons. (2006). Retrieved June 4, 2006 from http://www.vbip.com/books/1861005563/chapter_5563_06.asp
Wikipedia – ADO.NET. (2006). Retrieved June 4, 2006 from
http://en.wikipedia.org/wiki/ADO.NET
W3Schools – ASP.NET – Database Connection. (2006). Retrieved June 4, 2006 from http://www.w3schools.com/aspnet/aspnet_dbconnection.asp
It seems there are several answers to the question “What is .NET?” Over time, through using .NET, I have come to realize that .NET seems to be Microsoft’s answer to Java. I have not used Java extensively; however, I do know that one of its major appeals is that it is platform independent (Manageability, 2006). You can run Java applications on just about any operating system, by using what is known as a Java Virtual Machine. The Java Virtual Machine can be installed on an operating system and then Java applications run within the JVM, making it platform independent (Wikipedia – Java Virtual Machine, 2006). Microsoft created the Common Language Runtime or CLR, which is language independent and comprised of several components but functions more or less as an application sub layer to run in between the operating system and the actual application. In essence, it works in very much the same way as the Java Virtual Machine (Wikipedia – .NET Framework, 2006). Interestingly, the architecture on which .NET is built, is not the only similarity it has to Java. I have recently begun learning bits and pieces of Java and have noticed that even some of the syntax within .NET can be compared to that of Java. For instance, the Try, Catch, and Finally exception handling is very similar in both .NET and Java. Visual Basic .NET is unique in that it can be used to create Windows applications as well as Web applications. Not many languages are as versatile and yet easy to implement as Visual Basic .NET is.
I would really like to learn more about Visual Basic.NET code security as well as Web services using XML. This is actually something that I have wanted to learn more about for a quite a while now. I would like to become a master with regard to the .NET Framework and underlying architecture. I believe that more and more applications written in .NET will be popping up in the corporate structure and these applications will need to be improved upon and supported. One of the most, if not the most important aspect to developing business applications is security. Knowing how to secure an application at the code level would be an invaluable and highly marketable skill. This would involve understanding how applications are written at the deepest level.
Learning Visual Basic.NET has already been useful to me in many ways, therefore I expect it to continue to be useful throughout my career as a software developer. One of the major benefits that I have noticed using Visual Basic.NET, is the fact that it has considerably simplified the process of application development, thereby making the learning process less challenging. Before dabbling in .NET, I had struggled immensely in learning how to write code and develop applications. Using .NET has not only made it easier for me to understand how to write applications in .NET languages, but it has helped me to understand the basics of other languages as well, including Perl, C, and Java. If it were not for .NET, I am not sure that I would have ever been able to grasp some of the most basic programming concepts. I believe .NET technology and specifically Visual Basic .NET will continue to improve and gain popularity as a language, if for no other reason than that of its overall simplicity to use and understand.
Before using Visual Basic .NET, I had used Visual Basic 6 to create a couple unfinished applications. I would always reach a point where I would be stuck on something and eventually give up. This was very discouraging to me and I nearly gave up programming for good as a result. It was not until I began using Visual Basic .NET that I was actually able to create a complete, useful, working program from design to deployment. I should also mention that in my experience, it seems to take much less time to create functional applications in Visual Basic .NET than it did in Visual Basic 6. There were some aspects to using Visual Basic 6, of which I can barely recall at this point, that made it a rather cumbersome language to use. For instance, creating a Multiple Document Interface (MDI) application was something I never could figure out in Visual Basic 6 but it is fairly straight forward in Visual Basic .NET (Dev Articles, 2006).
Resources:
Manageability. (2006). Retrieved June 3, 2006 from http://www.manageability.org/blog/archive/20030108%23101_reasons_why_java_is/view
Wikipedia – Java Virtual Machine. (2006). Retrieved June 3, 2006 from http://en.wikipedia.org/wiki/Java_virtual_machine
Wikipedia – .NET Framework. (2006). Retrieved June 3, 2006 from http://en.wikipedia.org/wiki/.NET_Framework
Dev Articles. (2006). Retrieved June 3, 2006 from http://www.devarticles.com/c/a/VB.Net/Migrating-to-Visual-Basic.NET-from-Visual-Basic-6/5/