BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Object Oriented Design Content on InfoQ

  • "Original Sin" (Would Java be Better Off Without Primitives?)

    Gilad Bracha reopens an old debate; can a language be OO and rely on primitive types? He advances an argument that Java fails to be truly OO because "Java’s original sin was not being a pure object oriented language - a language where everything is an object." The core of the post is whether or not Java could be just as efficient without types. Yes.

  • ODBMS.ORG Adds Persistence Patterns Resources

    ODBMS.ORG has added persistence patterns to its collection of resources for educators, students, professionals, and open source practitioners. Three pattern collections comprise the initial offering in this area. A Best Persistence Pattern Award, is planned for any pattern submitted prior to May 29, 2009.

  • Interview: Joseph Yoder on Adaptive Object Model Architecture

    In this interview Joseph Yoder talks about the Adaptive Object Model (AOM) architecture, a software architecture for easily adapting to changing business requirements.

  • Data, Context and Interaction : A New Architectural Approach by James O. Coplien and Trygve Reenskau

    James O. Coplien and Trygve Reenskaug have recently introduced a new architectural approach to OOP based on Data, Context and Interaction pattern. It should allow capturing user mental model in terms of behavioral requirements, something that classic OOP fails to do. The article, that triggered many reactions and critics, provides insights into DCI using concrete examples to show its advantages.

  • "Good Design" Means ...?

    It's not news that at the heart of successful software systems (and, frankly, fulfilling software careers) is good design. Also not news is that defining what "good design" really means has been at the heart of many debates, papers, talks, books, discussions, and more for ages. To help, J.B. Rainsberger and Scott Bellware offer some advice to follow until that one true definition comes along.

  • CSLA .NET 3.6 Supports Silverlight 2.0

    The Component-based Scalable Logical Architecture for .NET (CSLA .NET) version 3.6 has been released including support for Microsoft Silverlight 2.0. CSLA .NET is a .NET software development framework which helps one to “build a powerful, maintainable business logic layer for Windows, Web, service-oriented and workflow applications”.

  • Interview: Erich Gamma Discusses Jazz, Eclipse, JUnit and Design Patterns

    In this interview from QCon London 2008, Erich Gamma discusses the Jazz project, why Eclipse has been successful, the strict Eclipse release schedule, JUnit, Design Patterns, how to identify a design pattern, design patterns and the 'Don't Repeat Yourself' principle, the design pattern community, and whether dependency injection is a design pattern.

  • .NET Chain of Responsibility Library

    Chain.NET (a.k.a. NChain) is an implementation of Chain Of Responsibility design pattern for .NET and Mono platforms. Version 0.1 combines standard CoR design pattern with Command design pattern with the goal of bringing increased convenience and flexibility in command processing solutions.

  • New Open Source project provides Object Oriented data access

    Kasper Sørensen has created a new open source project at eobjects.dk called MetaModel. The project is a common domain model, query engine, and optimizer for different types of datastores, such as relational databases and flat files. MetaModel is a Java library that provides a fluent, object-oriented interface for SQL compliant queries.

  • Object Relational Mapping - User Case Studies

    Roberto Zicari, from ODBMS.org, collected interviews and stories from several users of Object/Relational mapping technologies. The main point of the cases was around "impedance mismatch" between the object technology in the domain model and the relational technology in the data model.

  • Interview : Nate Kohari on Releasing Ninject 1.0

    In this interview with Nate Kohari, creator of the Ninject dependency injection container for .NET, talks about the release of version 1.0 of Ninject. The interview has taken place over the past weeks leading up to the release of Ninject 1.0.

  • Neo4j - an Embedded, Network Database

    Neo4j is an embedded network model database for Java, Ruby and Python applications. It is capable of handling billions of nodes/relationships/properties on single machine hardware, supporting ACID transactions, durable persistence, concurrency control, transaction recovery, and everything else you’d expect from an enterprise-strength database.

  • Rails Cells: Component-Oriented Development for Rails

    Rails Cells aims to bring component-oriented development to Rails with its lightweight controllers and views that can easily be shared and reused. We caught up with Nick Sutterer, one of the Cells developers, to talk about the state of the project.

  • Adopting Simple Design

    A discussion about simple design is taking place on the extremeprogramming Yahoo! group that has already resulted in several useful recommendations. The discussion started off with a request for references concerning incremental design and quickly morphed into one about successfully adopting incremental design.

  • Can DDD be Adequately Implemented Without DI and AOP?

    A recent thread on Domain Driven Design (DDD) user group discussed the role of Dependency Injection (DI) and Aspect Oriented Programming (AOP) in DDD implementation. InfoQ spoke with Eric Evans and Ramnivas Laddad about these design concepts and the role of Annotations and orchestrated business services in DDD.

BT