Articles filed in category 'Object Oriented Development'

  • .Finalize() Column
  • In component-based programming, the basic unit of use in an application is a binary-compatible interface.The interface provides an abstract service definition between the client and the object. This is in contrast to the object-oriented view of the world that places the object implementing the interface at the center. An interface is a logical grouping of method definitions that acts as the contract between the client and the service provider. Each provider is free to...See More
  • Do you want to save keystrokes?Do you want to ease maintenance? Do you want inline information about the code structures that you're working with? How about statement completion? Are you interested in increasing the potential for code reuse? Do you want your applications to run faster and require less memory? Do you prefer to have users find bugs or do you prefer to find them yourself?
  • ASP.NET WebControls do more than just allow you to write reusable components. They can provide an entire approach to Web application development, allowing you to bring a new level of OOP to the UI and letting you program declaratively.Lately I've come to notice that no other programming term has more definitions than declarative programming. In this article, I will attempt to explain it in terms of how it applies to .NET development, specifically ASP.NET through the use ...See More
  • In an application built with object-oriented techniques, objects are the bricks.You construct little pieces of code encapsulated in these bricks. To build bigger structures, you need to hold these bricks together. You can hardwire them together by instantiating dependent objects within your objects, but it makes the whole structure less flexible in the face of change. So you can adopt an inversion of control (IoC) container to act as your mason to assemble your bricks in...See More
  • Almost every programmer knows (unless you have been living under a rock for the last five years or so) that you should be using classes for all of your programming. You should also be using collections of objects instead of using a Data Reader, a DataSet, or a DataTable in your applications. The reasons for using collections are many and are explored in this article.
  • The Entity Framework team at Microsoft has been making several improvements since the launch of v4 with Visual Studio. The biggest of these is the capability to use a Code First or Code Only development model. Previously, if you wanted to work with the Entity Framework, you had to use either a Database First or Model First development model.
  • The .NET Framework provides many new collection classes that you can iterate (for-each) through.But did you know that you can also iterate through values in any of your classes, not just those that use or inherit from collections?
  • I Object
  • Apple’s new language Swift is everywhere these days. Probably the most important app you could build with it is a search engine, and Mohammad shows us how using his own gardening app.
  • Extend your knowledge of inheritance to more easily extend your applications.
  • Martin introduces Design by Contract and Code Contracts, and gives you a sneak preview of Pex—Microsoft’s new test-suite generator. Along the way, he will show you how to add contracts to ADO.NET entities and some interesting coding strategies, good practices, and pitfalls you may encounter while making a deal with your code.With Code Contracts, Microsoft delivers its own flavor of Design by Contract for the .NET Framework. But wait, what is this thing sometimes called C...See More
  • Operator overloading provides an intuitive way to support mathematical and comparative operations on your objects.Operator overloading is one of those features that you don't need very often, but when you need it, operator overloading is very nice to have. You will find operator overloading in C# now, but you won't find it in Visual Basic until the upcoming Visual Studio 2005 release.
  • When Microsoft first released the Entity Framework, agile developers roundly criticized it. These developers hold the tenets of domain-driven development and testability very high. The classes generated from the Entity Data Model (EDM) are very tightly bound to the Entity Framework APIs by either inheriting from the EntityObject or implement interfaces that allow the classes to participate in change tracking and relationship management.
  • First Premier Bankcard (www.firstpremier.com) is the 10th largest issuer of Visa and MasterCard credit cards in the United States.First Premier employs multiple thousands of people spread across the state of South Dakota. A major percentage of the employees at First Premier work in call-center operations helping people apply for credit cards.
  • Jimmy explores what went right and what went wrong with version 1.0 of AutoMapper.
  • Ned introduces the most significant advance in error handling since exceptions and he shows you a new way to look at errors.This article introduces the most significant advance in error handling since exceptions.You get improved tools for today and a glimpse of radical possibilities for tomorrow. You get a framework which supports more expressive error handlers and gives them equal access to error context information. You get a roadmap for adding improved error handling ...See More
  • Derick outlines how to achieve the benefits of low coupling, high cohesion, and strong encapsulation. He also shows how the five S.O.L.I.D. design principles can get you there.Most professional software developers understand the academic definitions of coupling, cohesion, and encapsulation.However, many developers do not understand how to achieve the benefits of low coupling, high cohesion and strong encapsulation, as outlined in this article. Fortunately, others have cr...See More
  • If you are a .NET software developer, you have heard of F#. You may have read an article, seen a talk at a user group, or otherwise heard the buzz. However, if those means of reaching you have failed, at the very least, you have noticed it conspicuously appear in the list of languages you can base a solution on in Visual Studio 2010. If you write code on the .NET Framework, you would have to be living under a rock to have not heard of F#.
  • Inheritance is one of the fundamental facets of object-oriented programming. In this article,Steve looks at inheritance, and in particular some of the mistakes that many developers make when applying inheritance.
  • Have you ever wanted to use a strongly-typed collection to bind your data presentation controls to, only to find that you have very limited sorting capabilities, if any at all?If you are trying to stick to good object-oriented design and shrink the amount of data that you keep in memory, transfer from your data source, or serialize to clients, you likely have run into this situation because you are using strongly-typed collections of your domain objects. So what do you d...See More
  • Jason shows us how to keep the development team focused on developing while creating built-in post-launch features that keep your users happy too. It’s not magic, it’s Intercom.io.
  • Microsoft has recently announced that the next version of Visual Basic will support inheritance.Visual FoxPro has had inheritance for the past 5 years, since Version 3.0, and Visual C++ has always had it. This article will take a closer look at what inheritance is and what it will mean for Visual Basic 7.
  • Inheritance is one of the most fascinating features in the Visual Studio.NET languages. We have discussed this feature in several articles in the past, mainly to explain the basic concepts. Now we are going to take a look at what inheritance can actually do for you, rather than how it works.
  • Class diagrams are among the centerpieces of the Unified Modeling Language.They are critical for helping you design classes that will serve as building blocks for your application. This article will cover the basics of class diagrams and help you see how you can use them in your software development?especially in building your business object classes.
  • In well-designed software systems, powerful business objects work together to accomplish a variety of tasks.UML collaboration diagrams are great tools for documenting the flow of messages between objects while providing a unique perspective - a view of the relationships between collaborating objects.
  • We seem to be an industry enamored with buzz words. Even though XmlHttpRequest has been around since the mid-90s, mainstream programmers didn’t give it a second thought until someone attached the term AJAX to it. The same is true for the never-ending quest to put as many different words as we can in front of “driven-development.” Another term that hit the scene in recent years is dependency injection.
  • Inheritance is the single most important new object-oriented feature in Visual Studio.NET. Surprisingly, not much has been written about the subject, and most of the information available is either very basic and an "overview" at best, or just plain misleading. In this article, I give you a real-world overview of what inheritance - especially visual inheritance, can do for you.
  • The Class Designer feature of Visual Studio 2005 allows you to visually manipulate your classes.A picture is worth a thousand words, as the saying goes. The new Visual Studio 2005 (Whidbey) Class Designer provides a visual design environment that allows you to visualize and manipulate your classes. Being able to see your classes and work with them using a visual designer can significantly increase your productivity.
  • Markus Egger discusses the role of business logic in modern application architecture.
  • Extender classes do just that; they allow you to extend the functionality of a .NET control class. The Error Provider and Tooltip classes are two examples of extender classes in the .NET Framework. The Tooltip class represents a significant departure from how tooltips were implemented in earlier versions of Visual Studio. The Error Provider class provides a new way to inform users about invalid input. Although each class serves a different purpose, their implementation i...See More