***NEW: Writing Correct, Conforming and Performant Code

Seminardetails


  • Datum: 2020-09-28/29
  • Dauer: 09:00 - 17:00
  • Ort: ARCOTEL Camino, Stuttgart
  • Sprache: EN
  • Referent: Jason Turner
  • Fruehbucher: 1.752,- € (plus 19% VAT/MwSt.) till/bis 2020-03-31
  • Preis: 2.190,- € (plus 19% VAT/MwSt.)

Änderungen vorbehalten / changes reserved


 

Abstract

Correct, conformant code is code that performs better, is more optimizable and more testable. Unfortunately, not all code can be executed at compile-time, so we want to write the best possible code we can that runs at run-time. By following best practices and writing idiomatic code, you write programs that the compiler knows how to optimize. You also create a codebase that is easier to maintain, costs less to write, and can be more easily analyzed by static analysis tools and is less error-prone.

During the class, we deeply examine something that C++ has that very few other languages have: a well-defined object life cycle. Understanding this key aspect of C++ is critical to writing clean, maintainable, and efficient C++.

Don't deal with run-time errors, logic errors, and leave performance on the floor with common mistakes that are easily avoided with a deeper understanding of the language.

 

Goals

Students will:

  • Learn idiomatic C++ programming patterns
  • Learn how to spot and avoid undefined behavior
  • Understand the limitations of what can be optimized
  • Develop an intuition for what makes good C++ good


Outline

Please note: This outline is subject to change.


  • Understanding RAII
  • What does the standard say?
  • Member variable lifecycle
  • How and why to limit variable scope
  • The as-if rule
  • std::move and std::forward
  • Optimally passing and returning values
  • The lifecycle of lambda captures
  • How the C++ memory model and object lifetime relate
  • A note about run-time polymorphism
  • What changes in C++17
  • Best Practices
  • C++ Tooling


Prerequisites

I expect you are comfortable with C++ syntax, have used C++, and desire a better intuition for how to write good code.

 

Format

My classes are highly interactive. Come expecting to interact with your fellow students and me. Come also with questions you would like answered.

Jason Turner
Jason Turner
Jason has 2 decades of C++ experience and is a regular conference speaker, developer, and trainer.



Kontakt


Telefon
+49 (0)711 138183-0

E-Mail
seminare@qa-systems.de

AGB für Seminare
Start
Trial
QA-Systems