{"id":6330,"date":"2022-03-28T17:53:57","date_gmt":"2022-03-28T17:53:57","guid":{"rendered":"https:\/\/www.modernescpp.com\/index.php\/a-sample-for-my-mentoring-program-fundamentals-for-c-professionals-as-a-sample\/"},"modified":"2022-03-28T17:53:57","modified_gmt":"2022-03-28T17:53:57","slug":"a-sample-for-my-mentoring-program-fundamentals-for-c-professionals-as-a-sample","status":"publish","type":"post","link":"https:\/\/www.modernescpp.com\/index.php\/a-sample-for-my-mentoring-program-fundamentals-for-c-professionals-as-a-sample\/","title":{"rendered":"A Sample for my Mentoring Program &#8220;Fundamentals for C++ Professionals&#8221;"},"content":{"rendered":"<p>Before you participate in my mentoring program, you should know more about it. Today, I publish as a teaser, step six of the 28 steps to master C++.<\/p>\n<p><!--more--><\/p>\n<div>&nbsp;<\/div>\n<div>&nbsp;<a href=\"https:\/\/www.modernescpp.org\/lessons\/copy-versus-move-semantics\/\"><img loading=\"lazy\" decoding=\"async\" class=\" size-full wp-image-6329\" src=\"https:\/\/www.modernescpp.com\/wp-content\/uploads\/2022\/03\/SampleSmall.jpg\" alt=\"SampleSmall\" width=\"640\" height=\"360\" style=\"display: block; margin-left: auto; margin-right: auto;\" srcset=\"https:\/\/www.modernescpp.com\/wp-content\/uploads\/2022\/03\/SampleSmall.jpg 640w, https:\/\/www.modernescpp.com\/wp-content\/uploads\/2022\/03\/SampleSmall-300x169.jpg 300w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/a><\/div>\n<div>A short reminder: My English mentoring program &#8220;Fundamentals for C++ Professionals&#8221; starts on the 22nd of April. The goal of the program is to become a professional C++ developer in 28 steps in 9 months. To do this, you must invest 3 hours per week. I have chosen the weekly time commitment for my mentoring program in such a way that it can be mastered safely alongside work. Here are the 28 steps.<\/div>\n<h2>28 Steps<\/h2>\n<p>Here are the 28 steps:<\/p>\n<ol>\n<li>Introduction<\/li>\n<li>Literals<\/li>\n<li>Types: enumerations, pointer, references, and casts<\/li>\n<li>Types: type deduction with <code>auto<\/code> and <code>decltype<\/code><\/li>\n<li>Values: initialization, conversion, <code>const<\/code>, and <code>constexpr<\/code><\/li>\n<li>Values: move semantics and perfect forwarding<\/li>\n<li>Memory<\/li>\n<li>Functions<\/li>\n<li>Classes: attributes and constructors<\/li>\n<li>Classes: initialization, destructors, and member functions<\/li>\n<li>Classes: <code>default<\/code>, and <code>delete<\/code>, operator overloading, explicit, access rights, friends, and structs<\/li>\n<li>Inheritance: abstract base classes, access rights, constructors, base class initializers<\/li>\n<li>Inheritance: destructor, virtuality, <code>override<\/code>, and <code>final<\/code>, and multiple inheritances<\/li>\n<li>Templates: functions and classes<\/li>\n<li>Templates: parameters and arguments<\/li>\n<li>Template Specialization<\/li>\n<li>Type Traits<\/li>\n<li>Smart Pointers<\/li>\n<li>STL: General Ideas (containers, algorithms, iterators, callables, range-based)<\/li>\n<li>STL: Common Interface of the Containers<\/li>\n<li>STL: sequential containers and associative containers<\/li>\n<li>STL: algorithms<\/li>\n<li>Strings including string views<\/li>\n<li>Regular Expressions<\/li>\n<li>In- and Output<\/li>\n<li>Threads: creation, data sharing, mutexes, and locks<\/li>\n<li>Threads: thread-local data, thread-safe initialization, condition variables<\/li>\n<li>Tasks<\/li>\n<\/ol>\n<h2>One Step<\/h2>\n<p>One station contains theory, practice, and mentoring.<\/p>\n<ul>\n<li>Theory\n<ul>\n<li>Pure theory with approx. ten slides (video)<\/li>\n<li>Applied theory with approx. five examples (video)<\/li>\n<\/ul>\n<\/li>\n<li>Practice\n<ul>\n<li>Explain the exercises (video)<\/li>\n<li>Explain the sample solutions to the exercises (video)<\/li>\n<\/ul>\n<\/li>\n<li>Mentoring\n<ul>\n<li>Live Q&amp;A session on each Friday of each week, in which I address questions about the week&#8217;s topic; I record this session.<\/li>\n<li>E-mail queries by participants; I publish the e-mail responses anonymously if appropriate or address them in the Q&amp;A sessions.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2>Step 6 (Move Semantics and Perfect Forwarding) as a Sample<\/h2>\n<p>I cannot present to you my mentoring, but you can at least try out my theoretical and practical parts. Just jump into my course:<a href=\"https:\/\/www.modernescpp.org\/lessons\/copy-versus-move-semantics\/\"> Move Semantics and Perfect Forwarding<\/a><\/p>\n<h2>Technical Details<\/h2>\n<ul>\n<li><strong>Launch page and more details<\/strong>: <a href=\"https:\/\/www.modernescpp.org\/\">https:\/\/www.modernescpp.org\/<\/a><\/li>\n<li><strong>Registration open<\/strong>: until the 17th of April<\/li>\n<li><strong>Course start<\/strong>: 22nd April<\/li>\n<li><strong>Participate<\/strong>: create a login (<a href=\"https:\/\/www.modernescpp.org\/courses\/fundamentals-for-c-professionals\/\">https:\/\/www.modernescpp.org\/courses\/fundamentals-for-c-professionals\/<\/a>) and take the course<\/li>\n<li><strong>Price<\/strong>: \u20ac2250 (9 * \u20ac250)\n<ul>\n<li>For participants from Germany and final consumers, I have to add 19% VAT (<a href=\"https:\/\/en.wikipedia.org\/wiki\/European_Union_value_added_tax\">European_value_add_tax<\/a>)<\/li>\n<\/ul>\n<\/li>\n<li><strong>Payment<\/strong>: Credit and debit cards, PayPal, or bank transfer (<a href=\"https:\/\/www.modernescpp.org\/rainer-grimm\/\">https:\/\/www.modernescpp.org\/rainer-grimm\/<\/a>)<\/li>\n<\/ul>\n<p>If you still have questions, write me an e-mail: <span id=\"cloak91ddd8c374dd22cbb77ee1ac00a8456a\"><a href=\"mailto:info@ModernesCpp.de\">info@ModernesCpp.de<\/a><\/span>.<\/p>\n<p>&nbsp;<\/p>\n<p>I&#8217;m very excited to have you onboard,<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" size-full wp-image-4721\" src=\"https:\/\/www.modernescpp.com\/wp-content\/uploads\/2016\/04\/RainerGrimmSmall.png\" alt=\"RainerGrimmSmall\" width=\"222\" height=\"66\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Before you participate in my mentoring program, you should know more about it. Today, I publish as a teaser, step six of the 28 steps to master C++.<\/p>\n","protected":false},"author":21,"featured_media":6329,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[377],"tags":[],"class_list":["post-6330","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-mentoring"],"_links":{"self":[{"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/posts\/6330","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/users\/21"}],"replies":[{"embeddable":true,"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/comments?post=6330"}],"version-history":[{"count":0,"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/posts\/6330\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/media\/6329"}],"wp:attachment":[{"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/media?parent=6330"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/categories?post=6330"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.modernescpp.com\/index.php\/wp-json\/wp\/v2\/tags?post=6330"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}