Book description
Expert advice on C programming is hard to find. While much help is available for object-oriented programming languages, there's surprisingly little for the C language. With this hands-on guide, beginners and experienced C programmers alike will find guidance about design decisions, including how to apply them bit by bit to running code examples when building large-scale programs.
Christopher Preschern, a leading member of the design patterns community, answers questions such as how to structure C programs, cope with error handling, or design flexible interfaces. Whether you're looking for one particular pattern or an overview of design options for a specific topic, this book shows you how to implement hands-on design knowledge specifically for the C programming language.
You'll find design patterns for:
- Error handling
- Returning error information
- Memory management
- Returning data from C functions
- Data lifetime and ownership
- Flexible APIs
- Flexible iterator interfaces
- Organizing files in modular programs
- Escaping #ifdef Hell
Table of contents
- Preface
- I. C Patterns
- 1. Error Handling
- 2. Returning Error Information
- 3. Memory Management
- 4. Returning Data from C Functions
- 5. Data Lifetime and Ownership
- 6. Flexible APIs
- 7. Flexible Iterator Interfaces
- 8. Organizing Files in Modular Programs
- 9. Escaping #ifdef Hell
- II. Pattern Stories
- 10. Implementing Logging Functionality
- 11. Building a User Management System
- 12. Conclusion
- Index
- About the Author
Product information
- Title: Fluent C
- Author(s):
- Release date: October 2022
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9781492097334
You might also like
book
Designing Data-Intensive Applications
Data is at the center of many challenges in system design today. Difficult issues need to …
book
Generative Deep Learning, 2nd Edition
Generative AI is the hottest topic in tech. This practical book teaches machine learning engineers and …
book
Building Microservices, 2nd Edition
As organizations shift from monolithic applications to smaller, self-contained microservices, distributed systems have become more fine-grained. …
book
Learning TypeScript
TypeScript has conquered the world of JavaScript: it's one of the world's fastest growing and most …