We often discuss such a few questions in the engineering of software development: How to develop software? You can use a variety of features, why is it so difficult? What is it so difficult to correct a bug? Why is a seemingly simple software that you can't see the end of the year? In the past, I have also encountered similar problems. Below is some of my experiences and experience, I hope to correct it.
Personally, I need to pay attention to the following aspects during software development:
First, there must be a good systematic analysis ability
Only by doing detailed, standardized and standardized system analysis can only avoid defects such as demand, product gilding, and unreasonable design in later development. Regardless of what development tool you use, system analysis is the most critical, and the specific needs are demand analysis and product structure design. I think "design mode" this book is good. If you need it, I can share it with interested colleagues.
It is worth mentioning here that I just write the code to the form when I start programming, drag the configuration from the panel, set the attribute, and then encode the event, and then realize that there is a lot of code is repeated, should Extract it as a common module, which is a simple multiplex. However, if we are in an object-oriented program development, we should try to add CLS modules in the project. To master object-oriented ideas, and can apply this idea to solve practical problems.
Second, have a good code to write habits
First of all, comments. In the school, the teacher asked us to have the necessary annotations, but always felt that there was no need, and later had a dark loss in the actual work. I think the code that has the necessary annotations is a robust code, we must develop a good comment habit.
Secondly, grammar habits. In fact, this is also some programmed habits, such as parentheses, end compliments, etc. Now, such as VS.NET and other tools will have a reminder on this issue, but I think there is a good programming style.
Then there is a problem with backup. When you start programming, we always don't pay attention to the timely backup of your work, so it is inevitable that some repetitive labor, and even large-scale rework. My usual backup is to indicate the name and date on the folder, and I feel very tube.
Finally, it is a documentation. Although individual documents in some projects can be written, these documents are essential. For example, our database design documentation in item 1 is not very detailed, so that we sometimes think about the meaning of some fields in half a day.
Third, practice first, avoid low eyes
Especially if there are some of the most probilized mistakes with some programming experiences is that the high hands are low, it seems that it is very simple to write. I don't have a matter. Personally, if a person has not written more than 10,000 lines, watching the software engineering book is similar to the political book, each sentence is right, just don't know why. After completing the tens of thousands of rows, go back and look at the theory, you can experience the sentence to the truth!
Fourth, pay attention to the software development ideology and method of the code behind the code
All knowledge is a complete system, and behind each theory is a summary of a large number of practical experience. Many textbooks are a subsequent effort to some grammar, but ignore many of the features that need to be programmed. I think it is also a way to improve someone else.
5. Avoid simple problem complexity
It is also the goal of my pursuit, huh, it is also the goal I pursued.