filmov
tv
CppCon 2017: Odin Holmes “Agent based class design”
Показать описание
—
—
Abstracting a set of functionalities into a class which provides a higher level interface often requires tough design decisions. Users who do not have the exact requirements for which the abstraction is optimized will suffer a syntactic or run time overhead as a result. Alexandrescu's famous "policy-based design" provides a mechanism to allow the user to extend and customize an existing abstraction in order to fine-tune its functionality for many different use cases. This is however limited to use cases where each policy more or less represents a compile time strategy pattern.
Alas, not everything is a strategy pattern. In this talk I will explore the viability of a more agent-pattern-like paradigm where each policy knows its requirements and publishes its capabilities. In this paradigm, glue code connecting any valid set of policies is automatically generated using template metaprogramming. This allows much more powerful customizations while maintaining static linkage.
—
Odin Holmes: Auto-Intern GmbH, CEO/CTO
—
*-----*
*-----*
—
Abstracting a set of functionalities into a class which provides a higher level interface often requires tough design decisions. Users who do not have the exact requirements for which the abstraction is optimized will suffer a syntactic or run time overhead as a result. Alexandrescu's famous "policy-based design" provides a mechanism to allow the user to extend and customize an existing abstraction in order to fine-tune its functionality for many different use cases. This is however limited to use cases where each policy more or less represents a compile time strategy pattern.
Alas, not everything is a strategy pattern. In this talk I will explore the viability of a more agent-pattern-like paradigm where each policy knows its requirements and publishes its capabilities. In this paradigm, glue code connecting any valid set of policies is automatically generated using template metaprogramming. This allows much more powerful customizations while maintaining static linkage.
—
Odin Holmes: Auto-Intern GmbH, CEO/CTO
—
*-----*
*-----*
CppCon 2017: Odin Holmes “Agent based class design”
C++Now 2017: Odin Holmes 'Type Based Template Metaprogramming is Not Dead'
CppCon 2018: Odin Holmes “Concurrency Challenges of Interrupt Service Routines”
[MUC++] Odin Holmes - 'Agent Based Class Design'
Modern C++ Design reloaded - Odin Holmes [ACCU 2017]
code::dive 2017 – Odin Holmes – The fastest template metaprogramming in the West
Odin Holmes - Agent-based class design - a step towards betters customizations points
emBO++ 2020 - Odin Holmes: C++ requires threads
C++ Now 2017 : Odin Holmes 'Type Based Template Meta programming is not Dead'
Meeting C++ Lightning Talks - Odin Holmes - Modern special function register abstraction
LTS Webinar “Statically checked interfaces” with Odin Holmes
Ranges v3 and microcontrollers, a revolution - Odin Holmes - Meeting C++ 2016
CppChat14 SFINAW (Bryce, Jonathan, and Odin) [2017-03-11]
A Possible Future of Embedded Software Development - Odin Holmes
C++Now 2018: Odin Holmes “Lightning Talk”
CppCon 2017: Jason Turner “Practical C++17”
boost.tmp: Your DSL for Metaprogramming - Part 1 of 2 - Odin Holmes - code::dive 2018
CppCon 2017: P. McKenney, M. Michael & M. Wong “Is Parallel Programming still hard? PART 1 of 2”...
CppCon 2017: Gaspar Azman “(don't) Copy Paste All The Things”
code::dive 2016 conference – Odin Holmes – Modern embedded APIs...
CppCon 2017: Gennadiy Rozental “How to break an ABI and keep your users happy”
DateTime Programming For Everyone. Everywhere. - Tai Meng [ CppCon 2017 ]
CppCon 2017: Matt Kulukundis “Designing a Fast, Efficient, Cache-friendly Hash Table, Step by Step”...
C++ Mixins - Odin Holmes - Meeting C++ 2018
Комментарии