C++ design after C++11

Dear experts

As you know, C++ has developed to provide standard ways in multi paradigm(generic, object-oriented, functional,concurrency etc), particularly after C++11.

I have felt that these design way (Of course, also implementations level) is not mutually exclusive, but mutually affinitive and complementary. Here, I think well-known design way (that is, written in books) is almost based on object oriented or generic(template) before c++11, which sometimes bothers me in if there were more flexible and robust design guideline.

How does everyone acquire design ways after c++11? Try & error? some textbooks? Or, there is no way?
C++ has always been introduced new ways of doing things. Multiple inheritance, OO with efficiency comparable to C, exceptions, templates, STL prior to standardization. Keeping up has always been an issue.

There's no magic bullet. Much of the stuff in C++ have never been available in a popular language before, that's always been the case.

I'd say read articles/code, listen to what others have to say, experiment ...
From my position of being a self-taught and still learning hobbyist how I have gained my rather minimalist knowledge of C++11 and beyond is reading books, scraping the bowels of the internet for code examples (especially relevant is the cppreference website) and hanging around here looking at what "the experts" do with code.

And constantly writing code, even it is some variation on an example I saw. Or some mashup from someone's code who is asking questions here.
Dear kbw & Furry Guy

Thank you for your replies.

Indeed, I learned that I have to study each technique from books and people, and write & write codes by myself.

I sometimes realize that great design leads to so productive, safe, robust, and scalable software. I must learn & learn ...

In anyway, thank you so much for your advices.
Topic archived. No new replies allowed.