Client Library Design Stories
summary
History of Google Cloud Client Libraries for .NET and concrete choices about versioning, generation and hand‑written additions determine whether code is usable or confusing. The project ships generated protobuf layers plus higher thin wrappers, exposes transparent layering so callers can use raw requests, adds partial classes to implement friendly helpers like detect faces and pagination enumerables, and creates resource name types to avoid string formatting errors. Semantic versioning breaks in C# and dual numbers like Google Cloud Storage v1 / library 2.3.0‑beta4 prove versioning is harder than it looks.
AI-written summary · about
chapters (15)
- 0:00Intro
- 1:20Client Library Design
- 2:29History of Client Libraries
- 6:15Versioning
- 8:28Google Cloud Storage
- 11:22Semantic Versioning
- 18:16API Versioning
- 19:14Version Numbers
- 21:55Conventions
- 26:56Idioms
- 31:27Partial Classes
- 37:07Transparent Layers
- 39:33Dependencies
- 41:25Documentation
- 42:03Conclusion
related talks
37mBuilding and Maintaining a Client Library - Stories From the Trenches
24mLet's get started development of API client library
01h 00mVersioning 1.0.1
27mSDK or Not
38mA Developer's-Eye View of API Client Libraries
19mVersioning strategy for a complex internal API
58mMaking Libraries Consumable for Non-C++ Developers
38mBuilding libraries for the next 25 years
