The underlying software developers and all programmers should follow the following principles if they want to design the software well (with good structure and portability) and adapt to changes in new projects:
· The most important thing is to understand basic concepts.(Such as the operating system), master the design principles (such as interface layering ).
· Second, Experience Accumulation. Practical experience is more valuable than book knowledge, which can greatly improve the efficiency of subsequent work and learning.
· Third, focus on new software technologiesImprove your understanding of software design.
It should be noted that a complete and fixed learning route is difficult to determine. One is that it varies from person to person, and the other is that technology advances rapidly.
This was taken from the top of todaygood's blog. todaygood's learning efficiency is higher than mine. Maybe it's better to train people in a work environment. In terms of the Learning Philosophy of embedded system software development, our views are consistent. I still pay attention to these three aspects. Basically, during the daytime, I learned how to summarize and improve my learning methods based on my accumulated project experience, in the evening, I will study the software design basics and theoretical basics. The rest time interspersed in the middle can be used to create forums, read blogs, pay attention to new software technologies, and learn how such technologies are developed.
Of course, the premise of these work is to determine a basic knowledge system framework, lay a good foundation for the framework during the school period, and expand as much as possible. After the work, we will continue to refine the work to form expertise. This is my learning philosophy.
In addition, you must learn to write documents. There are two reasons: Exercise your expression ability. If you really understand it, you can see whether writing a document can be understood by others. If yes, it proves that your understanding is in place. At the same time, we can use the discussion to find the blind spots we can understand and deepen our understanding. Second, back up data as technical experience. You can use it quickly when needed, without wasting a lot of time searching on the Internet. In case the system goes down, it can be quickly restored. It can be said that this is your own experience and wealth. Managing these resources is of great help to you.
Related Articles]
- Newbie School: detailed introduction to the embedded Linux File System
- New school: Learning and planning for Embedded Linux operating systems
- Memory Management Methods in Linux Embedded Systems