Current location - Quotes Website - Excellent quotations - Learning software development, how to plan your life?
Learning software development, how to plan your life?
1. A good way to master a certain technology is to study its source code and constantly abstract your own things.

2. Immerse yourself in learning, write an effective program or project, and check whether you can complete the project with good quality and quantity.

3. We should establish our own development direction and draw up a constructive plan. Proceed from the demand, achieve mastery through a comprehensive study and improvise.

4. You should have your own technical expertise if you have a good knowledge of Taoism and have a specialization in the art.

5. Artificial intelligence and data mining technology will also become the core competitiveness of modern software engineers. Future products will include: hardware, software and intelligence.

6. Mastering the core technologies and principles of software development and strengthening practice will make it easy to learn new technologies and other skills in the future.

7. Programming also has a kind of' combination' art, which uses all kinds of suitable things to develop effective software together and uses combination instead of inheritance. Learn different programming methods (functional, declarative and dynamic) to expand your thinking. The development language is just a tool, and usually one (or even several) language tools should be chosen to complete the development work better.

8. divide and rule, combine them, and break them. "Linus Torvalds, founder of Linux kernel: In a huge project, people don't know the modules that they didn't develop themselves. Only by quickly understanding the exact meaning of functions in other modules can the development efficiency be improved"-(similar to pair programming in agile development, the purpose of understanding the whole project can be achieved and the development efficiency can be improved). At the same time, programmers should not indulge in some short-term technical fancy trends, but ignore the growth of interpersonal relationships and the cultivation of core competitiveness.

9. Parallel computing is to improve the operation efficiency. After years of development, China has also made remarkable progress in the research of parallel algorithms. The application of parallel computing has spread all over the fields of weather forecasting, oil exploration, aerospace, nuclear energy utilization, bioengineering and so on, and great progress has been made in theoretical research and application popularization.

1. When developing system software, it is important to really understand the operation mode and process of the system, while those beautiful abstract techniques and advanced features are secondary. Once the details of object-oriented programming are involved, many problems begin to appear. For example, who created the object, who managed it and who deleted it (object model: what to do? When to do it? To whom? ); What methods should be in the interface, and whether the methods should be implemented in the base class or in the derived class; Why interfaces should have these methods instead of those. Programming for interfaces makes programs more common.

11. Try to participate in the development of more open source projects and develop some products with friends.

12. Do the unit test by all means, and catch the mistakes this morning. Use testing to drive design improvement.

13. Keep pace with the times. For example, we can learn the essence of MFC framework management, object-oriented and message-driven, and then we can choose to give up MFC.

We advocate the spirit of. net framework and java: engineering, convenience, security and stability. When developing software, not all functions need to be re-realized, which is the classic saying that "there is no need to reinvent the wheel". We should stand on the shoulders of giants and make full use of the achievements brought by software industrialization.

14. In fact, if you study C/ Assembly further, China's software will have hope! For example: operating system, device driver, image graphics engine.

15. the YB era of global data explosion has arrived

Jim Held, director of Intel's terascale computing research project, said recently that the current global data storage is increasing at a rate of 6% every year. Hyde said: "A lot of data, rapid growth, has made us unable to handle." . Hyde said: "We have entered the ZB era and will soon enter the YB era." (Note: 1ZB = 1,,,, (1 to the 21st power) GB, YB=1 to the 24th power. Hyde said that the increasingly stable Internet service, the rapid popularization of smart phones and the huge demand of countless enterprises have made the global data explode. At the back end, the Internet-centered cloud platform has a unified trend, and even integrates other industries such as home appliances, radio and television, media publishing, and e-commerce.