How smooth Software

Source: Internet
Author: User

The smoothness of software is a very important issue. No matter what software is, it is important and General. It runs in areas related to national economy and livelihood, or is used by common users. First, let the user use the comfort, that is, the user experience is good, how to reflect this, fluency is undoubtedly the most intuitive. What corresponds to smoothness is jamming, slow response, and slow response... imagine that the software or system developed is slow, slow, and slow. I think no matter how important the software system is, it will not be recognized by users, in addition, it is now a market economy, and bad things must be eliminated.
Because the running of a program requires a process, generally including: Data Acquisition (Network, local; the obtained data source is nothing more than a database and configuration file), data loading (refers to loading to a control for display), operation data (also manifested in operations on the control), data packaging, data operations, data conversion, etc, there are also logical processing, including operation steps, method calls, Object Instantiation, and so on.
In terms of data, a good database design is required, so that data reading and writing should not have too complex logic to reduce the running time. Write high-performance SQL statements as much as possible. In general, the optimization space is relatively small.
With the emergence of the so-called "Cloud" concept, the method of reading data from the network is more and more, in fact, this is a relatively time-consuming. It takes time to read data from the network or upload data locally to the network. In C #, services such as WebService and WCF are used. In addition to optimizing the database and SQL statements, you should first reduce the data operations on the server. For example, the data read is generally a datatable, we may have defined classes on the server, and then encapsulated the able data using classes. At this time, it must take a lot of time, especially when there is a large amount of data. If you require high speed, you can remove this step and complete the encapsulation on the client. The second is the data operation on the server side. For example, if you want to convert string to int, You need to perform addition, subtraction, multiplication, division, and convert it to a certain format... because the Server Always has multiple clients to access, so many operations will definitely affect the read time. Second, for transmission problems, the read data is always sent to the client and can be processed, such as compression. Finally, it is of course a requirement for the network. This is nothing more than increasing the bandwidth, using multiple servers, and distributed servers.
In terms of logic processing, the biggest magic weapon is asynchronous operations, because no matter how high the performance is, it is always necessary to run the time. In this case, asynchronous processing is required. The thread and backgroundworker after 4.0 are used to prevent the main process from getting stuck when processing sub-businesses. A common method is to use a prompt or wait box to let the user know that a processing is in progress. At the same time, the user can cancel the current operation at any time and transfer the operation to another step. You can also use some caches to store some common data to avoid reading some data repeatedly. The operation logic can be distributed for a long time to avoid waiting for a long time.
Of course, in these processes, algorithms are very important and use algorithms to improve performance.
In short, a smooth use of software can always bring better satisfaction to users. After all, the value of software can only be reflected by users.

Related Article

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.