Traditional two-layer architecture C / S
There are a lot of trouble brought about by a second layer architecture.
The first is that the UI layer is difficult to design with artists and system designers, and because even Delphi is visual development tools, interface issues should be adjusted by programmers. Solving this problem can take two roads: use your skin system and the art will Ide.
Secondly, the standard lack of the service layer, although Corba has already appeared, but expensive costs and implementation are too difficult. In fact, such a service layer does have a BEA's Tuxedo, IBM CICS, but the scalability is small, the range is small, which is not as small as old.
Finally, the data layer is generally accessed directly, and the advanced is a powerful power, and several databases can be accessed. But there is no way to persistence to the subject.
Traditional three-layer architecture B / S
The launch of J2EE architecture has brought great progress. The previously introduced PHP, ASP, etc. The embedded scripting language is limited to a template scripting language, and the real architecture is still from J2EE.
Early J2EE is not mature, this picture should be J2EE 1.2, at least EJB2.0.
Similar to other scripts in the UI layer, template scripts, still have no better Action features, until the appearance of Struts has begun to change.
The emergence of SEESIONBean accelerated the establishment of the service layer, allowing business logic to actually appear independently, although the reality did not be so ideally.
Entity Bean's emergence, especially the appearance of CMP, established an object persistence layer, the database no longer needs to be detailed, even where there is no one if there is anything, although there is such difficulties and problems.
Modern multi-layer architecture
Multi-layer architecture begins with open source.
Struts is a famous MVC2, although it seems that the problem is still a lot, but it is undeniable that its credit is significant.
Aspectj brought AOP to make the development of ideas.
Spring makes these very simple and re-discover the strength of Bean.
Webwork, JSTL, Tapestry, JSF, PIO, Hibernate, Castor, etc., a series of open source plans are endless, I can list you to start vomiting.
There are many significant features:
Focus on the simplified development of the UI layer, enhanced template engines and components development, making Action or Lisnter a standard equipped.
The service layer emphasizes weak coupled, you can work with multiple wheels, convenient to replace the right framework, and even consider compatible traditional systems.
Object lasts for a long way, is aimed at EJB's soft, but 3.0 release will make up for EJB issues.
Migrant manufacturers compete for the market, tools and servers and versions, and jump more fast than the meter.
XML has a large line, has become a standard format, at least the standard of configuration files and conversion templates.
Modern architecture introduction
View layers. Display content, accept user manual information.
Template Engine Template Engine Layer. The content of the final view display layer is generated in the form of a template.
Action or Listener action or monitoring layer. Accept user manual action, feedback according to action.
Control Controls the UI layer. Control the action feedback of the UI, the page process.
Service service layer. In addition to system logic outside business logic, access domain logic interface, forwarding access to domain logic.
Domain logic domain logic layer. Business logic, business logic interface with traditional legacy systems.
Domain Model Domain Model Layer. Business model, with business-related object model trees, including object properties and relationships.
XML model. The domain model defined with XML. Given the importance of XML, listed separately.
Object Model. The domain model defined with the Object object.
Object personistent object persistence layer. Perside the domain model object.
Database system database system. Relationship or object-type database system represents a storage system. Application level architecture
It may be called a practical architecture because the following architectures are not conflict with modern architectures, which is based on modern architecture.
There is still no effort to develop, but it is very important to increase communication and training costs for development.
Application level architecture is a high-level architecture used to solve various business problems.
Workflow workflow. Solve the problem of the process part in the business system of all dependencies. Workflow routine process.
E-form electronic form. Solve all business systems require a frequent variation interface. Includes an electronic watch designer and a compiler.
Protal portal. Solve advanced integration of multiple business systems. Multi-service systems are not only integrated on display, but also interactively integrates interactiveness, which will like to have interactions.
Data Exchange Data Exchange. Data transfer and format conversion. Solve data exchange issues for multiple business systems.
Message message middleware. Solve asynchronous messaging issues.
Instance message instant messaging. Solve instant communication communication issues and allow interaction with business systems.
Real-Time real-time system. Requirements for time and high reliability.
Embedded embedded system. Develop applications on various other devices.