zoukankan      html  css  js  c++  java
  • 如何成为一个专业级的c++ 程序员 An answer from quora

    C++ is a Huuuuuge Language.
    The Path towards Expertise would be:

    • Understanding C++ - Step 0

    You have got to read The C++ Programming Language by Stroustrup, no way you can escape this. http://www.amazon.com/The-Progra...    

    • Understanding Histrory of C++ and Why come they designed the C++ Features - Step 1

    The Design and Evolution of C++ Book from Stroustrup would help you.http://www.amazon.com/The-Design...

    • Understanding Internals whats happening when you declare classes. -Step 2

    Inside C++ Object Model by Stanley Lippman would help you.http://www.amazon.com/Inside-Obj...

    • How to write Efficient Programs in C++ - Step 3

    Agner Fog Optimization Manuals would give you Start. http://www.agner.org/optimize/ 

    • How to write Correct C++ Programs - Step 4

    Effective and More Effective C++ book would help, you cannot clear any C++ technical Interview without reading this. Better search for Scott Meyers in Google and Read Everything. He has huge insights for writing correct way of C++

    1. http://www.amazon.com/Effective-...
    2. http://www.amazon.com/More-Effec...        
    • Understanding Design Patterns - Step 5

    It would give basics to understand Huge C++ framework libraries such as Qt , Boost etc., The Gang of 4 Book would help you. http://www.amazon.com/Design-Pat...

    • Understanding How to Create Efficient Frameworks - Step 6

    API Design by Martin Reddy would give you a start. http://www.amazon.com/API-Design...
    Phew .... We came so far without even touching Meta Programming and Templates.

    • Meta Programming and Templates - Step 7
    1. Understanding C++ Templates would help. http://www.amazon.com/C-Template...
    2. Modern C++ Techniques from  Andrei Alexandrescu  would give you a start.http://www.amazon.com/Modern-Des...
    3. Another good stuff from Andrei Alexandrescu http://www.amazon.com/Elements-P...
    4. Knowing how to use STL also helps, The C++ Standard Library.http://www.amazon.com/The-Standa...
    • Understanding How to become proficient in MetaProgramming - Step 8

    For this you need to take different path instead of learning C++ , you would learn Haskell or CommonLisp. Haskell would be perfect. http://bartoszmilewski.com/2009/...
    But i took the other one (Common Lisp). http://letoverlambda.com/

    • Now its time to lose focus on C++  and Learn Compilers, Functional programming, meta programming etc..
    • Implement C++ Compiler. (no mere souls  done that if you can pull off you got big future in Google,Facebook etc..)

    You may notice from Step 8, it become vague path. So I would say after Step 8 you need to invent your own Path. 
    Did I mention to read C++ 0x11 oh god So much to read but life is too short .
    So my opinion would be C++ language is gonna stay for foreseeable future unless we work on computer which is not based on Von neumann architecture.
    So better invest your 10 years to expertise C++  and Computer programming.

    It does pay off, you can demand Good Salary, no matter what hype is (VB, Java, C# and now Go). Its tested against Time .

  • 相关阅读:
    StateListDrawable状态选择器
    Shape
    每周随笔
    每周随笔
    每周随笔
    每周随笔
    每周随笔
    每周随笔
    每周随笔

  • 原文地址:https://www.cnblogs.com/wanghetao/p/2853860.html
Copyright © 2011-2022 走看看