Design Patterns

Design Patterns news, information, and how-to advice

Datastructures and algorithms in Java


Responsive web design with Google Web Toolkit

Get started with using GWT-friendly CSS media queries and multi-device layout patterns to develop mobile-responsive web applications. Demonstrations are based on an open source code base that you can use as a foundation for your own...

on target

Stability patterns applied in a RESTful architecture

Learn how stability patterns anticipate the hot-spots of distributed network behavior, then see five patterns applied to RESTful transactions in Jersey and RESTEasy.

java snazzy

Iterating over collections in Java 8

Get an overview of Java iterators and how each version of Java handles them differently, including what you can do with the new forEach() method and Stream API features in Java 8.

marx books

Books that have most influenced my software development career

Dustin Marx names 9 books that have earned a permanent place in his bookshelf, and maybe yours.

Microservices vs. the monolith

Similar to SOA but different enough to warrant its own name, the Microservices architectural style gets written up by Martin Fowler and James Lewis. Cliffs Notes you can count on!

Java 8's new Optional class: What's the point?

Java programming blogger Hugues Johnson instigates a debate about the new Optional class in Java 8, and whether its monadic operators (like flatMap) are worth all the fuss.

steamy java

A case for keeping primitives in Java

Primitives have been controversial since the early days of Java, and rumor has it that Oracle is considering dropping them in a future version of the JDK. But John Moore argues that Java needs primitives, especially for applications...

What would you do to improve dynamic proxies?

Java's chief language architect wants to know: What would you do to improve dynamic proxies in the Java language?

Open source Java projects: Spring Integration

Use Spring Integration to develop a robust message-passing architecture that integrates and coordinates enterprise components across an ActiveMQ message bus via JMS.

4-5-6 hopscotch

Java 101: The essential Java language features tour, Part 3

Get introduced to the last but not least of new features that have improved Java's productivity since JDK 5: Autoboxing and unboxing, the enhanced for loop, static imports, varargs, and covariant return types.

Coding conventions: 9 areas where developers actually agree

Millions of GitHub commits don't lie: find out how your coding habits and pet peeves stack up based on real code written in Java, Python, Ruby, PHP, Scala, C#, and JavaScript.

ObjectStreamClass: Peeking at a Java Object's Serialization

Learn a few tricks for using an ObjectStreamClass to analyze the serialization characteristics of a serialized class loaded in the JVM.

HttpClient basic authentication

Basic authentication with HttpClient 4: A simple use case demonstrates preemptive authorization and how to manually set the Authorization header.

Java programming with lambda expressions

The major new features in Java 8 center around lambda expressions, a functional programming construct that simplifies certain types of programming problems. John Moore demonstrates the power of lambdas by contrasting several...

Horizontal reuse: An alternative to inheritance

Horizontal reuse offers advantages over inheritance in many situations, but not in every language.

1-3-4 hopscotch

Java 101: The essential Java language features tour, Part 2

Learn how to use typesafe enums in switch statements, then get started with Java annotations and meta-annotations types like Target, which can clarify the meaning of annotations in your Java code.


Eric Redmond on design patterns for distributed systems

Basho engineer Eric Redmond discusses the mechanics, patterns, and tradeoffs involved in building distributed systems, based in part on his experience with the NoSQL database Riak.

Object calisthenics: Change the way you code

If you want to sharpen your code, put on your tracksuit and hit the virtual gym. This workout routine is made for programmers.

Load More