Robert Harper and Dan Licata, Professors of Computer Science at Carnegie Mellon University, announced last week that they have decided to "eliminate entirely" OOP from the CS introductory curriculum.
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.
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.
Dependency Injection has become a much more accepted and accessible approach in recent years, driven by many factors including increased popularity in SOA, TDD, and many other factors. With this has come increased usage of Dependency Injection frameworks. Bob Martin advises, with examples, applying a decoupling approach between your application code and your Dependency Injection framework.
In his new post, Jason Bloomberg introduces two types of services – Entities and Tasks, and explains the role each type of services plays in building SOA systems.
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 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.
The Object Management Group (OMG) this month announced a "Business Ecology Intitiative" (BEI) withIBM as Founding Sponsor. BEI is focused on erasing the artificial lines between business and Information Technology (IT) so that IT becomes a ubiquitous, integral and vital asset to the company.
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.
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.
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”.
A new WS-BPEL Extension for Semantic Web Services introduces support for semantic service discovery and invocation in the services integration implementations.
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.
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.