What is StaccatoCommons?

Staccatocommons is a FLOSS project that provides libraries to extend and integrate existing Java frameworks in order to fill their gaps and unificate abstractions, focusing on productivity and maintainability, in a full object oriented way and using functional programming techniques.

StaccatoCommons Principles

StaccatoCommons follows some design guidelines, which all its code must observe:

  • Java-centric. StaccatoCommons is written in pure Java, and it does not define nor use configuration files.
  • Object Oriented. StaccatoCommons offers object oriented solutions - or solutions that explode objected orientation as much as Java can offer - and is implemented using the same techniques and design concepts.
  • Functional. StaccatoCommons solutions make use of techniques and concepts taken from functional programming. It encourages immutable objects, pure code - without side effect - messages, laziness, and higher order programming using function-like objects.
  • Generic. StaccatoCommons intesively uses Java Generics
  • Rich, fluent interfaces. StaccatoCommons classes and interfaces maximize the amount of useful, fluent methods exposed, in order to make client code cleaner and simpler. Complexity is not handled by client.
  • DRY. StaccatoCommons libraries have ease of usage and code reuse as a priority, both for its implementation and the client code. It does not reinvent the wheel defining new interfaces and classes, when they are already there.
  • Documented and Contract-First. StaccatoCommons codebase is fully documented using Javadoc and source annotations, focusing on well defining contracts between the apis and the client code.
  • Pragmatic. StaccatoCommons is not a research project. It offers solutions that work.

StaccatoCommons Projects

  • Staccatissimo - the core libraries of StaccatoCommons: exception handling, io, collections, lambdas, validations, and much more
  • Legato - libraries that integrate many frameworks and environments, using Staccatissimo and StaccatoCons guidelines