Мне часто задают вопрос: «Какую литературу порекомендуете?». На этой странице я предлагаю рекомендации по различным темам. Всего несколько книг на каждую тему, из большего количества всё равно пришлось бы выбирать.
Кстати, по всем книжкам, особенно тем, которые касаются технологий, всегда ищите последнее издание.
P.S. Скачать книги здесь нельзя. Эта страница содержит только рекомендации.
CSS
CSS стоит изучать по одной из этих книг. Можно сразу по обеим.
- Большая книга CSS3. Дэвид Макфарланд.
- CSS. Каскадные таблицы стилей. Подробное руководство. Эрик Мейер
Конечно, стандарты тоже будут полезны. Подчас их точность куда проще, чем много страниц разъяснений.
JavaScript
Полезное чтение о языке, встроенных методах и конструкциях JavaScript:
- JavaScript. Подробное руководство. Дэвид Флэнаган.
- JavaScript. Шаблоны. Стоян Стефанов.
jQuery
Кроме документации:
- jQuery. Подробное руководство по продвинутому JavaScript. Бер Бибо, Иегуда Кац.
Объектно-ориентированное программирование
Объектно-ориентированное программирование (ООП) – это концепция построения программных систем на основе объектов и взаимодействия между ними. При изучении ООП рассматриваются полезные архитектурные приёмы, как организовать программу более эффективно.
Умение создавать объект, конструктор, вызывать методы – это основные, самые базовые «кирпичики». Их следует освоить первыми, например используя этот учебник. Затем, когда основы более-менее освоены, стоит уделить внимание теории объектно-ориентированной разработки:
- Объектно-ориентированный анализ и проектирование с примерами приложений. Гради Буч и др..
- Приёмы объектно-ориентированного проектирования. Паттерны проектирования. Э. Гамма, Р. Хелм, Р. Джонсон, Дж. Влиссидес.
Регулярные выражения
- Регулярные выражения. Джеффри Фридл.
Эта книга описывает более широкий класс регэкспов, по сравнению с текущим JavaScript. С одной стороны, какая-то информация будет лишней, с другой – регулярные выражения вообще очень важная и полезная тема.
Алгоритмы и структуры данных
- Алгоритмы. Построение и анализ. Т. Кормен, Ч. Лейзерсон, Р. Ривест, К. Штайн.
Есть и другая классика, например «Искусство программирования», Дональд Кнут, но она требует более серьёзной математической подготовки. Будьте готовы читать и вникать долго и упорно. Результат – апгрейд мозговых извилин и общего умения программировать.
Разработка и организация кода
- Совершенный код. Стив Макконнелл.
Это желательно изучать уже после получения какого-то опыта в программировании.