How to become a professional C ++ programmer-an answer from Quora

Source: Internet
Author: User

C ++ isHuuuuuge Language.
The path towards expertise wocould 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 wocould 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 wocould help you. http://www.amazon.com/Inside-Obj...

  • How to Write efficient programs in C ++-Step 3

Agner fog optimization manuals wocould give you start. http://www.agner.org/optimize/

  • How to write correct C ++ programs-Step 4

Valid tive and more valid tive C ++ book wocould help, you cannot clear
Any c ++ technical interview without reading this. Better search
Scott Meyers in Google and read everything. He has huge insights
Writing correct way of C ++

  1. Http://www.amazon.com/Effective -...
  2. Http://www.amazon.com/More-Effec...
  • Understanding design patterns-Step 5

It wowould give basics to understand huge C ++ framework libraries such as QT, boost Etc., the gang of 4 book wocould help you. http://www.amazon.com/Design-Pat...

  • Understanding how to create efficient frameworks-Step 6

API design by Martin Reddy wowould 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 wocould help. http://www.amazon.com/C-Template...
  2. Modern C ++ techniques from Andrei Alexandrescu wocould 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 wocould learn Haskell or commonlisp. Haskell wocould 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 wocould 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 wocould be c ++ language is gonna stay for foreseeable future
Unless we work on computer which is not based on Von norann
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.

C ++ isHuuuuuge Language.
The path towards expertise wocould 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 wocould 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 wocould help you. http://www.amazon.com/Inside-Obj...

  • How to Write efficient programs in C ++-Step 3

Agner fog optimization manuals wocould give you start. http://www.agner.org/optimize/

  • How to write correct C ++ programs-Step 4

Valid tive and more valid tive C ++ book wocould help, you cannot clear
Any c ++ technical interview without reading this. Better search
Scott Meyers in Google and read everything. He has huge insights
Writing correct way of C ++

  1. Http://www.amazon.com/Effective -...
  2. Http://www.amazon.com/More-Effec...
  • Understanding design patterns-Step 5

It wowould give basics to understand huge C ++ framework libraries such as QT, boost Etc., the gang of 4 book wocould help you. http://www.amazon.com/Design-Pat...

  • Understanding how to create efficient frameworks-Step 6

API design by Martin Reddy wowould 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 wocould help. http://www.amazon.com/C-Template...
  2. Modern C ++ techniques from Andrei Alexandrescu wocould 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 wocould learn Haskell or commonlisp. Haskell wocould 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 wocould 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 wocould be c ++ language is gonna stay for foreseeable future
Unless we work on computer which is not based on Von norann
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.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.