filmov
tv
CppCon 2016: Ben Deane “Using Types Effectively'

Показать описание
—
—
C++ has a pretty good type system, and modern C++ gives us a greater ability than ever before to use that type system for good: to make APIs easier to use and harder to misuse, to make our datatypes more closely express our intent, and generally to make code safer, more obvious in function and perhaps even faster.
This is an interactive session - incorporating games played between presenter and audience, even - taking a look at choices available to us as datatype and API designers, and examining how a little knowledge about the algebra of algebraic datatypes can help. We'll see why std::optional and (hopefully soon) std::variant will quickly become an essential part of everyone's toolbox, and also explore how types can be used to express not just the structure of data, but also the behaviour of objects and functions.
—
Ben Deane
Principal Software Engineer, Blizzard Entertainment
—
*-----*
*-----*
—
C++ has a pretty good type system, and modern C++ gives us a greater ability than ever before to use that type system for good: to make APIs easier to use and harder to misuse, to make our datatypes more closely express our intent, and generally to make code safer, more obvious in function and perhaps even faster.
This is an interactive session - incorporating games played between presenter and audience, even - taking a look at choices available to us as datatype and API designers, and examining how a little knowledge about the algebra of algebraic datatypes can help. We'll see why std::optional and (hopefully soon) std::variant will quickly become an essential part of everyone's toolbox, and also explore how types can be used to express not just the structure of data, but also the behaviour of objects and functions.
—
Ben Deane
Principal Software Engineer, Blizzard Entertainment
—
*-----*
*-----*
CppCon 2016: Ben Deane “Using Types Effectively'
CppCon 2016: Ben Deane 'std::accumulate: Exploring an Algorithmic Empire'
CppCon 2016: Ben Deane “A Static Alternative to Virtual Functions, Using Expression SFINAE'
How We Used To Be - Ben Deane - CppCon 2020
CppCon 2017: Ben Deane & Jason Turner “constexpr ALL the Things!”
CppCon 2016: John McFarlane “fixed_point'
C++20 Lambdas: Familiar Template Syntax - Ben Deane - CppCon 2020
CppCon 2017: Ben Deane “std:: exchange Idioms”
CppCon 2016: Tommy Bennett “Algorithm Mnemonics: Increase your Productivity with STL Algorithms&apos...
CppCon 2015: Ben Deane “Testing Battle.net (before deploying to millions of players)'
CppCon 2016: Robert Ramey “C++, Abstract Algebra and Practical Applications'
CppCon 2016: Dietmar Kühl “Constant Fun'
Lightning Talk: The Process Is The Problem - Ben Deane - CppCon 2021
CppCon 2016: Arno Lepisk “On using singletons in C++'
CppCon 2016: Jon Kalb “unsigned: A Guideline for Better Code'
CppCon 2016: Rian Quinn “Making C++ and the STL Work in the Linux / Windows Kernels'
CppCon 2019: Ben Deane “Everyday Efficiency: In-Place Construction (Back to Basics?)”
CppCon 2016: Richard Smith “There and Back Again: An Incremental C++ Modules Design'
Combine Lambdas and weak_ptrs to make concurrency easy - Dan Higgins [ CppCon 2016 ]
CppCon 2018: Ben Deane “Easy to Use, Hard to Misuse: Declarative Style in C++”
Composable C++: Principles and Patterns - Ben Deane - CppCon 2021
CppCon 2016: Nicholas Ormrod “The strange details of std::string at Facebook'
CppCon 2016: Isabella Muerte “No Concepts Beyond This Point: The Detection Idiom'
Ben Deane: Testing Battle.net (before deploying to millions of players)
Комментарии