FAQ 39.10 What skills help when learning OOC?

FAQ 39.10 What skills help when learning OO/C++?

graphics/new_icon.gif

Being able to see the big picture and solid software engineering skills.

Invariably the most successful OO/C++ developers (those that reach levels 3 and 4) share a set of core beliefs.

  • They love designing interfaces, they use programming by contract techniques, and they see the value of decoupling as an architectural goal.

  • They understand why interface reuse is more valuable than code reuse.

  • They are committed to building high-quality software systems in a team-oriented environment rather than just making sure their small piece compiles and runs.

  • They are willing to try new techniques, rather than rejecting new ideas because they've never used them before.

  • They understand the costs of using code to find code and they avoid it religiously.

  • They realize that requirements are always changing and they work hard at designing interfaces that are flexible and extensible.

  • They know what they know and they know what they don't know, and they are willing to seek out good advice in an effort to find better solutions.

  • They would rather understand how and why something works than be satisfied with simply getting something to compile and run.

  • They put the good of the many (the client code) ahead of the good of the few (the system code), and they understand that "breaking client code" is very expensive.

  • They understand the cost and benefits and risks of alternative approaches and factor them into their decision-making process.

  • They design changeability into the fabric of the system architecture and design, rather than thinking of "change" as an afterthought or maintenance activity.

  • They do not believe that one size fits all.

  • They listen before they speak they do not have an answer before they hear the question.

  • They want to understand why the software is being built the underlying business case in addition to simply knowing what the requirements are.

  • They consistently put business considerations ahead of technology considerations.

Developers with these skills will thrive when using C++ no matter what their background was C programmer, Smalltalk programmer, Cobol programmer, former CEO, or itinerant sheepherder.



C++ FAQs
C Programming FAQs: Frequently Asked Questions
ISBN: 0201845199
EAN: 2147483647
Year: 2005
Pages: 566
Authors: Steve Summit

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net