A brief summary of Smart client technology

Source: Internet
Author: User

absrtact: Smart client is a technology that combines B/s (thin client) and C/s (FAT client) with Microsoft. Smart client combines the advantages of B/S and C/s, with new features. 1.Smart Client Introduction

Smart client, referred to as intelligent clients, is a technology introduced by Microsoft to combine B/s (thin client) and C/s (Fat client). Smart client combines the advantages of B/S and C/s, with new features.

Smart client benefits are easy to upgrade

Similar to the B/s architecture of the program, as long as the software updates on the server, simple configuration, the client will automatically update the software. For example, a virtual directory is established on the server's site, the client application is published to the virtual directory, and the client installs the update in HTTP mode.

Rich client, powerful user interface, better user experience

Smart client can use WinForm to develop client-side programs, can fully use the WinForm on the various controls and resources, to break through the B/s (thin client) in the performance of the limitations, the web if certain features may have to pass ActiveX or applets.

Take advantage of client-side resources

Make full use of the client's software resources and hardware resources.

can support online and offline use

b/S program needs real-time network connection, data exchange and processing needs repeated request response, need to refresh the page repeatedly. Smart Client allows users to download data to client side for offline data processing, and when users reconnect to the network, they can manually or automatically submit updates to the server.

2. Problem data conflicts that need to be addressed by developing smart client

The Smart Client allows data to be saved to the client side, processed offline, data is processed and submitted to the server, but when submitted to the server, there is a concurrency problem, and data conflicts are likely to occur when the user processes the data offline. Smart client needs to solve the problem of concurrency data conflicts.

Data security and application security

Offline processing means that data needs to be stored locally and protected from unauthorized access to sensitive data. We mentioned above that smart client can install and update client-side programs via HTTP, requiring protection against unauthorized updates and program runs.

3.Smart Client Technology Brief introduction to Smart Client deployment technology (Onceclick technology Brief)

Onceclick technology allows applications to be published in three ways, Web mode, network shared directory, media publishing (such as CDROM), and so on. Web Way to publish the application to a site or virtual directory, you can install and update the application via HTTP, the network shared directory publishes the application to a public directory that exists on the network, the user can install the update application through the shared directory, and the media release can install the application through CDROM. And then by other means for the application through the update.

Smart Client offline data processing

There are three ways Smart client data is processed offline: Database synchronization, isolated storage, Message Queuing. Database synchronization needs to keep the client data and server side of the database synchronization, the isolated storage needs to open a space on the client side to store data offline, Message Queuing is to submit data processing to MQ, and then through MQ submitted to the service side (MQ is simply a way to submit Does not solve the problem of data conflicts). Here's an example of how an isolated store is implemented:

Isolated storage is a space store on the client side of the data, when the isolated storage operation, we will use a very useful namespace-System.IO.IsolatedStorage.

Code UsingSystem.IO;UsingSystem.IO.IsolatedStorage;UsingSystem.Data;
NamespaceWaithandleexample {ClassCachehelper {/// <summary> ///Writing data to a local file/// </summary> /// <param name= "Data" ></param> /// <param name= "FileName" ></param> Public Static voidWritedatasettoisolatedstorage (DataSet data,StringFileName) {IsolatedStorageFile Isostore=Isolatedstoragefile.getuserstoreforassembly ();Using(IsolatedStorageFileStream Isostream= NewIsolatedStorageFileStream (FileName, FileMode.Create, Isostore)) {Using(StreamWriter writer= NewStreamWriter (Isostream)) {data. WRITEXML (writer, xmlwritemode.diffgram); } } }/// <summary> ///Read data from a local file/// </summary> /// <param name= "Data" ></param> /// <param name= "FileName" ></param> Public Static void Readdatasetfromisolatedstorage (DataSet data, string< Span style= "color: #000000;" > FileName) {IsolatedStorageFile isostore = Isolatedstoragefile.getuserstoreforassembly (); using (IsolatedStorageFileStream isostream = new IsolatedStorageFileStream (FileName, FileMode.Open, Isostore)) {using (StreamReader reader = new StreamReader (Isostream)) {data. READXML (reader, XmlReadMode.DiffGram); } } } } } 4.SmartClient Basic System Architecture System Architecture Simple Introduction

Key points: In order to reduce the complexity of the consideration, first ensure that the client download data does not fall, that is, the client side to obtain the original data is not stored on the local disk, the raw data processing results sent to MQ, MQ to complete the final submission.   In order to avoid data conflict, through the business negotiation and technical approach, as far as possible according to user allocation of raw data, reduce concurrency resulting in data conflicts.   After the WinForm program is developed, consider using Microsoft's Onceclick technology to publish to the Web site, and all deployment and subsequent program updates are done through the Web site. Data interaction such as user authentication is done by invoking a Web service on the client side.

5. Choose the right architecture

Although the C/s architecture and B/s architecture have their own shortcomings, but all have their own suitable application scenarios, such as B/s architecture if the user experience may be poor when encountering complex user interface, but in the actual business requirements, most of the user interface is not very complex, A small number of complex processing can be done within the scope of business requirements to allow the use of job,ssis or automatic processing programs, so the choice of B/s architecture is very appropriate. Smart Client provides a great development idea, and offline processing can be very handy if you run into a cash register or a simple handheld device system. Objectively speaking, each architecture has its own advantages and disadvantages, objective analysis, according to demand, development efficiency, cost, maintenance updates and other factors to choose the appropriate architecture.

http://kb.cnblogs.com/page/78823/

A brief summary of Smart client technology

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.