Developing software is really interesting.

Source: Internet
Author: User

I am working on a small software program these two days. I don't know how to do it. I have been doing it for nearly 10 years.ProgramPersonnel, now I have this experience, the original development program is really interesting.

Of course, if you want to develop software that is interesting, you must have some prerequisites. First, you must have enough spare time. Second, the software you develop is your own idea, rather than the company's use to spoof customers, you must be enthusiastic at last.

So where is it interesting? People may laugh. There are two aspects: one is the continuous flow of ideas, and the other is the gradual implementation of these new ideas. After realizing your own ideas, you will have a sense of accomplishment and want to share it with others. So I will release the software later to share with you.

This software first came from a sudden thought. One day I saw an article about how to Capture screenshots.ArticleThe article is rough, but points out the key point, that is, how to intercept the screen content. To put it bluntly, this is nothing. In. Net, a statement can be implemented, so I came up with the idea of making a screenshot software.

But I didn't do it immediately until one day I thought about it while I was sleeping, so I started to do it. After 1 drop of sweat, the basic functions of screenshot can be done. You can draw an area on the screen and adjust the size of the area, then save the image in the area as an image.

After that, you will have a new idea. Because you have used snagit, you know that it has an editor that can process the captured image and add blocks, lines, and text, so I plan to create an image editor. However, the image editing function is not so easy, at least for me. However, if you think of it, you must do it. Otherwise, you may not be able to go to bed at night.

As a result, the editor function is similar to the Form Designer of vs. You can add, delete, select, and drag objects. Here, objects refer to shapes, such as squares, circles, and text boxes. It took me 3 drops of sweat to do these features.

After these functions are available, I find it is also troublesome to modify the shape style, such as the background color and line color. net built-in Attribute Editor, you can immediately find that the effect is not very good, so you just want to make a shape editing architecture, similar to the Attribute Editor, but the interface form can be more loose. In this way, it took me 5 drops of sweat to finish it.

While working on the editor, I found that a simple image file could not store the attached shape data. I had to define a file format to store the data. In this way, it took me 2 drops of sweat to design and format files, as well as to implement the function of reading and writing files.

When the editor is almost done, I feel that the corresponding menu and function on the interface is not very convenient, and hard coding is required, which is inconvenient for development. In this way, I spent four more drops of sweat imitating the vs command subsystem. That is to say, a menu or button can be bound to a command. After clicking it, You can directly execute the command. The menu is generated by the configuration file.

The following is my turn to the main form. I didn't know how to set it at the beginning. Later I wanted to look like a resource manager. The right side is a screenshot list. What is the left side? Is the directory list. Here, I introduced the concept of "local library. The local library is the container for storing screenshots. You can create directories and subdirectories in the library, which are the same as those in the Windows File System. Different directories can store screenshots for different purposes. Of course, screenshots can be moved in different directories. So I spent two more drops of sweat.

Since the main form is like Windows resource manager, it should support drag and drop of files. After a little research, this function is implemented. But can I drag it directly to Windows resource manager or other application software, such as Word? Another research has been done. Fortunately, these functions are not too complex, and only one drop of sweat is used.

All screenshots are in the library. How can we get them out? Of course, the export function is required. You have to export the image carefully, because it may be a feature that users often use, so it took 2 drops of sweat to complete the process.

So far, most of the functions have been available, but I suddenly thought that some people would like to put their personal information on the graph after capturing the screen, so I thought of adding a watermark function. You can edit multiple watermarks so that they must be compatible with the original program.Code. It was a fierce change to the original program, and the watermark function was available again. It took me 3 drops of sweat.

Is it okay? No! Option ah, this is a very important aspect to increase the user experience. It was changed for a while and it took two drops of sweat.

What else? By the way, localization, this is a necessary way to go abroad, and spent 4 drops of sweat.

Now, let's get started. Although all the functions of the software have been completed here, there are far more creative ideas ......

 

If you are reading this article, you may wonder why you always mark a few drops of sweat. In fact, I just want to tell you how complicated the workload of a function is compared with the original idea. At the beginning, I didn't even think of what it would be at the end. Looking back, it turned out to be a sense of accomplishment.

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.