I think i will learn some things in this topic so thanks... and i will try to contribute to what i learned so far.
Now, my opinion (NULL experience, so the opinion is for entry-level developer), a good developer (or just good, and developer sometime in the future) should know:
- the basic concepts of the programming paradigms (including generic programming)
In C++ if a developer will understand templates, he will better understand the generic containers and the generic algorithms and the requirements that the algorithms have about the containers or data in containers.
- to "express" the paradigms into a programming language (best for learning is C++ <just my opinion>)
- basic of STL (or another "standard" library, if he knows another language) the understanding of STL (in C++ case) helps on understanding any other library's containers and algorithm (like the Qt one);
Only "disadvantage" that i had is the confusion i kept doing about QList (that does have operator [] and its not a linked-list)
- and must be able to admit when he makes a mistake
And for a senior developer i think it is absolutely necessary to know to design multi-threaded and networking software.
Looking forward to see your opinions
Bookmarks