In software engineering, multi-tier architecture (often referred to as n-tier architecture) is a client–server architecture in which the presentation, the application processing, and the data management are logically separate processes. For example, an application that uses middleware to service data requests between a user and a database employs multi-tier architecture. The most widespread use of multi-tier architecture is the three-tier architecture.
Both ORM and RESTful aspects of our framework makes it easy to develop using such a three-tier architecture.
In our SQLite3 Open Source framework, for Delphi 7-2010, you can follow this development pattern:
- Data Tier is either SQLite3 and/or an internal very fast in-memory database, most SQL queries are created on the fly;
- Logic Tier is performed by pure ORM aspect: you write Delphi classes which are mapped by the Data Tier into the database, and you can write your business logic in both Client or Server side, just by adding some events or methods to the classes;
If you need a RAD approach, it's perhaps not the right tool for you.
But if you like describing your application with classes, it's worth taking a look at it, and contributes to this open source project!
If you take a look at our Main Demo, you'll find such a 3-tier architecture.
This application is just a database tool which stores text content and files into the database, in both clear and "safe" manner. Safe records are stored using AES-256/SHA-256 encryption. There is an Audit Trail table for tracking the changes.
Here are some screen shots of this sample application:
It shows you some interesting features like integrated User Interface generation and i18n, reporting and export to PDF, client/server services.
And you'll discover how our ORM and client/server database system is implemented: all is done in code (no RAD/IDE approach here), but with very little code lines count...
See the code description in http://synopse.info/forum/viewtopic.php?id=77