Optimizing C ++
by Steve Heller
Publisher: Prentice Hall PTR 1998
Number of pages: 416
The heart of Optimizing C++ consists of several case studies of database problems that show various searching and compression algorithms, the author's source code, and careful explanation of the solutions. The author use hash coding, caching, Radix40, and binary-coded decimal (BCD) data representation in a supermarket price-lookup database. Distribution-counting sort algorithms and bitmaps that store data efficiently are both used to help build a mailing-list system. In some of the most useful sections of this book, the author looks at Huffman coding and dynamic hashing.
Home page url
Download or read it online for free here:
- Taligent Press
Well-Mannered object-oriented design in C++: this is a brief overview of object-oriented program design, focusing on operating-system development. The text will be of interest to the C++ programmers who need a quick summary of good OOP techniques.
The objective is to present modern C++ idioms to programmers who have moderate level of familiarity with C++, and help elevate their knowledge so that C++ feels much friendlier to them. It is designed to be an exhaustive catalog of reusable idioms.
by Samy Pesse - GitHub
Online book about how to write a computer operating system in C/C++ from scratch. The goal is to build a very simple UNIX-based operating system, not just a 'proof-of-concept'. The OS should be able to boot, start a userland shell, and be extensible.
by Allen B. Downey
This book teaches you to think like a computer scientist - to combine the best features of mathematics, natural science, and engineering, to use formal languages to denote ideas, to observe the behavior of complex systems, form hypotheses, etc.