Перейти к содержимому

Boost Your Intra-Process Communication Programs With C++20 & Contract-Concept-Implementation Pattern

CppCon

0:00 / 0:00

Boost Your Intra-Process Communication Programs With C++20 & Contract-Concept-Implementation Pattern

5 986 просмотров · 1 год назад
CppCon
188 тыс. подписчиков
5 986 просмотров · 1 год назад
https://cppcon.org --- SuperCharge Your Intra-Process Communication Programs With C++20 and Contract-Concept-Implementation Pattern - Arian Ajdari - CppCon 2024 --- Writing correct and high-performing IPC (Intra-Process Communication) programs in a constrained environment provides significant challenges. Properly utilizing function interfaces, data types, and ensuring correct data flow are part of the challenge during programming of IPC applications. Furthermore, debugging run-time bugs coming from IPC are some of the hardest and most time-consuming bugs. We leverage the power of C++20 and concepts to define modern interfaces and constraints, that make IPC programs easy to understand. We introduce a pattern called CCI (Concept, Constraint, and Implementation) to facilitate the creation of modern interfaces encapsulating low-level IPC functions. Therefore, we mitigate numerous pitfalls stemming from IPC programming and prevent run-time bugs. After explaining CCI and getting a good grounding, we start the re-work of low-level code around CCI. We show how features of C++20 help us utilize CCI. After that, we provide the general assessment of CCI pattern and compare the output of the assembly code regarding the performance. --- Slides: https://github.com/CppCon/CppCon2024/... Work at Hudson River Trading (HRT): https://tinyurl.com/safxfctf --- Arian Ajdari Arian Ajdari is a Software Engineer working on cutting-edge applications in the field of smart home appliances. His daily work includes discussions with clients, gathering requirements, building use-cases and implementing different solutions using C++. Arian possesses a deep understanding of the whole software stack (starting from PID 1 when the Linux kernel launches, up to different containerization technologies) in order to implement the best-possible solution in a constrained environment utilizing the newest features of C++. Arian has a general interest in C++ as a programming language and strives to utilize its capabilities in offering the best solution possible for clients and customers. Furthermore, he likes to take part in different C++ conferences and follows the standardization process of C++. In spare time, Arian enjoys discussing different topics, having long walks, watching a movie, or following motorsport. --- CppCon is the annual, week-long face-to-face gathering for the entire C++ community. The conference is organized by the C++ community for the community. You will enjoy inspirational talks and a friendly atmosphere designed to help attendees learn from each other, meet interesting people, and generally have a stimulating experience. Taking place this year in Aurora, Colorado, near the Denver airport, and including multiple diverse tracks, the conference will appeal to anyone from C++ novices to experts. Annual CppCon Conference - https://www.cppcon.org   / cppcon   https://x.com/cppcon   / cppconference     / cppcon   https://mastodon.social/@CppCon --- Videos Filmed & Edited by Bash Films: http://www.BashFilms.com YouTube Channel Managed by Digital Medium Ltd: https://events.digital-medium.co.uk --- #cpp #ipc #cplusplus #cppcon #cppprogramming #cplusplusprogramming #softwaredevelopment #softwareengineering #coding #code #computerscience #technology #programming #programmer