This session will cover what it means to have an API in Java. I will explain how an exposed API can be maintained and evolved over releases. I will talk about evolving APIs without breaking the clients. Interesting cases like generification of APIs will be discussed. I will also discuss the various rules of versioning in case the API needs to have breaking changes.
The session will explain the different types of incompatibilities - like binary, source, behavorial incompatibilities etc. with examples. I will demonstrate the examples live during the session.
The session will also cover best practices in evolving APIs. In addition, I will discuss and demonstrate a few interesting API evolution puzzles.
In the last part of the session, I will cover the pitfalls in API evolution and how API Tools can be used to detect and rectify them. I will also discuss about versioning in this era of multiple releases in a year.
In this session, basic knowledge of Java is required. The attendees will understand API evolution in Java and the usage of API Tools to achieve API evolution.
Comments Sign in to post comments
Most developers don't know
Submitted by Dani Megert on Fri, 2019-05-31 10:01
Most developers don't know all the details and pitfalls when it comes to add or change APIs. This talk shows how to do it right and how PDE API Tools can help.