Книга по основам программирования?
====================================

 Уже есть опыт программирования (js, c, assembler). Но хотелось бы расширить кругозор и лучше понимать принципы других языков. Посоветуйте хорошую книжку.  
  

Книга должна отвечать на вопросы что такое статический класс, виртуальный метод, полиморфизм и проч., базовые принципы проектирования. Различие в языках и подходах (функциональный, ООП). Серверное, браузерное, системное программирование. Должны быть понятные примеры кода, но чтобы не требовалось для понимания писать примеры самому, чтобы можно было читать вдали от компьютера. Желательно, без оторванных от жизни примеров и языков типа АДЫ и экспериментальных.  
  

Возможно, такая книга еще не написана, но есть подобная в контексте конкретного языка (Java, Python...).  
  

P.S. «Идеальный код» советовать не надо. Не про то. 

 Bruce Eckel - Thinking in Java. Там все это есть.  

Чтобы войти в ООП я бы посоветовал начать с нее, так как Java очень четко реализует все его принципы.  

А вообще - для любого ЯП есть набор "классических" или "must read" книг, их и читайте. 

 Возьмите Страуструпа по плюсам. Ведь все-таки он придумал ООП в том виде который сейчас используется) и лучше чем у него в общем-то вы врядли найдете что-то по тому что вы назвали. Точнее, найдете - но с него лучше начать. Проектирование - банду четырех читайте, и Фаулера. Но без понимания ООП к проектированию рано подходить, так что начните с первого человека, которого я Вам назвал. Тем более что после C будет понятно что происходит в коде)