Testing and analysis don’t catch all problems, but type systems do. By extending the Java type system, the Checker Framework can guarantee your program free of common problems with concurrency, security, null pointers, and more. Each checker in the Checker Framework protects you against a different kind of error, and you can mix-and-match and use whichever ones you want, or even create your own. Type annotations are all that’s required. Only a small handful are necessary for even the largest projects, and the Checker Framework has proved type annotations so useful that they were included in the Java 8 syntax.
Jimmy Koppel will give an introduction and overview of the Checker Framework, and how it’s helped Apptimize make its Android SDK one of the most robust available.