Software development is a very creative job. I believe that many of my friends who are devoted to the software industry should be attracted by its charm at first. Every time you develop software that can be used by others, and every time you write beautiful programs, don't be so happy. Yes, as we initially felt, software development should follow the following two principles:
1. provide customers with stable, secure, and efficient programs at the specified time.
2. The code of the program should be easy to maintain and expand, and be reused..
The two principles mentioned above are relatively simple. If you need to describe them in detail, we suggest you buy a software engineering book to read them. The intention of the two principles is to clarify the relationship between them. Meeting the customer's needs is always at the top. Even if you use the most advanced language, method, and process, but do not finish by time or do not meet the customer's needs, your development will fail. I remember that I had a crush on Object-Oriented objects many years ago, so I considered an important project of the company as a test product. As a result, the progress of the project cannot be raised, leading to failure. Another project was completed by using the components provided by the tool because of time constraints. The project was still very successful. We are engaged in technology, so there is no reason to be enthusiastic about new technologies. But remember, you should never use it in actual projects before you fully grasp it.
In the second principle, everyone must pay attention to reuse. Based on my experience, as long as the reuse is done well, everything else can be done. Some people say a word on the Internet, which probably means that it is a good programmer to be lazy. To be lazy, good programmers should try their best to reduce repetitive work. Here, we should not only pay attention to the reuse at the individual level, but also the reuse at the project level and company level. If there are 10 people in a project team who are not conscious of reuse, it is possible that 10 people repeat the same logic. If a company is not conscious of reuse, dozens of people may develop the same logic, the development efficiency of this company can be imagined.
Again,
Meeting customer needs is the first and technology is the second.
Thought is the key, and everything else is a tool.