API Design in Java 8
For the first time in many years, Java 8 has brought powerful new tools for designers of APIs in Java. This talk will look at new constructs such as lambda expressions, default methods, method references, and type annotations in the context of how they can be applied to API design. We will look at how these constructs can be introduced in a compatible way, and how they can evolve once introduced. The age old question of interfaces versus abstract classes in API design will also be revisited. Tips will be provided on how to introduce and make use of lambda expressions in particular, and we will examine ways in which many Eclipse platform APIs can already be used with lambda syntax.