В свойственной мне манере изложения, я вновь задаюсь вопросами для себя и пытаюсь на них ответить. Как всегда, жду комментарии, лайки и конструктивную критику.
Сегодня речь пойдет о литературе и что почитать, чтоб набраться теоретических знаний и расширить свои кругозор. Конечно, речь пойдет не о любовных романах, хотя может быть это и так, но в общем то поговорим сегодня о технической литературе.
Частично это будет отзывы на книги которые я прочитал сам, с постановкой вопроса зачем я это делал, а часть — это стопочка, которая ждет прочтения и опять же с тем же вопросом -зачем.
Для чего читать?
Первый и важный вопрос и ответ будет прост - для развития. Книги дают почту для мыслей, переосмысления сделанного и проектирования нового. Когда мы читаем - мы развиваемся. По принципу нейросетей у нас в голове укладывается информация и растут нейросвязи на уровне информации. Чем больше мы читаем - тем больше база данных, чем чаще возвращаемся мыслями к прочитанному и осознаем, что прочитали, тем надежнее и активнее нейросвязи в голове.
Поэтому не зависимо от того, кто ты, читать важно. Читать не все, избранно и очень точечно, особенно когда не хватает информации и опыта. Поэтому для любого ночующего программиста, чтение — это в первую очередь знания, которые надо закрепить на практике.
Что читать?
Тут важно разделять и отвечать на несколько вопросов, которые разберем в этой части.
Я ответил для себя так: "Литература, которая позволяет понять основные принципы построения качественного кода". Кавычки появились не спроста!
Помните, никакая литература не научит вас писать качественный код — это можете сделать только вы сами и это придет с опытом. В любой литературе важно изучить принципы построения кода, главные понятия ООП и многое другое. И в данный момент я приведу несколько умных книг для начинающих программистов на Python & Java (потому что основными языками для меня стали именно они, я не буду говорить о других так как не имею должной компетенции).
Первая партия литературы, которую будем обсуждать.
- Любанович Билл
Python. Современный стиль программирования. 2-е изд. — СПб.: Питер, 2021. — 592 с.: ил. — (Серия «Бестселлеры O’Reilly»). ISBN 978-5-4461-1639-3
- Лусиану Рамальо
Python – к вершинам мастерства: Лаконичное и эффективное программирование / пер. с англ. А. А. Слинкина. 2-е изд. – М.: МК Пресс, 2022. – 898 с.: ил.
- Мартин Роберт
Чистая архитектура. Искусство разработки программного обеспечения. —СПб.: Питер, 2021. — 352 с.: ил. — (Серия «Библиотека программиста»). ISBN 978-5-4461-0772-8
- Мартин Роберт
Чистый код: создание, анализ и рефакторинг. - СПБ.:Питер, 2019. -464с.:ил. ISBN 978-5-4461-0960-0
Кратко о книгах сверху вниз как они расположены.
Первая книга о современном стиле программирования. Не претендует на шедевр, но из всех прочитанных мною по данному направлению вначале пути на Python именно эта, мне показалась самой структурированной. Автор грамотно рассказывает о структуре языка, подходах. Читается легко, отвлекаясь на код чтоб попробовать, чтение у меня заняло чуть больше 7 дней. Вы, наверное, скажите, что где 21 и где 24 год - но поверьте, разницы нет никакой даже если вы возьмете книги 2000 года, изменились только инструменты, а из-за этого и подход.
Вторая книга, уже более тяжелый, но не менее интересный материал. Закрепляет информацию из первого издания и дает многое для осмысления - как писать код. Учитывая, что книга написана основателем хакерского клуба, то и подход очень глубокий, раскрывающий не лежащее на поверхности. Безопасности кода так же уделено внимание. Из веселых картинок только бургер, а еще есть псевдо пушка из которой запускали Мюнхгаузена. Эта книга мне далась за 25 дней так как приходилось возвращаться к некоторым статьям повторно.
Третья книга — это уже голова и структурирование. Писать код — это быть поэтом и критиком в одном лице. Книга будет полезна для понимания подходов построения архитектуры программных продуктов и в целом к подходу создания ПО. В книге есть очень хорошие моменты объясняющие бизнес-подходы к созданию ПО, что очень важно учитывать при создании программных решений. Так как программы пишутся для бизнеса, то и отвечать должны бизнес требованиям, а не требования программиста.
Четвертое издание, для меня стало открытием и переосмыслением третьей книги и в целом моих подходов к созданию ПО, а также именно она помогла мне в моей роли "ревьювер" кода. Осознание мыслей Роберта Мартина из этой книги, позволила лично мне быстрее читать код, смотреть в те точки, которые действительно важны. В общем стоящее издание!
Вместо заключения
Это конечно не все, что надо почитать и конечно же не претендует на требования к прочтению как бестселлеры, но этот комплект книг по моему мнению даст хорошую базу для начала. Мною прочитано много книг, разных по содержанию и количеству страниц, но я рекомендую на данный момент именно этот комплект. Прочтение лучше всего делать именно в том порядке, который описан выше, так будет закрепляться материал из прочитанного и все новое будет понятно, как применять на практике.
Всем своим наставникам я даю именно их. Как правило через 3-4 месяца вижу изменение в мыслях, рассуждениях, а для меня главное в структуре ПО, которое пишут наставники. Еще раз заострю внимание, что я не прямой преподаватель языка программирования - я архитектор. Моя задача научить делать правильное бизнес ориентированное ПО, обрабатывать большие данные и управлять потоками данных. Писать код вы учитесь сами, а архитектуре учу уже я. За свою историю работы с продуктом, я вырос в архитектора именно благодаря чтению, практике и постоянному развитию себя как личности, как профессионала.
Никогда не переставайте читать, общаться с собой подобными и самое главное не бойтесь спрашивать. За свою большую историю жизни и работы в информационных технологиях, я понял только одно:
"Если на заданный вами вопрос, вы не услышали ответ. Значит вы задали свой вопрос не тому человеку.
Вроде получилось неплохо, кратко и надеюсь понятно, что читать это важно и важно читать не все подряд. Я надеюсь, что после статьи будут вопросы и я увижу все в комментариях, так же и лайки или дизлайки кому как нравится. Всем отличного кода и правильной архитектуры!дня речь пойдет о литературе и что почитать, чтоб набраться теоретических знаний и расширить свои кругозор. Конечно реч пойдет не о любовных романах, хотя может быть это и так, но в общем то поговорим сегодня о технической литературе.