@masai: *dev *книгиА давайте обсудим фундаментальные и просто полезные книги по программированию! Вот, для затравки:
— Абельсон и др. «Структура и интерпретация компьютерных программ» — хорошо вправляет мозг, начинаешь понимать, что такое программирование, но язык Scheme, который используется в книге для всех примеров, на практике используется мало. Впрочем, это не важно, так как книга не о языке (его описания там от силы несколько страниц), а о программировании.
— Кормен и др. «Алгоритмы. Постоение и анализ» — отличный справочник по алгоритмам с элементами учебника по базовым алгоритмам, используемым на практике. Куча примеров на псевдокоде, всё хорошо объяснено.
— Кнут «Искусство программирования на ЭВМ» — по традиции все им восхищаются, хотя мало кто использует из-за необходимости разгребать завалы матана и код на ассемблероподобном языке MIX. Хороша как справочник по тем или иным математическим аспектам, касающимся каких-либо алгоритмов.
— Уоррен «Алгоритмические трюки для программистов» — книга открывает глаза на многие вещи. Читается на одном дыхании как детектив.
— Гамма и ещё три бандита «Приёмы объектно-ориентированного программирования» — можно паттерны на практике не использовать, но знать о них неплохо бы.
— Страуструп «Язык программирования C++» — можно читать просто как книгу о программировании, если плюсы поперёк горла стоят. По ходу дела даётся много советов.
— Фридл «Регулярные выражения» — нечто большее, чем сборник рецептов, хотя используется часто именно так.
— Кук, Бейз «Компьютерная математика» — если в вузе математики вдруг не было или всё забылось, то эта книжка в самый раз подходит, чтоб освежить память.
— ван Тассел «Стиль, разработка, эффективность, отладка и испытание программ» — о том, как надо писать программы. Книжка давнишняя, но актуальная.
— Макконнелл «Совершенный код» — простым языком о разработке ПО.
— Сэломон «Сжатие данных, изображений и звука» — хорошее введение в алгоритмы сжатия данных
— Ватолин «Методы сжатия данных» — опять про сжатие
— Сегаран «Программируем коллективный разум» — кратко и популярно о решении задач классификации, кластеризации и т.д. на простых примерах из жизни. Примеры на Python.
— Бентли «Жемчужины программирования» — чтоб мозги не ржавели.
— Седжвик «Фундаментальные алгоритмы на C++» — название говорит само за себя. Алгоритмы. На C++.
— Ахо и др. «Компиляторы. Принципы, технологии, инструменты» — знаменитая Книга дракона. Классика теории компиляции.
Естественно, я не перечислил и половины того, что навскидку в голову пришло. Продолжайте!