Summer
Now is the Spring of our discontent, made glorious Summer....
What is Summer?
Summer follows Spring. It is a reaction to the proliferation of poor programming practices and styles encouraged by the Spring framework.
Summer at its very core is not a platform of any sort, it is a way of thinking. If you follow this way of thinking you will find that object-oriented programming becomes much simpler, and by consequence, the programs and systems that you design become cleaner, quicker to change, and much more understandable.
The two core programming concepts of Summer are those of Dependency Injection, and Object Oriented Programming.
However, the authors of Summer have found that many, perhaps even most people in the Java space who believe that they are programming in an object orientated fashion, are not, in fact. This is not to say that they are unskilled, simply that they have been given incomplete information about what Object Oriented Programming really is.
Summer aims to show that when using the power of this paradigm to its full, huge gains in flexibility and performance - both programmer and software - can follow.
Engage Brain
One of the first things that Summer demands is a critical mind, and a sense of purpose.
It is at all times necessary when writing software to ask: "What are we trying to achieve?". Normally the desired outcome is some sort of software service for a client. The client may be an individual, or perhaps another part of your own organisation, or perhaps another company.
The delivery of some software is normally part of some other business related purpose - for example: "Sell more widgets". It is at all times necessary to remember this purpose - for regardless of the technical merit of the delivered software, it is useless unless it helps deliver this tangible real world goal.
Software is a creative practice, and as such it can sometimes feel like a work of art - never finished, and always needing polishing... Software like this does not help the client towards their end goal, and as such is effectively useless.
Software does not exist unless it is running in production.
Remember that.
Discard Design Patterns
// TODO
Discard Best Practices
// TODO
Software Architecture is an [Emergent Property]
// TODO
What resources does Summer give me?
Summer gives you a lovely Dependency Injection framework. You can read more about this in Summer Dependency Injection. One of the great things about Summer Dependency Injection is that there are no downloads required. The Dependency Injection framework is actually built into the JVM.
Summer is designed from the ground up to give you objects that are easy to unit test. Summer is an ideal framework for test driven projects.
Also planned are:
- [Summer JDBC]
- [Summer ORM]
- [Summer TX]
- [Summer JMS]
- [Summer LDAP]
Feedback
Please do send feedback using our Feedback Form.
Licensing
Summer will be licensed under the Apache licence. If you need another license for whatever reason, please contact us
Training
Please contact us using the Feedback Form if you need training in the concepts required to use Summer or in the framework itself.