Back To Basics: Functional Programming in C++What is functional programming? Jonathan Müller — @foonathan Back to Basics: Functional Programming in C++ CppCon 2024-09-19 1Imperative Programming Definition Specify instructions that manipulate state to achieve a goal. Jonathan Müller — @foonathan Back to Basics: Functional Programming in C++ CppCon 2024-09-19 2Imperative Programming Definition Specify instructions that manipulate state in order a goal. C and C++ Jonathan Müller — @foonathan Back to Basics: Functional Programming in C++ CppCon 2024-09-19 2Imperative Programming Definition Specify instructions that manipulate state in order0 码力 | 178 页 | 918.67 KB | 6 月前3
Applicative: The Forgotten Functional Pattern1APPLICATIVE APPLICATIVE THE FORGOTTEN FUNCTIONAL PATTERN THE FORGOTTEN FUNCTIONAL PATTERN BEN DEANE / CPPCON / 2023-10-04 BEN DEANE / CPPCON / 2023-10-04 2DISCLAIMERS DISCLAIMERS No AI was used in FIRST, A QUICK SURVEY I've heard of these functional patterns, but that's all 6.1FIRST, A QUICK SURVEY FIRST, A QUICK SURVEY I've heard of these functional patterns, but that's all I (think I) kind of of understand how they work 6.2FIRST, A QUICK SURVEY FIRST, A QUICK SURVEY I've heard of these functional patterns, but that's all I (think I) kind of understand how they work I don't see many use cases0 码力 | 141 页 | 11.33 MB | 6 月前3
Leveraging a Functional Approach for More Testable and Maintainable ROS 2 CodeOverview of ROS 2 ● ROS 2 Conventional Approach ● Introduction to Functional Programming Principles ● Refactoring using Functional Programming Principles ● ConclusionIntroductionAbout Me ● Robotics Engineer object-oriented paradigm that can lead to trouble writing code that achieves the goal ● Adopting functional programming techniques into our code has made it easier to test, maintain, and extend code!Overview }Introduction to Functional Programming Principles● A programming paradigm characterized by the use of mathematical functions and the avoidance of side effects What is Functional Programming?● A programming paradigm0 码力 | 200 页 | 1.77 MB | 6 月前3
Object Oriented ProgrammingObject-Oriented Programming Key Ideas Class Inheritance Polymorphism Early and Late Binding Virtuality override final Template method Destructor Interfaces Liskov substitution principle return type Duck Typing Traps Virtual in con- /destructor Slicing ShadowingObject-Oriented Programming Key Ideas Class Inheritance Polymorphism Early and Late Binding Virtuality override final outside world. Information hiding Separation from interface and implementationObject-Oriented Programming Key Ideas Class Inheritance Polymorphism Early and Late Binding Virtuality override final0 码力 | 38 页 | 752.99 KB | 6 月前3
Back to Basics: Generic Programming1 David Olsen – Generic Programming CppCon 20242 David Olsen – Generic Programming CppCon 2024 Back to Basics: Generic Programming David Olsen, Compiler Engineer, NVIDIA CppCon, 18 Sep 20243 David Olsen – Generic Programming CppCon 2024 Generic Programming4 David Olsen – Generic Programming CppCon 2024 Generic Programming5 David Olsen – Generic Programming CppCon 2024 Generic Programming Same code code works on different, unrelated types6 David Olsen – Generic Programming CppCon 2024 Generic Programming Same code works on different, unrelated types T sum(C container) { T result = 0; for (T value0 码力 | 175 页 | 1.16 MB | 6 月前3
Branchless Programming in C++Branchless Programming in C++ Fedor G Pikus Chief ScientistBranchless Computing 3 PLAN ● Efficiency and performance ● Understanding the hardware and using it efficiently – Computing resources of0 码力 | 61 页 | 9.08 MB | 6 月前3
Back to Basics: Object-Oriented ProgrammingAndreas Fertig Write unique code! Back to Basics Object-Oriented Programming Presentation Material CppCon, Aurora CO, 2024-09-20© 2024 Andreas Fertig AndreasFertig.com All rights reserved All programs https://AndreasFertig.com post@AndreasFertig.com 5A class ■ C++ adds classes for object-oriented programming. ■ The constructors B are called when the object is cre- ated. ■ Data fields of classes should0 码力 | 20 页 | 1.04 MB | 6 月前3
Template-Less Meta-Programming0 码力 | 130 页 | 5.79 MB | 6 月前3
Beyond struct: Programming a Struct Replacement in C++20John R. Bandela, MD Beyond struct: Meta- programming a struct Replacement in C++20Disclaimer This is not an official Google library These opinions are my ownStruct struct person { int id = 1; std::string0 码力 | 65 页 | 702.78 KB | 6 月前3
Find Code Reviews Valuable: Try Pair Programming, You'll Love It!Quality Functional Non- functional InternalFunctional Correctness Completeness Accuracy Precision Test coverageNon-functional Regulations Mandatory standards adherence Efficient Optimal Up Modifiability Reusability Packaging as library/modules Leaking abstractionsQuality Functional Non- functional InternalIs this the only concern?Quality Ownership Knowledge Evolution Innovation happen Reviewer less prepared Multiple cycles Too Late for long-term concernsOwnership Functional Knowledge Code Awareness Code FamiliarityMainly Ineffective Reviewer unaware of functionality0 码力 | 38 页 | 3.76 MB | 6 月前3
共 245 条
- 1
- 2
- 3
- 4
- 5
- 6
- 25













