Extreme C Taking you to the limit in Concurrency, OOP, and the most advanced capabilities of C
Kamran Amini (Author)
- Make the most of C's low-level control, flexibility, and high performance
- A comprehensive guide to C's most powerful and challenging features
- A thought-provoking guide packed with hands-on exercises and examples
There's a lot more to C than knowing the language syntax. The industry looks for developers with a rigorous, scientific understanding of the principles and practices. Extreme C will teach you to use C's advanced low-level power to write effective, efficient systems. This intensive, practical guide will help you become an expert C programmer.
Building on your existing C knowledge, you will master preprocessor directives, macros, conditional compilation, pointers, and much more. You will gain new insight into algorithm design, functions, and structures. You will discover how C helps you squeeze maximum performance out of critical, resource-constrained applications.
C still plays a critical role in 21st-century programming, remaining the core language for precision engineering, aviations, space research, and more. This book shows how C works with Unix, how to implement OO principles in C, and fully covers multi-processing.
In Extreme C, Amini encourages you to think, question, apply, and experiment for yourself. The book is essential for anybody who wants to take their C to the next level.
What you will learn
- Build advanced C knowledge on strong foundations, rooted in first principles
- Understand memory structures and compilation pipeline and how they work, and how to make most out of them
- Apply object-oriented design principles to your procedural C code
- Write low-level code that's close to the hardware and squeezes maximum performance out of a computer system
- Master concurrency, multithreading, multi-processing, and integration with other languages
- Unit Testing and debugging, build systems, and inter-process communication for C programming
Who this book is for
Extreme C is for C programmers who want to dig deep into the language and its capabilities. It will help you make the most of the low-level control C gives you.
Kamran Amini is a senior professional specialized in embedded and kernel development. He has worked for numerous Iranian well-known companies as a senior engineer, architect, consultant, and CTO. In 2017, he moved to Europe to work as a senior architect and engineer for highly reputable companies such as Jeppesen, Adecco, TomTom, and ActiveVideo Networks. While residing in Amsterdam, he worked on his first book, Extreme C, published by PacktPub. His main areas of interest are computation theory, distributed systems, machine learning, information theory, and quantum computation. Parallel to his professional career, he is studying Astronomy and Planetary sciences. His academic areas of interest are related to development of early universe, the geometry of black holes, quantum field theory, and string theory.
- Essential Features
- From Source to Binary
- Object Files
- Process Memory Structure
- Stack and Heap
- OOP and Encapsulation
- Composition and Aggregation
- Inheritance and Polymorphism
- Abstraction and OOP in C++
- Unix: History and Architecture
- System Calls and Kernels
- The Most Recent C
- Thread Execution
- Thread Synchronization
- Process Execution
- Process Synchronization
- Single-Host IPC and Sockets
- Socket Programming
- Integration with Other Languages
- Unit Testing and Debugging
- Build Systems