Joke Collection Website - Public benefit messages - Key technologies adopted

Key technologies adopted

1. Hierarchical development

In the software development in previous years, the two-tier structure occupied a very important position. Two-tier architecture still exists widely until now, but it has many shortcomings, for example, the maintenance cost of the client is high and it is difficult to realize distributed processing. With the addition of more layers between the end users and the back-end services of the two-tier structure, the multi-tier structure appears.

the classical three-tier theory divides the application into three levels, as shown in figure 2-63.

Presentation Layer, which is used to deal with human-computer interaction. At present, the two most mainstream presentation layers are Windows format and WebBrowser format. Its main responsibility is to handle user requests, such as mouse clicks, input, HTTP requests, etc.

the Domain Logic Layer, which simulates the actual activities in an enterprise, can also be considered as a model of enterprise activities.

Data source Layer, which deals with database, message system and transaction system.

in practical application, there are some changes in the three-tier structure. For example, in Windows. NET system, the application is divided into three levels: Presentation Layer, Business Layer and Data Access Layer, which correspond to the three levels in the classic three-tier theory. It is worth mentioning that the presentation layer in the. NET system can directly access the data access layer, that is, the recordset technology. In ADO.NET, this technology has been very mature, and has achieved very friendly functions through some data-aware components in the presentation layer. This cross-layer access technology is generally considered not to be allowed, because it may destroy the dependencies between layers. In the Windows platform, strictly following the guidelines means a lot of extra work. Therefore, we can see that the criteria are not immutable.

in this system, the data access layer should be further divided into basic data access layer and business data access layer. The former mainly completes database access and transaction processing, while the latter inherits the objects of basic data access for the tables in the database to realize its own data access requirements. Because this system involves graphic configuration and interface data interaction, the presentation layer adopts the combination of desktop mode and IE mode, business operations are mainly carried out in IE, and workflow configuration and data interface with P3 (or MS Project) are mainly completed in desktop mode.

figure 6-63 schematic diagram of hierarchical development

2. service-oriented architecture

SOA (service-oriented architecture, also called service-oriented architecture or service-oriented architecture) refers to a software system architecture that is realized by connecting independent functional entities that can accomplish specific tasks in order to solve the needs of business integration in the Internet environment. SOA is a component model, which connects different functional units of an application (called services) through well-defined interfaces and contracts between these services. Interface is defined in a neutral way, and it should be independent of the hardware platform, operating system and programming language that implements the service. This enables services built in various such systems to interact in a unified and universal way.

This system adopts service-oriented architecture, with high cohesion within components and low coupling between components, which improves the maintainability, expansibility and portability of the system.

3. Adopt object-oriented design method

This system adopts object-oriented programming method. The main purposes of object-oriented software development are: using reusable software technology to speed up problem solving, shorten development time and reduce software development cost; When the software function changes, it is only necessary to modify the implementation method of one or more classes, which can localize the influence of the software function change and thus reduce the cost of software maintenance. The main challenge of object-oriented software design is to decompose the software system into basic data types or classes and subclasses, and to define the characteristics of each basic class and subclass. In the concrete implementation, we standardize the part with * * * in the design and compile it as the parent class. Common data and processing are defined in the parent class, and other subclasses are inherited from the parent class and expanded appropriately according to special requirements.

In the specific implementation process, we have adopted the following methods:

(1) Encapsulation of using objects: We have strictly encapsulated the code of the basic class library, and the changes and upgrades of the class library will not affect the programs that use the class library, thus improving the maintainability of the programs.

(2) using multiple inheritance: we will use common functions, such as inserting, deleting, modifying and saving data, sorting, filtering, searching and replacing data, and printing tables.

(3) Use polymorphism: Polymorphism brings great flexibility to programming. We use polymorphism to provide a unified access interface for similar functions in different environments and enhance the readability of the program.

4. distributed computing technology

there are many kinds of distributed technologies, such as CORBAR and COM+. on the. NET platform, there are WEB services and Net Remoting technologies. Web service is a new distributed computing technology, which can cross the boundaries of application system component model and operating system programming language and be called by clients or other servers.

Web service is a new method to make remote method calls on HTTP by using SOAP. In the past, this problem has been very difficult, because using DCOM (Distributed COM) in the past was very troublesome in instantiating the objects of remote servers, using methods and obtaining results, and it required high skills when making necessary configurations.

the system adopts Web service to realize the distributed structure, and the distributed transaction is realized by. Net Enterprise Service. Implementation of implicit distributed transaction:

The biggest advantage of implicit distributed transaction is that it doesn't need to control the transaction manually, and a transaction range is declared through the code block, and the operations within this range will automatically enter the transaction. This kind of transaction mode is realized through the transactionscope object in. Net Enterprise Service. Display distributed transaction implementation:

display distributed transaction to manually get a transaction from DTC, associate the transaction with the connection that needs to enter the transaction, and manually commit or rollback it. This kind of transaction mode is realized by Committable Transaction object in. Net Enterprise Service.

