ModelMapper is an object to object mapping library that eliminates repeatable code for copying objects from one representation to another. By looking at property names it can perform an automatic mapping or hints can be defined that describe precisely the mapping process. It is inspired from AutoMapper which is a similar library for .NET
A new Amazon whitepaper provides a set of commonly used programming patterns that can be used in application's decider logic to tell SWF how to coordinate the application's work.
ASP.NET Web API comes with a Dependency Resolver interface that lets you inject dependencies into your controller. However Mark Seemann suggests it is better to use the IHttpControllerActivator interface for this purpose, with a couple of examples.
Dagger is a new dependency injection framework for the Android environment. It offers a subset of features of Google Guice (some of the developers work on both projects) but focuses on a lightweight solution in order to offer better performance. Dagger also attempts to report binding errors during compile time instead of run time.
InfoQ's research initiative continues with an 8th question: "What are the most widely used .NET practices and tools?". This is a new service we hope will provide you with up-to-date & bias-free community-based insight into trends & behaviors that affect enterprise software development. Unlike traditional vendor/analyst-based research, our research is based on answers provided by YOU.
Many predictions for agile in 2012 were gloomy, with themes including adoptions by organizations that don’t know how, resulting in a lack of addressing management impact across teams and engineering practices in teams. With nearly four months of hindsight, readers can make their own judgments while remaining diligent so that 2012 won’t end gloomy.
In Command Pattern, an object is used to represent and encapsulate all the information needed to call the method at a later time – method name, object that owns the method and values for the parameters. In the first part of an article series “The Command Pattern In .NET”, Eric Vogel walks through using the ICommand interface in the context of WPF applications.
Travis CI, a cloud-based continuous integration (CI) offering for open source projects on Github, has announced support for Java builds, as well as Scala and Groovy additions. After gaining traction among the Ruby open source community the project is now looking into the possibility of expansion to a hosted CI service (nicknamed Travis Pro).
In his new article “MapReduce Patterns, Algorithms, and Use Cases”, Ilya Katsov gives a systematic view of the different MapReduce patterns, algorithms and techniques that can be found on the web or in scientific articles along with several practical use case studies.
Tony Wong, a project management blackbelt, enumerates some practical points on individual procutivity. This article wonders how well these apply to software development and contrasts his list with that of other lists.
Riak is a key-value based NoSQL database that can be used to store user session related data. Andy Gross from Basho Technologies recently spoke at QCon SF 2011 Conference about Riak use cases. InfoQ spoke with Andy and Mark Phillips from Basho team about Riak database features and best practices when using Riak.
Five candidate patterns were promoted to the SOA Patterns Master List, which will appear in the upcoming "SOA with REST" book from Thomas Erl and Prentice Hall Publications. This news item gives a brief overview of each of these patterns which are common distributed system patterns applied to services at the messaging layer.
The Special Interest Group on Software Engineering (SIGSOFT) of the Association for Computing Machinery (ACM) have awarded Mary Shaw and Dave Garlan the Outstanding Research Award 2011. Both computer scientists have pioneered the work on Software Architecture at the Software Engineering Institute of the Carnegie Mellon University in Pittsburgh.
Software Architecture is one of the important topics for software engineers, because many failures of software development projects are caused by inadequate design. Thus, it is essential to learn more about architectural issues in theory and practice. Interesting new books that have been published recently or in the near future could be very helpful
There is a constant tussle between following Agile techniques and still managing to do enterprise architecture. While Agile development focuses on adjusting the design as more insight is gained, architecture establishes the technology stack and addresses quality attributes. Combination of the two is successful when agile techniques are leveraged to drive towards the desired architecture.