InfoQ Homepage Java Content on InfoQ
-
Modular Java: What Is It?
Over the last few years, modularity for Java has been an active discussion topic. From the (now defunct) JSR 277 to the recognition of JSR 291 and the ongoing JSR 294, modularity is seen as a necessary step in Java's evolution. Even future JVM-based languages like Scala are considering modularity. So, what does modularity mean, and why should you care?
-
Book Excerpt and Interview: Dependency Injection
Dependency Injection by Dhanji R. Prasanna is a book that tries to explore the DI idiom in detail, and present techniques in Spring and Guice. Dhanji is a Google software engineer who works on Google Wave and also contributes to Guice, MVEL, and other open source projects.
-
Virtual Panel: The evolution of bug trackers
Bug (issue) tracking systems have become a standard tool for any organization that develops software and have evolved greatly in the last years. InfoQ has conducted a virtual panel with people from JIRA, FogBugz, Basecamp and MantisBT about this evolution and the future developments in this field.
-
Creating Highly-Scalable Components in Java
This article presents a library supporting the development of highly-scalable applications that take advantage of an underlying multi-core hardware. The library is part of the Amino Library Project. One example: ensure scalability of applications by using , java.util.concurrent.ConcurrentHashMap to replace a synchronized HashTable.
-
Orchestrating RESTful Services With Mule ESB And Groovy
In this article, David Dossot, co-author of Mule in Action, examines the power of Mule RESTpack and Groovy in orchestrating RESTful services in the Mule messaging platform. The article detail the interactions for each of these steps and will consider what particular Mule moving parts and Groovy features we have used to achieve such an interaction.
-
Clojure and Rails - the Secret Sauce Behind FlightCaster
FlightCaster, a realtime flight delay site, is built on Clojure and Hadoop for the statistical analysis. The web frontend is built with Ruby on Rails and hosted on Heroku. We talked to Bradford Cross about Clojure, functional programming and tips for OOP developers interested in making the jump.
-
WebSphere vs. .NET: IBM and Microsoft Go Head to Head
After carrying out a number of benchmarks, Microsoft concluded that .NET offers better performance and cost-performance ratio than WebSphere. IBM rebutted Microsoft’s findings and carried out other tests proving that WebSphere is superior to .NET. Microsoft responded by rejecting some of IBM’s claims as false and repeating the tests on different hardware with different results.
-
Super-sized Flex Development—Without the Extra Calories
Ryan Knight discusses how Adobe Flash Builder 4 beta provides tools for developing large-scale Flex applications, increasing developer productivity and workflow between designer and developer. He talks about how to leverage Flex's differences, details of some Flex modules, patterns and anti-patterns, and the Spring BlazeDS Integration Project.
-
Supporting Advanced User Interaction Patterns in jBPM
Boris Lublinsky discusses task management in the jBPM and then demonstrates how to implement four advanced user interaction patterns(4-eyes principle, nomination, escalation, and chained execution) using JBoss and the jBPM. He also notes the advantages and limitations of these patterns.
-
Service Dynamics: the lazy man's way
This article describes "the hardest topic in OSGi, how to deal with service dynamics," based on personal experience. Two factors, concurrency and direct service references, make the problem "fiendishly hard." An import and an export policy should form a comprehensive doctrine for dealing with service dynamics and the article explores two export policies with their corresponding doctrines.
-
FlexMonkey brings unit testing to Flex user interface developers
This article explores how Gorilla Logic's new, open source Flex user interface automation testing tool, FlexMonkey, can enhance the productivity of both developers and QA testers. FlexMonkey allows developers to incorporate user interface testing into unit test suites and continuous integration environments, and allows QA testers to expand those tests into comprehensive quality tests.
-
Orchestrating Long Running Activities with JBoss / JBPM
Orchestrating activities that extend over very long periods (hours, days, weeks) is a common design issue. Although technically BPM engines are specifically design to ideal with this issue, they do so with standalone processes with corresponding issues arising from callback mechanisms. This article we will show one of the approaches to use JBoss jBPM for solving this problem.