BigVertiser Ads

Friday, June 1, 2012

Projects Hierarchy

Some input about projects hierarchy...

Most programmers I've talked to does not understand the positive effects a multi-project architecture can provide, I do not intend to get too much into details here, but lets just name some in short:

  • Eliminates dumb uses of Dual-Coupling.
  • Forces development in layers, thus enabling easy cross projects refactoring.
  • Forces modular coding.
  • Following the above, with proper syntax rules, redundant's bugs, spaghetti code, language abuse, code duplications, and more!  
So here is an abstract view of my entire projects hierarchy layers, I would not get into details, as there are nearly 200 projects involved, and it goes cross platforms, Android, J2ME, J2EE,J2SE...


You like this, +1 it!.

DBator

DBator is a generic instance to DataBase development infrastructure utility, something like hibernate only far simpler, which allows with a bit of code, to define classes as Database rows, and read and write objects instances from and to the Database respectively, it supports partial fields reading and writing for performance.

DBator can read and write from and to sub-tables, if it has been told to.

DBator is a part of what we call ART(Annotation Reflective Technology) projects.

Editall

Editall a generic instance editing development infrastructure utility, which allows with a bit of code, to define classes as Editing beans, where each field in the class may be edited according to its specification, thus allowing an auto-generated generic editing panel, which also to updates the values of the instance supplied for editing.

Editall is designed in such manner that developers may extend it, and change the editing models, panels, and dialogs, as they see fit.

Editall also supports external editors, so a developer may create external importers, to import specific types, which cannot be edited with the default models supported, for example: Image importer, File chooser, etc.. 

Editall is a part of what we call ART(Annotation Reflective Technology) projects

Thursday, May 31, 2012

ReXML

ReXML a generic instance to XML parsing infrastructure utilitywhich allows with a bit of code, to define classes as XML elements, and perform serialization and deserialization of Java objects to XML String.

ReXML allows a developer to create a specific type parser, to support new/unknown types.

ReXML is a part of what we call ART(Annotation Reflective Tool) projects

Trixter

An intelligent plugin-able framework, which allows a composition of any type of application(tested with Servlets and Desktop apps), with the goal to allow the end developer to write as least code as possible, and to allow a wide variety of implementations which may be developed from scratch, for any sort of application.

Trixter is based on Maven build mechanizem, it uses a smarter dependency resolution mechanizem which loads and analyzes the dependencies pom files with my little friend ReXML. Trixter also take advantage of Maven local repository concept to resolve Trixter plugins, and their dependencies while making sure there are no overlapping class imports.

Trixter applications does not require any installation, there is a main configuration file, in which the plugins are defined alongside the repository url, and the rest is history.