Baidu guardian 5.0 development summary, Guardian 5.0 Summary

Source: Internet
Author: User

Baidu guardian 5.0 development summary, Guardian 5.0 Summary

This is just a summary of development. Don't scold me. It has long been a gentle promotion. It is much better than before. Brother is just a small programmer. As a programmer, please consider the problem from the programmer's point of view. What should we do with such a large number of developers?

After a function is developed each time, many improvements are found, but the same mistake will still be made in the next development. This decision records the improvements, so that you do not make the same mistake next time.

1: scheduled estimation error, assessment development time too optimistic. I thought that I only changed the UI and added more than a dozen animations. As a result, the whole UI was rewritten. rewriting means that I should be familiar with the original requirements and read the logic of the original code, although I have a better understanding of the overall needs, I tried to read the UI code before, that is, I felt dizzy (the animation is directly on the original timer, there is no packaging, and everywhere ). After rewriting, all the Code except the original framework is retained and overwritten. Although the development tasks were completed on time, there were a bunch of bugs in the test phase. When my colleagues asked me why there were so many bugs, I was speechless. Now it seems that the rewrite decision is correct. Otherwise, a bunch of bugs that don't know why will drive me crazy. After rewriting, I knew all the requirements and implementation details, and the code was my own. I had a problem and solved it.

 

2. Clarify your ideas to solve the problem. There are two occasional bugs, that is, they cannot be solved, and all kinds of modifications cannot be done. This feature was previously implemented by myself. Now I just want to change the UI, add animations, and finally there is no way to solve it, I had to repeat the thought and found that the mouse_hover, mouse_leave, delete, add and animation were mixed together, and the code was also messy. The problem could not be solved after the change, in addition, I felt like I was out of control. After clarifying my ideas, I rewritten this function. As a result, the two bugs were solved successfully.

 

3. All the things I don't know have become bugs.. Yes, my brother has many bugs (please allow me to cry for an hour first ). During development, I often think about a rough idea. When I feel feasible, I start to write code. After writing the code, I compile and run it and get the desired results. I feel that there is no problem, start to develop the next function (the development task is heavy, and the speed is required). Then, this function is tested in this way. Then, the test will introduce several bugs to you, then the number of bugs is refreshing. Although it is difficult for us to take everything into account clearly, you must think clearly when you know that you can have doubts. Don't be lucky because you don't have a hunch to tell us, although it will not be able to pull out, it will certainly be pulled out, and you will be waiting to eat it.

 

4. I killed anyone who was closest to me, and the first person who was most likely to be killed. There are more than 20 bugs. I am focusing on modifying the BUG. I sent a Test message saying whether this is a BUG. I want to explain it. When I'm explaining it to the test, the product manager said that a "small demand" should be changed; the design said that the UI details should be changed; the Customer Service sent a message, and when will the legacy BUG be solved, many users have already reported this problem. My blood pressure suddenly went up. Don't stop me. I'm going to take the medicine. The doctor said: medicine, no, CAN, stop. Although a little exaggerated, sometimes it is really overwhelmed. The problem still has to be solved. Who is the programmer. We had to assign a priority to these tasks and solve them immediately if they are easy to solve. The urgent problem should be solved first, which only makes the problem look more and more, increasing the pressure on ourselves, if there are many problems that are easy to be missed and cannot be solved immediately, make a good record, because these Games belong to you and you need to clean them.

 

5. Asking for help is the fastest way to solve the problem. There is always something that people think about when asking for help. Generally, they don't have to ask for help. But sometimes they get into the tip of the corner and describe the problem when they ask for help, in fact, it is also a process of Clarifying Ideas. If you say something, you will find a solution to the problem. There are also some aspects that are more familiar to others. You need to master some knowledge points. If you don't know, you can't solve the problem. If you know it, you can solve the problem in minutes. At this time, you should consult with others modestly, don't be embarrassed to ask for help, but don't get used to it.

 

6 Reserve good knowledge and proceed. The UI of Baidu Guard 5.0 is very dazzling. With a lot of animations added, I need to implement a dozen animations myself. The problem is that I have never played any animations before, I don't know how long it will take to implement an animation. I don't know whether I can implement it or not, and I am arranged by experienced colleagues. Before development, I first looked at an example similar to an animation. I felt that it was okay, but I had a dozen or more animations, all kinds of animations, and there were no examples to copy. It took about one day to look at the Source Code related to the animation of the skin engine. There was no secret in the source code. After reading the source code, I found that writing an animation is still very simple, in fact, you can set the properties of the control by using the timer. The animation effect is visible to the human eyes at 24 frames per second. When I understand the implementation principle of animation, I can easily start the painting.

 

7. Add logs to your code. Sometimes I forget to add logs to the Code. If something goes wrong and I don't know how to troubleshoot it, I regret that I didn't add logs at the time. If there are some problems, I can solve them well without logs, so I don't have a clue, it seems that there is no problem, but the problem is that you are living in front of your eyes, so that you regret it because no logs are added.

 

8. Do not always guess.. This article mainly targets myself, because I have guessed my habits and style. It is not always a solution to the problem by guessing. Although many times I guess it is correct, how can I solve the wrong problem? Some occasional bugs, which you think is the reason for XX, are modified to solve. In fact, they are not solved. To solve the problem, locate the problem and analyze it.

 

9 Write clear and easy-to-understand code. This is hard to achieve, but it must be pursued. Have you ever felt that the code you wrote yesterday is completely unknown today, and you thought it was not your own code. Otherwise, how can you not understand what you wrote? This kind of phenomenon may be due to the fact that when I write a magic code, the average person does not understand it. Today, as a general person, I really cannot understand it. So when I write a God-level code, be sure to add comments to illustrate how God-level code comes from. Another case is that the Code is written as a dog, which is hard to understand. In most cases, it may be like this. Your own Xiang has always been what you eat. In order to make yourself eat less Xiang, write the code better. Clear thinking and clearly structured Code make people comfortable, and there will be the feeling of being powered. Chaotic ideas and code with chaotic structures make people feel uncomfortable and have a disgusting feeling.

 

10 speed or efficiency. There is a white line in Tang bohu's qiuxiang, which is probably like this: Give me the official boat to chase Washington | Hey, you have a vision, I got a name for myself. | eldest brother, your ship is sinking. | is it sinking fast. The development schedule is always very tight, so our development speed is very fast, and then a lot of bugs are generated, and then we spend the same time as the development to fix bugs, if we can write the code better during development, and do the job well after a few minutes, will the effect be better. I don't know, but I must be better at improving my abilities than the former. It is a strong capability to do things well at a time, and I think this kind of ability can be trained, when developing in this way, you are always training this capability. During the college entrance examination, I sat next to the first guy in the whole grade. During the mathematics test, I did not turn over the exam from the first question to the last question, except for the last question, all the other questions are correct. At the time of submitting the paper, I finally handed over the examination paper. At a glance, I saw that the answers to the last two choice questions were different from those of my brother, but I did not change my answers, finally, I became a junior college student and was still touched by my decision.

 

Finally, we sent two new versions of Baidu guard spy photos.

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.