A Guide to Managing External APIs in Enterprise Systems - Peter Muldoon - CppNorth 2023

Sdílet
Vložit
  • čas přidán 27. 09. 2023
  • www.cppnorth.ca​
    ---
    A Guide to Managing External APIs in C++ Enterprise Systems - Peter Muldoon - CppNorth 2023
    Many codebases use external libraries and wrap their associated API's for application use. Once these external dependencies are entrenched and widely used in your system even small changes in the use of these external APIs can force sweeping changes across your codebase. This presentation will take an example request API and demonstrate using sound engineering choices how to encapsulate it to provide a more efficient modern interface i.e. move-only results, futures/promise instead of callbacks, void pointers etc. After showing the use of this API, new requirements will now emerge that require new source data from the API potentially causing large scale code changes with branching required for a gradual transition from the old data source to the new source is rolled out. We will explore various techniques to preserve the global calling semantics and introduce localized decoupling so wide spread code changes are not needed. These codes changes are transparent to the original callers of the API hence no calling code changes are needed. This approach will then be expanded to apply the same engineering techniques to the unit & system testing code. The final decommissioning and removal of the old code is also explored and shown now to be simple and straight forwards. Additional real world problems are then incorporated like batching, parallelization while again localizing code changes on the migration path. This prioritizing of the migration path for introducing API use changes will lead to a novel perspective for the next time your codebase has external dependency changes imposed on it from within or without.
    This is all backed up with code examples. This alternative approach is based on real world situations.
    ---
    Slides: github.com/CppNorth/CppNorth_...
    Sponsored By:
    think-cell: www.think-cell.com/cppnorth
    JetBrains: www.jetbrains.com/
    ---
    Peter Muldoon
    Pete Muldoon has been using C++ since 1991. Pete has worked in Ireland, England and the USA and is currently employed by Bloomberg. A consultant for over 20 years prior to joining Bloomberg, Peter has worked on a broad range of projects and code bases in a large number of companies both tech and finance. Such broad exposure has, over time, shown what works and what doesn't for large scale engineering projects. He's a proponent of applied engineering principles, elegant solutions and expressive code.
    ---
    CppNorth is an annual C++ conference held in Toronto, Canada.
    - Annual CppNorth C++ conference: cppnorth.ca/
    - CppNorth Twitter: / cppnorth
    ---
    CZcams Videos Edited & Optimised by Digital Medium: events.digital-medium.co.uk
    #cppnorth #cpp #cppprogramming
  • Věda a technologie

Komentáře •