Exceptionally Bad: The Story on the Misuse of Exceptions and How to Do Better
© 2023 Bloomberg Finance L.P. All rights reserved. Exceptionally Bad: The story on the misuse of exceptions and how to do better Core C++ June 7, 2023 Pete Muldoon Senior Engineering Lead© 2023 Bloomberg Bloomberg Finance L.P. All rights reserved. Exceptionally Bad: The story on the misuse of exceptions and how to do better Core C++ June 7, 2023 Pete Muldoon Senior Engineering Lead Exceptions in C++ work • Local error handling • Used for erase/mitigate/recover from the exception • Probably a misuse of exceptions • However the thrower does not know return depth as it’s a hidden relationship • Imposed0 码力 | 85 页 | 2.32 MB | 5 月前3Quickly Testing Qt Desktop Applications With Approval Tests
Maintenance overhead Add public accessor to widget being tested Testing easier Maybe encourages misuse of library if internals exposed42 High level view – version 2 Implementation Tests class GoToLineTool Maintenance overhead Add public accessor to widget being tested Testing easier Maybe encourages misuse of library if internals exposed49 Testing Custom Qt Widgets – part 2 Option Advantages Disadvantages Maintenance overhead Add public accessor to widget being tested Testing easier Maybe encourages misuse of library if internals exposed Add protected accessor … Make the test fixture inherit the widget0 码力 | 77 页 | 6.96 MB | 5 月前3COMPOSABLE C++
STUDY: LOGGING CASE STUDY: LOGGING From "Easy to Use, Hard to Misuse: Declarative Style in C++" (CppCon 2018) From "Easy to Use, Hard to Misuse: Declarative Style in C++" (CppCon 2018) The The bool bool0 码力 | 124 页 | 8.28 MB | 5 月前3C++26 Preview
not char* 1 47compile-time format strings improved api runtime format api had only vformat easy to misuse api paper addresses this case in working dra� P2918 Runtime format strings II //before std::string , 42); 5 48compile-time format strings improved api runtime format api had only vformat easy to misuse api paper addresses this case in working dra� P2918 Runtime format strings II //before std::string0 码力 | 118 页 | 2.02 MB | 5 月前3SQLite Development with Zumero
zumero_register() returns SQLITE_MISUSE? Zumero requires SQLite version 3.7.11 or higher. If the Zumero library is linked with an older version of SQLite, zumero_register() returns SQLITE_MISUSE. Can I use SQLite's0 码力 | 57 页 | 199.89 KB | 1 年前3eBPF Summit 2020 Lightning Talk
unintended behavior (e.g. broken connection), but still a worthy tradeoff, especially in preventing misuse More on RedBPF • Plan to make RedBPF support more (all) program types - make it a generic compiler0 码力 | 22 页 | 1.81 MB | 1 年前32.1.4 The Zen of Go
What happens if I call Register twice? –Josh Bloch “APIs should be easy to use and hard to misuse.” If you think it’s slow, prove it with a benchmark Going beyond “You type g o, a space, and0 码力 | 73 页 | 13.96 MB | 1 年前3使用硬件加速Tokio - 戴翔
paid contributors! Tokio is good enough Tokio Tokio's APIs are memory-safe, thread-safe, and misuse-resistant. This helps prevent common bugs, such as unbounded queues, buffer overflows, and task0 码力 | 17 页 | 1.66 MB | 1 年前3秘钥管理秘钥Turtles all the way down - Securely managing Kubernetes Secrets
implement procedures to protect keys used to secure stored cardholder data against disclosure and misuse. 3.6 Fully document and implement all key-management processes and procedures for cryptographic0 码力 | 52 页 | 2.84 MB | 1 年前3More Ranges Please
attributes you find. ● Pay attention to the API - the abstraction layer ○ Easy to use, hard to misuse (Ben Deane) ○ Consider preconditions and postconditions ○ Return every potentially useful piece0 码力 | 27 页 | 1.08 MB | 5 月前3
共 313 条
- 1
- 2
- 3
- 4
- 5
- 6
- 32