BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage OOP Content on InfoQ

  • Managed Extensibility Framework: What It is and Where It is Going

    As the name implies, Managed Extensibility Framework is a framework for extending .NET applications. In a recent Channel 9 interview Oleg Lvovitch and Kevin Ransom talked about the history of MEF and what’s planed for version 2.

  • MIT introduces Oracle for Object-Oriented Programmers

    In a recent news article the Massachusetts Institute of Technology has introduced a technology for automatically remembering connections between objects. The provided system determines how objects in a large software project interact, so it can inform latecomers which objects they will need to design certain types of functions.

  • Notes from OOP 2011 Conference in Munich

    The OOP conference (Object Oriented Programming) was held in Munich, Germany, from 24th to 28th January 2011 with “Business Impact through Mastering Change” as its general motto. Despite of its name, the OOP represents one of the largest and long-lasting events on the general field of software engineering.

  • Object Oriented Programming: The Wrong Path?

    In a QCon London 2010 interview with Joe Armstrong, the original developer of Erlang, and Ralph Johnson, long associated with Smalltalk, OOP, and Patterns, the question of whther we've gone down the "wrong path" w.r.t. object orientation all these yearrs. Both interviewees suggest that we have, but this is due to flaws in the implementation of object ideas and not the ideas themselves.

  • Creating Add-Ins for Expression Web 4

    The hallmark of any good IDE is its extensibility. If developers can’t improve their own tools then they won’t see productivity improvements over time. The same goes for web designers, which is why Microsoft’s Expression Web 4 now offers an add-in model based on HTML+JavaScript.

  • Managed Extensions for Internet Explorer

    With .NET 4.0, writing reliable managed extensions for Internet Explorer has become possible. Unlike previous versions, each extension will run against the CLR it was compiled for instead of mindlessly grabbing the most recent version. Alas, COM interfaces are still needed.

  • Extensible Caching Added to .NET 4.0

    Microsoft’s Patterns and Practices caching framework has been promoted to a part of the core .NET Framework. This framework provides a basic in-memory cache with trigger-based cache invalidation and a common wrapper for more advanced caching frameworks to share.

  • Marshal.ReleaseComObject Is Considered Dangerous

    Paul Harrington, Principal Developer on the Visual Studio Platform Team, has written an explanation on why calling Marshal.ReleaseComObject() to dispose of a COM object from managed code is considered dangerous and recommends not using it.

  • Silverlight 4’s COM+ Automation Raises Security and Portability Concerns

    Silverlight 4 supports COM+ Automation when running as an Out-Of-Browser (OOB) application with elevated privileges. Microsoft indicated that this support is a result of enterprise customers requesting such a feature, offering as an example Office automation from Silverlight.

  • JUnit 4.7: Per-Test rules

    JUnit 4.7, which has just reached Release Candidate stage includes a significant new feature: Rules. Rules are, in essence, another extension mechanism for JUnit, which can be used to add functionality to JUnit on a per-test basis. Most examples of custom runners in earlier versions of JUnit can be replaced by Rules, and new capabilities have already been added.

  • Presentation: Making Roles Explicit

    In this presentation recorded during QCon London 2008, Udi Dahan, The Software Simplist as he calls himself, explains why sometimes it is not enough to apply good OOP and patterns lessons. He introduces a new principle: make roles explicit.

  • Spolsky vs Uncle Bob

    The last few weeks, a public dispute has been going on between Joel Spolsky and Robert C Martin (Uncle Bob) about Test-Driven Development and about the SOLID principles of OO design. Here is a summary and review of the match.

  • Is OOP Better for Structuring your Code?

    Programming languages that offer more power and flexibility have been lately gaining momentum. Johnatan Tang highlights, however, the flexibility vs. productivity tradeoff in terms of program structure. Whereas multi-dispatch languages provide more flexibility in arranging code, traditional object orientation makes organizing programs easier.

  • Is It Appropriate to Use Non-.NET Libraries in Your Day to Day Work?

    From the beginning, the .NET stack had first class support for unmanaged libraries. By using P/Invoke one can access most of the Win32 API and support for COM opens up developers to a wealth of applications and third-party libraries. But should .NET developers actually take advantage of this?

  • Article: Composite Oriented Programming with Qi4j

    The goal of modeling domain concepts through objects set by OOP has for a long time been handled in insufficient ways. In this article we introduce the concept of Composite Oriented Programming, and show how it avoids the issues with OOP and reignites the hope of being able to compose domain models with reusable pieces.

BT