Design PatternsCppCon 2024 klaus.iglberger@gmx.de Design Patterns The Most Common Misconceptions (2 of N)2 Klaus Iglberger C++ Trainer/Consultant Author of “C++ Software Design” (Co-)Organizer of the Munich Email: klaus.iglberger@gmx.deThe 2nd in a Row 3The 2nd in a Row 45 Let’s again talk about design patterns and virtual functionsThe Overhead of Inheritance Hierarchies 6The Overhead of Inheritance common interface; • … is used via the base class interface; • … introduces an abstraction and is a design pattern. • … should be called “Static Interface” Adding Functionality via CRTP … • … provides0 码力 | 136 页 | 7.95 MB | 6 月前3
Prototype your designPrototype your design! Robert Griesemer dotGo 2016, Paris 1 Getting to good software design ● Literature is full of design paradigms ● Usually involves ○ Design docs ○ Feedback from reviewers ○ is created until design is “completed” 2 How can we tell if we have a good design? 3 Elsewhere, design thinking requires prototyping 4 Empathize Define Ideate Test From Design School Stanford: mutation ⇨ Define appropriate methods on that type A Go implementation allows us to explore our design. 7 Key missing feature: Nice notation The work-around, accessor methods for multi-dim. index expressions0 码力 | 30 页 | 164.99 KB | 1 年前3
Back to Basics: Design PatternsPlease do not redistribute slides without prior permission. 1Back to Basics: Design Patterns Mike Shah, Ph.D. @MichaelShah | mshah.io September 17, 2020 60 minutes | Introductory to Intermediate forward to discussion!Abstract Design Patterns are reusable elements of design that may help aid in making software more maintainable, flexible, and extensible. The term 'design patterns' can be traced back Four' book Design Patterns, in which common software design patterns were defined and categorized. In this talk, you will learn the fundamentals of the creational, structural, and behavior design patterns0 码力 | 96 页 | 2.10 MB | 6 月前3
The Roles of Symmetry And Orthogonality In Designdot com Symmetry And Orthogonality System Design The Roles of In Designcharley bay charleyb123 at gmail dot com Symmetry And Orthogonality System Design The Roles of In DesignCharley Bay - charleyb123 charleyb123 at gmail dot com The Roles of Symmetry And Orthogonality In Design cppcon 2021 Either you keep self improving, or it's time to move into management. --Niall Douglas 30-Sep-2021 https://old of Symmetry And Orthogonality In Design cppcon 2021 Today’s Agenda • Levels of “Knowing” • Role of Symmetry • Role of Asymmetry • Role of Orthogonality • Design Relationships • Conclusion What’s0 码力 | 151 页 | 3.20 MB | 6 月前3
Design Patterns: Facts and MisconceptionsDesign Patterns Facts and Misconceptions Klaus Iglberger, CppCon 2021 klaus.iglberger@gmx.de2 Klaus Iglberger C++ Trainer/Consultant Author of the C++ math library (Co-)Organizer of the CppCon B2B and SD tracks Email: klaus.iglberger@gmx.de3Let’s talk about Software Design and Design Patterns 4Disclaimer 5 All content is based on personal, subjective impressions and opinions opinions. You may have another opinion, and that is fine! There is no definitive answer in software design. It depends. But that is the reason why it is fun.6 std::make_unique() … … improves exception0 码力 | 88 页 | 17.31 MB | 6 月前3
The Most Important Design Guideline is Testability12The Most Important Design Guideline is Testability CppCon 2024 3 Jody Hagins jhagins@dev.nullThe Most Important Design Guideline is Testability CppCon 2024 4 Jody Hagins jhagins@dev.nullThe nullThe Most Important Design Guideline is Testability CppCon 2024 5 Jody Hagins jhagins@maystreet.com coachhagins@gmail.com6 Grad School and Winning the LotteryRemember This? 7 https://www.youtube com/watch?v=a76Z__kQJdo&t=83s8 The Most Important Design Guideline https://www.youtube.com/watch?v=a76Z__kQJdo&t=83s9 The Most Important API Design Guideline? TESTABILITY https://www.youtube.com/watch0 码力 | 126 页 | 9.11 MB | 6 月前3
Can Data-Oriented-Design be Improved?1Can data-oriented-design be improved? Ollivier Roberge Collège Jean-de-Brébeuf 2A brief historic • 1960s • FORTRAN • Lisp • 1980s • OOP • Structured programming • Modules • 2000s • Template is DoD about? • DoD (“Data oriented design”) • Not about cache lines, nor struct layout (at its core) • From wikipedia: ”As a design paradigm, data-oriented-design focuses on optimal transformations • And your program needs to do something: 𝐷𝑎𝑡𝑎&$%#$% = 𝐹(𝐷𝑎𝑡𝑎!"#$%) 13Data oriented design = Functional programmingOn the ”equality”… • DoD and functional programming may have strong differences0 码力 | 39 页 | 1.18 MB | 6 月前3
Cache-Friendly Design in Robot Path Planningto get from one location to another before actually moving. 8Cache-friendly design 9Cache-friendly design Program design focused on optimizing code by avoiding pathological affects of memory access 10Cache-friendly design - Random person on StackOverflow Modern memory pipelines are so complex you are basically optimizing for the cache 11Cache-friendly design 12Cache-friendly design 13Cache-friendly 13Cache-friendly design 14Cache-friendly design Accessing data means accessing memory through the cache 15Cache-friendly design Accessing data means accessing memory through the cache Running instructions means0 码力 | 216 页 | 10.68 MB | 6 月前3
Django、Vue 和Element UI 前后端原理论述一篇是你在开始动手搭建环境前需要了解各工具原理的文章。 这是一篇你真正开始前需要查阅的文章。 本文介绍了前后端工作原理,前后端搭建的流程、搭建过程中需要用到的技术以及 开发环境版本。 一、前后端如何工作 Django、Vue 和 Element UI 前后 端原理论述 作者:M&T. 2 《51 测试天地》七十四 www.51testing.com 后端开发(Django+Rest Framework+MySQL): 与前端进行数据交互。 MySQL 是一个关系型数据库,用于存储后端的数据。 前端开发(Vue+Element UI): Vue 是一种现代的 JavaScript 框架,用于构建用户界面。Vue 提供了丰富的组件和模 块,可以帮助开发者构建交互式的单页面应用(SPA)。 Element UI 是一个基于 Vue 的 UI 组件库,提供了丰富的预定义组件,用于快速搭建 美观的用户界面。 前后端交互: 前后端交互: 后端通过 Django Rest Framework 提供 API 接口,前端通过 Vue 发起 HTTP 请求调用 这些 API 接口。 前端通过 HTTP 请求向后端发送数据请求,后端根据请求进行相应的数据处理,并 返回响应数据给前端。 前端接收到后端返回的数据,并根据数据更新页面展示,实现与用户的交互。 总体而言,这种前后端分离的开发模式有助于实现前后端开发的解耦,使得各自的0 码力 | 61 页 | 6.84 MB | 1 年前3
Design and Implementation of Highly Scalable Quantifiable Data Structures in C++Vector Space Entropy Measurement Design and Implementation of Quantifiable Stack/Queue Live DemonstrationMotivation Quantifiability Vector Space Entropy Measurement Design and Implementation of Quantifiable Correctness and Performance Engineering Case Study: k-FIFO Queue Design and Implementation of Quantifiable Stack/Queue Live Demonstration Design and Implementation of Highly Scalable Quantifiable Data Structures Structures in C++ 2MotivationMotivation Quantifiability Vector Space Entropy Measurement Design and Implementation of Quantifiable Stack/Queue Live Demonstration Correctness Conditions A correctness condition0 码力 | 51 页 | 4.08 MB | 6 月前3
共 1000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 100













