Our main tool for organizing a program — and for organizing our thoughts as we program — is to break up a big computation into many little ones. This technique comes in two variations: - Abstraction - Divide and Conquer
Cpp
my conspect of the Stroustrup C++ book. + additional C++ topics.