5. integration with workflow engine

the workflow system adopted in this system integrates computer communication technology, component technology and graphics technology, and its practicability, advancement and reliability have reached the leading level in China.

6. Using VML technology to draw the progress plan in the browser

Drawing in the browser has always been a difficult step for many software companies. VML technology is adopted in the system, which provides users with the function of drawing the schedule diagram directly in the browser, and can track the schedule diagram, as shown in Figure 6-64.

the schedule chart in the system has two forms: single code and double code, and can be converted to each other.

7. Perfect combination and close integration with Microsoft Office software

Microsoft Office is a commonly used office software. Many documents in the process of project management, such as work contact list and design change list, are mostly in Word format, while some reports are in Excel format, so the system is required to be seamlessly connected with Microsoft Office suite. Emphasizing the integration with Microsoft Office is not only convenient for users to use, but also can protect users' investment in Microsoft Office to the greatest extent.

8. integration with electronic signature and handwriting technology

with the continuous improvement of the requirements for the security and authenticity of documents in project management, especially for handwritten signatures and electronic seals, it is required to sign and stamp on Word/Excel documents, and it is necessary to realize the functions of multi-person countersigning, signature verification, authentication and non-repudiation. According to the actual situation, Dongfang Thinking adopts the third-party software iSignature (which has passed the security inspection of the Ministry of Public Security) to manage the handwritten signature electronic seal software. The scheme adopts information encryption and data compression processing technology, which has good reliability and strong expansibility and is widely used in government and enterprises.

iSignature handwritten signature electronic seal software consists of signature key disk and software. The signature key disk comes with CPU, fast memory and encryption processing mechanism, and is used to store digital certificates, seal information or signature information of companies or individuals. The signature key disk is connected with the computer through USB interface. The software is automatically embedded into Word/Excel to realize seal or signature.

9. Integration with SMS Cat

Integration with SMS Cat, a third-party product, is adopted to realize the sending and receiving function of short messages, timely remind pending tasks or send notices.

1.OWC technology

OWC, namely Office Web Components, is a collection of COMponent object model (com) controls, which can be used to publish spreadsheets, charts and databases to websites. They can also be used to view these published projects and data access pages. The exchange and storage of data between forms and database are realized by using the technology of "form template label", which solves the problem that the program needs to be revised repeatedly on each form because of different forms in different expressway projects (generally about 4 for each project).

The system adopts OWC technology of Microsoft, with intuitive interface and simple operation. All kinds of tables operated in the system are consistent with those operated in Excel tables and conform to users' habits. And the efficiency of filling in the form data is improved. It is convenient to customize and output the report format.

11. Easy integration with Biztalk Server

Biztalk is an XML-based data exchange standard. Biztalk Server is Microsoft's enterprise application integration server, and the standard for data exchange between them is Biztalk.

through Biztalk Server, the system can be easily integrated with OA and other systems, including processes.

12. single sign-on technology

single sign-on adopts encryption and digital signature technology based on digital certificate, which implements centralized and unified management and identity authentication for users, and serves as a unified login entrance for this system and other application systems, and at the same time issues login tickets for various application systems for legal users who have passed identity authentication, thus realizing "single sign-on and multi-point roaming".

13. Mobile operation of handheld device (PDA)

Figure 6-65 Mobile operation of handheld device

The system adopts SmartClient technology and provides mobile operation function of handheld device (PDA). For example, quality inspection and evaluation, on-site inspection data can be collected directly through PDA, and then synchronized with server data through synchronization mechanism.

14. multithreading technology

by default, only one thread is executing tasks in an application process, but the system often executes CPU-consuming tasks such as compressing files and transmitting data. If a single thread is used, the overall performance of the system will decline.

This system adopts multithreading technology, and enables new threads to execute complex tasks, thus ensuring the performance of the system.

15. Application of Enterprise Library 2.

Enterprise Library is a set of basic components provided by Microsoft for enterprise development, which fully realizes the configuration and use of XML, including data access, security, logging, exception, encryption/decryption and other services. Enterprise Library 2. has made great changes compared with 1., with more perfect functions and simpler use. The system adopts Enterprise Library 2., and has been redeveloped, which makes it more in line with the application of this system.

16.Ajax technology

Ajax uses a set of technologies that enable browsers to provide users with a more natural browsing experience. Before Ajax, Web sites forced users to enter the submit/wait/redisplay paradigm, and users' actions were always synchronized with the "thinking time" of the server. Ajax provides the ability to communicate asynchronously with the server, thus freeing users from the cycle of request/response. With the help of Ajax, you can use JavaScript and DHTML to update the UI immediately when the user clicks the button, and send an asynchronous request to the server to update or query the database. When the request returns, you can use JavaScript and CSS to update the UI accordingly, instead of refreshing the whole page. Most importantly, the user doesn't even know that the browser is communicating with the server: the Web site seems to be responsive immediately.

Ajax technology is widely used in the system, which improves the efficiency of the system and enhances the user experience.