Simple Command Framework

Simple Command Framework

Simple Command Framework Version 1.2.0

This is the homepage of the Simple Command Framework (SCF). The aim of this framework is to offer mechanism to write software which fits the SOLID priciples. SOLID means:

  • Single Responsibility Principle
  • Open / Close Principle
  • Liskov Substitution Principle
  • Interface Segragation Principle
  • Dependency Inversion Principle

This mnemonic acronym was introduced by Michael Feathers for the „first five principles“ which later identified by Robert C. Martin in the early 2000s that stands for five basic priciples of object oriented programming and design (http://social.technet.microsoft.com/wiki/contents/articles/18033.software-design-principles.aspx).

Quality

The framework ist 100% test driven development so you’ve 100% testing code coverage. The code is also tested with the PI Test-Framework (http://pitest.org/). Also it is evaluated with SonarQube and has no technical debt (http://www.sonarqube.org/).

Documentation

The full documentation of the framework is found here: Documentation Simple Command Framework 1.2.0.

You can get some tar-balls here: http://mwolff.info/wiki/display/SCF/The+Simple+Command+Framework under download section.

License

/**
    Simple Command Framework.
 
    Framework for easy building software that fits the SOLID principles.
    Download: https://github.com/simplecommand/SimpleCommandFramework

    Copyright (C) 2015 Manfred Wolff, neusta software development

    This library is free software; you can redistribute it and/or
    modify it under the terms of the GNU Lesser General Public
    License as published by the Free Software Foundation; either
    version 2.1 of the License, or (at your option) any later version.

    This library is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    Lesser General Public License for more details.

    You should have received a copy of the GNU Lesser General Public
    License along with this library; if not, write to the Free Software
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301
    USA
 */

Download

You can download the framework here: https://github.com/simplecommand/SimpleCommandFramework

Maven

After doing an mvn package the framework can be registered as folled:

mvn install:install-file -Dfile=<path-to-file> -DgroupId=mwolff-commons \
-DartifactId=command -Dversion=<version>-SNAPSHOT -Dpackaging=jar

To use it you need a dependency in your pom.xml

pom.xml
<!-- command framework -->
<dependency>
    <groupId>mwolff-commons</groupId>
    <artifactId>command</artifactId>
    <version>1.2.0</version>
</dependency>

Examples

Feel free to checkout the examples under https://github.com/simplecommand/SimpleCommandFramework-Examples. The examples are distributed under the GNU Public Licence

/*
    Command Example for the SCF (Simple Command Framework)
    Copyright (C) 2016  Manfred Wolff, neusta software development

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.

 */