Technology Stack

Architecture
  • Frameworks
  • Loose coupling
  • Reusable components

 

Chief Software Architect Point of View
Smooth, fast, enjoyable and error/bug defended process of software development is possible when a right architecture was selected. Frameworks are a basis of rapid and bug free software creation. All products share 2 frameworks, one is an application framework providing SOA. It includes a service providers registry, a component factory, base services and set of reusable utilities. Second framework  plays a similar role for creation of web applications. It can use also the application framework for creation multi services web applications. Supporting MVC helps developers separate presentation and business logic.  Using frameworks frees developers and designers from thinking about details of life cycle of component, allowing dedicate more time on implementation of functionality. The frameworks are not over complicated, and do not sacrifice 90% of complexity in favor of 1% of functionality. Used approach considers that in case of 1% required functionality can be done in custom code without heaving of frameworks. An interface driven design also allows to replace parts of frameworks easily by more robust or smarter implementations.  Commonly, entire architecture is based on using light weight components, keeping just minimal required functionality, and leaving anything extra on usage of a custom code. As was stated above an interface driven design and a loose coupling allows create very different configurations based on set of replaceable and reusable light weight components.

7Bee is a sort of exception because doesn't use any framework. It's done to make it very light weight, however it uses fundamental principles of interface driven plugable architecture commonly named as SOA. 7Bee used as a build tool for all my projects.

All other projects share the same application framework. Web applications like jAddressBook, ChatHouse, Tree View, Finesearch, and other small demo web projects. Tree View itself shared by all web interfaced projects.

From DemRog® to Aldan3

DemRog is a multipurpose library including most of core elements of the technology stack. SOA registry, servlet framework with template engine and few utility classes are the content of the library. I developed this library in 1998, so a code quality is far not perfect. For this reason I do not push the library in an open source where a code quality is the key. Since many my projects are based on this library and you may want to work on these projects, I provide DemRog library in binary form for free download. Note that a reverse engineering is against rules. Download DemRog. View API JavaDocs.
Since DemRog is quite old I decided to provide a brand new version of the library named as Aldan3. Main advantage of Aldan3 is more light weight and robust implementation. Certainly the library is a ground for starting very new technology named as application patterns. Aldan3 will be available for download quite soon.

As a sneak preview of Aldan3 fullstack, you can read the article. Aldan3 library is available as a part of download to the article.