Introduction
Spiffy is a collection of well tested and efficient best practice utility methods and classes. Most of the code has been applied in industrial settings with great results. The aim of this code is to remedy design flaws or insufficiencies in existing API's or make tedious interactions with the API straight forward. For example, there is great stuff to be discovered in the JUnitHelper or the LoggerHelper. Given the nature of utility classes, they are often copy/pasted from project to project, rather than centralized for reuse. The aim of the Spiffy framework is to collect and present the best and most often used helpers in industry in one package.Spiffy Objectives
The goals of Spiffy:- To collect and centralize "utility abstractions"
- To serve as a repository of knowledge/smart ideas for programmers to learn
The current spirit of Spiffy is to cover real-life usage over theoretical completeness. Hence there may exist a utility method for easily creating ArrayList's without necessarily a method existing for easily creating LinkedList. Should you find yourself using LinkedList's, you are still in a fortunate situation. You are more than welcome to copy the code+test for ArrayList creations and amend them to support LinkedList. Submit your code (see below) which in term may be part of subsequent releases.
Join the debate
The current stage of Spiffy is the ALPHA stage, and as such, everything is up for debate. Please join the forums for comments/ideas on existing features or missing features.Submitting code
Forums (see link in the menu) are ideal for code submission as it invites debates on idea, implementation etc. If you don't want to submit code through the forums, you may mail me at spiffy . code at gmail . com. Please use subject spiffycode to allow me to quicker sort spam from gold (your mails ;-)Distribution
To prevent bloat, Spiffy is to be distributed in a very modular way. A core (spiffy_core.jar) forms the foundation and dependency for all other modules (jar files) for each supported framework/API. See the figure. At the present time of writing, we have not yet split the framework into multiple modules, hence only a spiffy_all.jar is available.
The java package structure within each module should conform to the package structure of the target API. Hence, a StringHelper
for the class java.lang.String naturally fit in the package spiffy.core.lang.
The code is distributed along side the jar file. This is a deliberate move to enable the programmer to quickly identify precisely how a given utility method operates, and to quickly extend or modify it.
Version history
v0.5, 05.2008 |
Upgrade guide: Just replace your spiffy.jar file... |
v0.3, 02.2008 |
Upgrade guide: Just replace your spiffy.jar file... |
See also my other quality projects