Это да, совсем базу я не стал приводить. Тут по большей части книги для ООП программиста. Причем я не стал приводить книги такие как "Рефакторинг баз данных" и "Шаблоны интеграции корпоративных приложений" так как не считаю их чем то обязательным.
Для начинающих программистов на Руби рекомендую "Design Patterns in Ruby": http://www.amazon.com/Design-Patterns-Ruby-Addison-Wesley-Professional/dp/0321490452/
Знакомит не только с самими шаблонами проектирования, но и объясняет как их применять или где они используются в Ruby. Становится понятно, откуда ноги растут.
тру - порой термины, "переведенные" горе переводчиками (которые, в большенстве своём, далеко от темы перевода, дай бог, что они вообще с ИТ знакомы) настолько вгоняют в ступор, что обретение смысла приходит где то к середине книги/раздела
Я бы мог привести список книг, которые я прочитал в этой сфере, но их я не могу назвать обязательными или фундаметальными. Если вы можете, что-то порекоммендовать я буду рад. И вообще, тема книг "маст рид" для меня очень актуальна.
Practices of an Agile Developer Working in the Real World - эту книгу я сегодня закончил читать - там кстати много хороших книг в библиографии. Возможно она и близка к книге Pragmatic Programmer.
Насчет "в первую очередь" - сомнительно, так как ребята, работающие на меня, в первую очередь испытывают недостаток в ООП образовании (или к какой категории отнести книги из моей сборки?). А о работе в команде можно рассказать и на собраниях команды. В моей жизни так происходит.
Pragmatic Programmer отличная. Для меня ее ценность, помимо практических советов организации работы, оказалась в том, что открылось много важных областей, которые захотелось изучить подробнее.
Да. "Банда Четырех" и Фаулер - обязательны к прочтению. Ну и не лишним будет ознакомиться с реализацией шаблонов проектирования на отдельном используемом языке. Для популярного сейчас PHP посоветую Guide to PHP Design Patterns от php|architect
Насчет издательства полностью согласен, "Addison-Wesley" лучшее, всегда взгляд ищет на полках три заветных треугольничка. От себя хочу добавить, что приличному разработчику никогда не помешает иметь в библиотеке несколько хороших художественных книг, и читать их параллельно. В конце концов, новые идеи черпаются именно оттуда. Да еще из жизни.
Книги O'Reilly это эталон простоты и ясного мышления. Ими были изданы Книги почти на любую Тему.
- есть книги "in a Nutshell", это короткие документации.
- есть книги "Cookbook", это конкретные решения проблем
- есть еще Hackbooks и Pocket Guide References но я пользуюсь в общем первыми двумя видами.
Есть довольно полное собрание, но мою Карму забили ниже 5ти.
Напишу новость, как только будет Карма.
Для тех, кто хочет держать руку на пульсе и узнавать свежие новости от авторитетных людей, можно порекомендовать тематические подкасты. От себя могу посоветовать вот этот: http://polymorphicpodcast.com
я бы посоветовал Макконнела читать в бумаге, тем более что он сам рекомендует - если вам кажется что какую-то главу вы уже знаете - пропустите ее. В бумаге это гораздо удобнее. Вообще я для себя понял что ничего серьезного и большого с экрана читать не удается - отвлекаешься сильно. Документация - реально, потому что нужен всегда маленький кусочек, техно статьи -да, потому что короткие. Макконела, Фаулера или тот же Writing Security Code - не могу.
Нет необходимого уровня концентрации, а без него - лучше не читать, ничего не отложится
по языкам: Java: Bruce Eckel, Thinking in Java 4th edition
C++: Bjarne Stroustrup, The C++ Programming Language.
Читать такие книги, разумеется, надо в оригинале.
Чтобы не тратить зря время, из перечисленного достаточно прочитать 2-3 первые, которые будут хорошим фундаментом, все остальное - производные, можно читать по диагонали.
Автор, коли вы их прочитали, позвольте задать вопрос по xUnit: как нужно действовать в случае, если нет возможности проверить итоговые данные? Например пользователь шлет на сервер сообщение, а сервер что-то пишет в БД и что-то там изменяет. В этом случае грозит очистка БД при каждом новом проходе теста с произвольной выборкой каких-то значений?
Это самый распространенный вопрос. Вкратце - смотрите термин Test Doubles. А вообще, это вопрос модульности системы. Юнит тест тестирует только логику, если он что-то там изменяет - это уже компонентный тести (интеграционный). В книге все эти вопросы подробно расписаны.
у меня где-то есть e-book: "PHP Design Patterns" oт phparchitect...
очень полезной оказалася.... ну ето правда только для PHP...
еще могу посоветовать для ознакомления из безопасностю в РНР:
№ 1. М. Фленов: "РНР глазами хакера"
№ 2. М. Кузнецов: "Головоломки на РНР для хакера"
Для проектировщика на языке Java неплохие книжки:
• Марк Гранд "Шаблоны проектирования в JAVA. Каталог популярных шаблонов проектирования, проиллюстрированных при помощи UML", изд. BHV-СПб, 2004г., ISBN 5-94735-047-5
• Стивен Стелтинг, Олав Маасен "Применение шаблонов Java. Библиотека профессионала", изд. Вильямс, 2002г., ISBN 5-8459-0339-4, 0-1309-3538-7
Теория и практика программирования многонитиевых приложений:
• Грегори Р. Эндрюс "Основы многопоточного, параллельного и распределенного программирования", изд. Вильямс, 2003г., ISBN 5-8459-0388-2, 0-2013-5752-6
Азбука хорошего разработчика. Книжки для чтения