×

Какие книги не по технологиям должен прочитать каждый программист?

Всем привет. Хочу спросить — какие книги не по технологиям должен прочитать каждый человек, который относится к IT?

В этот вопрос я включаю про рефакторинг кода, про проектирование, взаимодействие интерфейса с пользователем, «философию» и т.д.

Что можете посоветовать прочитать? Спасибо.

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Коментар порушує правила спільноти і видалений модераторами.

Як фанат 37signals контори (Basecamp), порекомендую їхню Rework.

Також цікаво просто почитати www.codersatwork.com Програмісти за роботою

Being Geek — shop.oreilly.com/...780596155414.do

Моя стаття про те, як бути класним командним гравцем :) www.vitaliypodoba.com/...les-teamplayer

Вот список того, что я сам прочитал не по технологиям, може пригодится кому:
Jeffrey E.F. Friedl — Mastering Regular Expressions
Erich Gamma — Design Patterns: Elements of Reusable Object-Oriented Software
Jason Fried, David Heinemeier Hansson — Rework
Roy Osherove — The Art Of Unit Testing
J. Hank Rainwater — Herding Cats: A Primer for Programmers Who Lead Programmers
Stoyan Stefanov — JavaScript Patterns
Henrik Kniberg — Scrum and XP from the Trenches
Seemann Mark — Dependency Injection in .NET
Eric J. Evans — Domain-driven design
Exploring CQRS and Event Sourcing — MS Patterns and practices

Фаулер «Рефакторинг», TDD, DDD, банда четырех, Макконел «Совершенный код».

Необязательные, но желательные — SICP, изучить какой-либо функциональный язык, экстремальное программирование. Есть еще разные и интересные. Не обязательные, но не помню, когда бы была книга лишней.

Статут внутрішньої служби Збройних Сил України
Дисциплінарний статут Збройних Сил України
Статут гарнізонної та вартової служб Збройних Сил України
Стройовий статут Збройних Сил України.

Чарльз Петцольд, Code: The Hidden Language of Computer Hardware and Software

Я бы сказал что программист «обязан» читать много чужого хорошего кода. (И как следставие, понимать разницу между хорошим и плохим кодом).
Книги вторичны. Особенно тогда, когда между зарождением технологии и ее промышленным использованием проходит меньше года.

Вот послушали Ваш совет и начали читать чужой код. Осознали какой код хороший, а какой плохой. И далее решил всё делать только идеально. Далее читаем Брукса почему из этого ничего толкового не выйдет.
Книга написана давно, но автор удивляется как по прошествии очень долгого для технологий периода все продолжают топтать теже грабли независимо от технологий.

Дайте, плиз, ссылку на книгу.

И можно вас попросить привести примеры "топтания тех же грабель? Хотя бы 3.

Чтобы узнать, какой код хороший и какой плохой, надо встречать хороший код. Надо понимать, где он, хороший или плохой. Сравнивать подходы, видеть, к чему ведет. А это всё же лучше в книгах описано. Вы можете никогда не увидеть в говнокоде говнокода, пока не сравните с чем-то лучше.

А так да, основной навык программиста — чтение кода. Книги — это такой катализатор, который позволяет развиваться с высокой скоростью. А работа с кодом — практика, без которой книги бесполезны.

Я вот замечательную штуку встретил, когда целый колектив пытался доказать, что Linq — говно, что лучше писать циклы и ветвления, потому что это понятнее и проще. И вот, видишь методы, где до хрена таких ветвлений, а все уверены, что это отличный правильный код.

Никто. Никому. Ничего не должен. Если только не одалживал.

Александр Шень «Программирование: теоремы и задачи» (уже обсуждалась здесь) — Кнут-лайт, по крайней мере по основным аргоритмам и структурам некий бэкграунд будет, при заметно меньших усилиях на освоение.

Мартін Фаулер, архітектура корпоративних додатків.

Читав, не думаю що цю книгу так вже необхідно читати.

Пргаматик, МакКоннел, GoF это тяжелые чтива для профи, Кнут меня всегда вгонял в уныние — инфо хорошая но ВСЯ. Просто цунами но такого размера что после мало что остается. Начни с лёгкого: Брукс Мифический человеко-месяц.

Фредерик Брукс «Мифический человеко-месяц» — абсолютно классический труд об оценке трудозатрат и важности коммуникаций.

Мартин Фаулер «Рефакторинг» — даже если вы не собираетесь ничего рефакторить, даёт некоторое представление о том, с каким кодом потом будет удобно работать, а с каким не очень.

Peopleware. Этой книге около 30 лет, но она по-прежнему актуальна. Я считаю, с неё нужно начинать знакомство с профессией.

«Code Complete» («Совершенный код») МакКоннелл или «Clean Code» Robert C.Martin
+ «Программист-прагматик» (Энди Хант, Дейв Томас)

И, а не ИЛИ.

Дональд Кнут, Искусство программирования все 4 тома в подлиннике.
Introduction to Algorithms is a book by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. от корки до корки + важно проработать дополнительные источники после глав.
Философия Java от Б.Эккеля, Java можете не читать, сосредоточьтесь только на философии.
Официальная документация на браузер firefox 24-й версии

Підписатись на коментарі