Начать игру в крипту

ТОП-30: бесплатные книги по программированию 2022 для новичков с нуля

Привет всем, друзья! ✌ Сегодня рассмотрим бесплатные книги по программированию, чтобы вы могли поменять профессию и начать зарабатывать на любимом деле, не смотря на кризис. ЛЕТС ГОУ!

Будет также секретный бонус для читателей, поэтому оставайтесь с нами.

ТОП-15 книг по кодингу на русском для новичков

1. «Программист-прагматик. Ваш путь к мастерству» 

Дэвид Томас, Эндрю Хант

1. «Программист-прагматик. Ваш путь к мастерству» 
  • Перевод с английского — И. В. Берштейн
  • Издательство «Вильямс», 2020 год, 368 с.
  • Оригинальное название: The Pragmatic Programmer: Your Journey To Mastery, 20th Anniversary Edition (2nd Edition) by David Thomas & Andrew Hunt
  • Зачем читать: чтобы получить общее представление о работе программистов.

Кажется, в этой книге есть всё, что пригодится программисту: от того, как стать ответственным, до анализа ошибок в алгоритмах и шифрования данных.

Если разбирать все эти темы от и до, получился бы неподъёмный труд на 100500 томов, а не 300 страниц «Программиста-прагматика». Так что книга даёт лишь общее представление — как карта без детализации.

2. «Чистый код: создание, анализ и рефакторинг» (Библиотека программиста)

Роберт Мартин

2. «Чистый код: создание, анализ и рефакторинг» (Библиотека программиста)
  • Перевод с английского — Е. А. Матвеев
  • Издательство «Питер», 2021 год, 464 с.
  • Оригинальное название: Clean Code: A Handbook of Agile Software Craftsmanship by Robert C. Martin
  • Зачем читать: чтобы научиться замечать типичные ошибки и не делать их самому. Например, не пускать на самотёк именование переменных, подпрограмм и модулей, форматирование кода, обработку граничных условий — то, что по отдельности кажется мелочью, а всё вместе безбожно портит код.

Начинающим программистам иногда кажется, что раз программа заработала, то и ладно. Ни к чему с ней дальше возиться: незачем тщательно продумывать структуру классов, обрабатывать все граничные условия и уж тем более заботиться о говорящих именах переменных, полезных комментариях и других «мелочах».

3. «Совершенный код. Мастер-класс»

Стив Макконнелл

3. «Совершенный код. Мастер-класс»
  • Перевод с английского — В. Г. Вшивцев
  • Издательство «БХВ», 2017 год, 896 с.
  • Оригинальное название: Code Complete by Steve McConnell
  • Зачем читать: чтобы узнать, как довести любую программу до совершенства. Ну или хотя бы попытаться 🙂

Грамотное конструирование — это секрет успеха. Вот основная идея автора книги. Причём в конструирование входит и планирование, и кодирование, и тестирование готовой программы.

Из книги вы узнаете:

  • какие бывают методики проектирования;
  • как повысить качество методов в коде;
  • как отлаживать код и как его улучшать (рефакторить);
  • и даже зачем программисту любопытство.

4. «Паттерны объектно-ориентированного проектирования»

Эрих Гамма, Ричард Хелм, Ральф Джонсон, Джон Влиссидес

4. «Паттерны объектно-ориентированного проектирования»
  • Перевод с английского — А. Слинкин
  • Издательство «Питер», 2021 год, 448 с.
  • Оригинальное название: Design Patterns: Elements of Reusable Object-Oriented Software by Erich Gamma, Ralph Johnson, John Vlissides, Richard Helm
  • Зачем читать: чтобы узнать про шаблоны программирования из первоисточника.

Четвёрка авторов, она же «Банда четырёх», среди программистов известна не меньше, чем «Битлз» во всём мире. И знамениты они как раз тем, что первыми детально описали 23 основных шаблона проектирования — показали, как организовывать взаимодействие классов и объектов, чтобы решать типичные задачи программирования.

5. «Head First. Паттерны проектирования» (обновлённое юбилейное издание)

Эрик Фримен, Элизабет Робсон, Кэти Сьерра, Берт Бейтс

5. «Head First. Паттерны проектирования» (обновлённое юбилейное издание) - njg бесплатные книги по программированию 2022
  • Перевод с английского — Е. А. Матвеев
  • Издательство «Питер», 2021 год, 656 с.
  • Оригинальное название: Head First Design Patterns: A Brain-Friendly Guide by Eric Freeman & Elisabeth Robson / Bert Bates / Kathy Sierra
  • Зачем читать: чтобы перестать ненавидеть шаблоны и начать, наконец, их применять на практике 🙂

Тот самый случай, когда проще — не значит хуже. В этой книге из серии Head First знаменитого издательства O’Reilly, похоже, достигнут идеальный компромисс между сложностью объясняемых концепций и простотой подачи материала.

6. «Шаблоны корпоративных приложений» (Signature Series)

Мартин Фаулер

6. «Шаблоны корпоративных приложений» (Signature Series)
  • Перевод с английского — Издательский дом «Вильямс»
  • Издательство «Вильямс», 2020 год, 544 с.
  • Оригинальное название: Patterns of Enterprise Application Architecture by Martin Fowler with contributions from David Rice et al. (Addison-Wesley Signature Series)
  • Зачем читать: чтобы узнать, как решают проблемы больших и очень больших приложений.

И снова про шаблоны, но уже про другие — про шаблоны высокого уровня. Корпоративные приложения автоматизируют сложные бизнес-процессы и нередко работают с довольно большими объёмами данных. При этом они, как правило, интегрируются и обмениваются данными с другими системами. Всё это порождает специфические трудности и вопросы.

7. «Психбольница в руках пациентов. Алан Купер об интерфейсах»

Алан Купер

7. «Психбольница в руках пациентов. Алан Купер об интерфейсах»
  • Перевод с английского — Е. Самородских
  • Издательство «Питер», 2018 год, 384 с.
  • Оригинальное название: The Inmates Are Running the Asylum: Why High Tech Products Drive Us Crazy and How to Restore the Sanity by Alan Cooper
  • Зачем читать: чтобы лучше понимать целевую аудиторию, что ей нужно, ну и не ругаться почём зря с коллегами-дизайнерами 🙂

Гибкая архитектура, изящные алгоритмы, паттерны и принципы именования — за всем этим программист порой забывает, что программное обеспечение должно быть не только качественным, но нужным, полезным и понятным для потребителей.

Хорошо, если в компании есть UX/UI-дизайнеры, которые анализируют потребности пользователей, сценарии их работы и проектируют грамотный интерфейс. Но иногда за эту часть работы отвечают те же программисты.

8. «Искусство программирования»

Дональд Кнут

8. «Искусство программирования»
  • Перевод с английского — И. В. Красиков, С. Г. Тригуб, Ю. Г. Гордиенко
  • Издательство «Вильямс», 2020 год, 720 + 160 + 832 + 960 с.
  • Оригинальное название: The Art of Computer Programming by Donald Knuth
  • Зачем читать: чтобы прокачаться в вычислительной математике и анализе алгоритмов.

У третьего (актуального) издания на английском языке семь томов. На русский переведено четыре из них: две части первого тома, второй и третий, а также том 4А.

Самый классический и самый фундаментальный труд в нашей подборке: многотомник от всемирно признанного гуру в области программирования, автора 19 монографий и более сотни статей.

9. «Грокаем алгоритмы. Иллюстрированное пособие для программистов и любопытствующих»

Адитья Бхаргава

9. «Грокаем алгоритмы. Иллюстрированное пособие для программистов и любопытствующих»
  • Перевод с английского — Е. А. Матвеев
  • Издательство «Питер», 2021 год, 288 с.
  • Оригинальное название: Grokking Algorithms: An illustrated guide for programmers and other curious people by Aditya Y. Bhargava
  • Зачем читать: чтобы понять, что алгоритмы — это вовсе не скучно. А ещё — разобраться с оценкой их сложности, если вдруг после Кнута вы так и не поняли, как же её определить.

Эта книга тоже про алгоритмы, но читается как увлекательный рассказ. Простым языком автор пишет о графах, сортировке и поиске, жадных алгоритмах и динамическом программировании — причём со множеством примеров.

10. «Алгоритмы. Построение и анализ»

Томас Кормен, Чарльз Лейзерсон, Рональд Ривест, Клиффорд Штайн

10. «Алгоритмы. Построение и анализ»
  • Перевод с английского — И. В. Красиков
  • Издательство «Вильямс», 2020 год, 1328 с.
  • Оригинальное название: Introduction to Algorithms by Thomas Cormen / Charles Leiserson / Ronald Rivest / Clifford Stein.
  • Зачем читать: книг об алгоритмах не бывает слишком много 🙂 Алгоритмов и самих немало, и разобраться в них с первого раза (ладно, со второго и третьего тоже) бывает непросто.

Так что лучше черпать из всех источников: одна книга лучше объяснит сортировку, другая — жадные алгоритмы, третья — уложит в вашей голове сложные структуры данных 🙂

11. «Мифический человеко-месяц»

Фредерик Брукс

11. «Мифический человеко-месяц»
  • Перевод с английского — А. В. Логунов
  • Издательство «Питер», 2020 год, 368 с.
  • Оригинальное название: The Mythical Man-Month: Essays on Software Engineering, Anniversary Edition (2nd Edition) by Frederick Brooks
  • Зачем читать: чтобы узнать о жизненном цикле программного проекта — понять, почему в IT так часто срываются сроки и как с этим бороться.

Эта книга будет полезна:

  • программисту, которого часто просят оценить сроки (чтобы давал более точную оценку);
  • и менеджеру проекта, который мучает программистов подобными вопросами (чтобы составлять адекватные планы).

12. «Рефакторинг. Улучшение проекта, существующего кода»

Мартин Фаулер

12. «Рефакторинг. Улучшение проекта, существующего кода»
  • Перевод с английского — И. В. Красиков
  • Издательство «Вильямс», 2019 год, 448с.
  • Оригинальное название: Refactoring. Improving the Design of Existing Code by Martin Fowler
  • Зачем читать: чтобы разобраться, когда применять рефакторинг, а главное — как это делать и не развалить весь проект.

Рефакторинг — это, по сути, улучшение проекта после того, как код написан. Однако рабочее кредо многих программистов (и их начальников) звучит так: «Работает — не трогай». Они не хотят тратить деньги и время на изменение программы, если результат не виден снаружи. Так и появляются проекты с многочисленными костылями и заплатками в критичных местах, копится технический долг. Со временем всё это становится нежизнеспособным.

13. «Эффективная работа с унаследованным кодом»

Майкл Физерс

13. «Эффективная работа с унаследованным кодом»
  • Перевод с английского — И. В. Берштейн
  • Издательство «Вильямс», 2016 год, 400 с.
  • Оригинальное название: Working Effectively with Legacy Code by Michael C. Feathers
  • Зачем читать: чтобы исправить чужие ошибки и не наделать своих.

Прилагательное в заголовке было бы лучше оставить без перевода — legacy-код. Потому что именно в таком виде понятие знакомо любому программисту-профи. Знакомо до боли! В прямом смысле! Вызывает в памяти простыни запутанного кода, мучительные попытки понять, что там происходит, и злобное бессилие, ведь быстро внести правку или добавить фичу при таком бардаке — задачка со звёздочкой. В общем — о бессонных ночах и дёргающемся глазе 🙂

14. «Идеальный программист. Как стать профессионалом разработки ПО»

Роберт Мартин

14. «Идеальный программист. Как стать профессионалом разработки ПО»
  • Перевод с английского — Е. А. Матвеев
  • Издательство «Питер», 2019 год, 224 с.
  • Оригинальное название: The Clean Coder: A Code of Conduct for Professional Programmers by Robert C. Martin
  • Зачем читать: чтобы узнать, какие навыки, помимо технических, нужны программисту и как их развивать.

Это вторая книга Роберта Мартина в нашей подборке. Многие мысли в ней выглядят банальными. Например, совет «если вы устали или не можете сосредоточиться — не пишите код» или глава о том, что за свои слова и решения нужно отвечать.

15. «Думай как программист. Креативный подход к созданию кода. C++ версия»

Антон Спрол

15. «Думай как программист. Креативный подход к созданию кода. C++ версия»
  • Перевод с английского — Е. А. Матвеев
  • Издательство «Бомбора», 2018 год, 272 с.
  • Оригинальное название: Think Like a Programmer: An Introduction to Creative Problem Solving by V. Anton Spraul
  • Зачем читать: чтобы узнать о простых подходах к решению сложных задач.

Программировать — это не только выучить пару десятков ключевых слов и научиться их правильно сочетать. Разработчикам нужно уметь мыслить нестандартно, находить решения сложных творческих задач — и только потом воплощать их в коде.

ТОП-25: остальные книги по программированию с нуля

«Continuous Delivery», Jez Humble & David Farley

Getting software released to users is often a painful, risky, and time-consuming process. This groundbreaking new book sets out the principles and technical practices that enable rapid, incremental delivery of high quality, valuable new functionality to users. Through automation of the build, deployment, and testing process, and improved collaboration between developers, testers, and operations, delivery teams can get changes released in a matter of hours— sometimes even minutes–no matter what the size of a project or the complexity of its code base.

«Алгоритмы на Java», Роберт Седжвик, Кевин Уэйн

Книга Седжвика и Уэйна «Алгоритмы на Java» является классическим справочным руководством в котором содержится необходимый объём знаний для программиста в области алгоритмов, накопленных за последние несколько десятилетий

«Сам себе программист. Как научиться программировать и устроиться в Ebay?», Кори Альтхофф

Автор книги всего за год научился программировать, что само по себе немало. Однако Кори Альтхофф пошёл дальше, и научившись программировать, он устроился разработчиком в одну из самых серьёзных современных IT компаний — Ebay. Как ему удалось? Читайте эту книгу, изучайте программирование на языке Python по уникальной авторской методике — вам это тоже по силам!

Начать игру в крипту

«Rapid Development», Steve McConnell

Corporate and commercial software-development teams all want solutions for one important problem — how to get their high-pressure development schedules under control. In «Rapid Development», author Steve McConnell addresses that concern head-on with overall strategies, specific best practices, and valuable tips that help shrink and control development schedules and keep projects moving. Inside, you’ll find:

«Кодеры за работой. Размышления о ремесле программиста», Питер Сейбел

Программисты — люди не очень публичные, многие работают поодиночке или в небольших группах. Причем самая важная и интересная часть их работы никому не видна, потому что происходит у них в голове. Питер Сейбел, писатель-программист, снимает покров таинственности с этой профессии. Он взял интервью у 15 величайших профессионалов: Кена Томпсона, создателя UNIX, Берни Козелла, участника первой реализации сети ARPANET, Дональда Кнута, Гая Стила, Джейми Завински, Саймона Пейтон-Джонса, Питера Норвига, Дугласа Крокфорда, Джошуа Блоха, Брендана Айка, Джо Армстронга, Брэда Фицпатрика, создателя Живого Журнала, и других.

«Предметно-ориентированное проектирование (DDD). Структуризация сложных программных систем», Эрик Эванс

Классическая книга Э. Эванса освещает наиболее общий, стратегический круг вопросов, связанных с объектно-ориентированной разработкой программного обеспечения. Это переработка и структуризация знаний о предметных областях, применение типовых архитектурных шаблонов, построение и анализ моделей предметных областей, проектирование программных объектов с точки зрения качества их взаимодействия и передачи логической структуры знаний, организация программ на основе крупномасштабных структур, выработка общего языка и стратегии коммуникации в группе.

«Структура и Интерпретация Компьютерных Программ», Абельсон Харольд, Сассман Джеральд Джей

«Структура и Интерпретация Компьютерных Программ», Абельсон Харольд, Сассман Джеральд Джей

Книга посвящена описанию различных систем программного синтаксиса, анализу перехода от набора алгоритмов к программному коду. Значительное место уделяется обсуждению набора «элементарных программ», использующихся в качестве элементов конструкции программ более высоких уровней сложности, оптимизации соотношения их «веса» и эффективности. Особое внимание авторы уделяют анализу проблемы взаимодействия компьютера как физического объекта и программного кода, обеспечивающего информационную составляющую вычисления.

Книга будет полезна всем, кому приходится иметь дело с программированием, в том числе и в гуманитарных областях знания.

«Жемчужины программирования», Джон Бентли

Эта книга написана для программистов. Хороший программист должен знать все, что написано до него, только тогда он будет писать хорошие программы. Главы этой книги посвящены наиболее привлекательному аспекту профессии программиста: жемчужинам программирования, рождающимся за пределами работы, в области фантазии и творчества. В них рассматриваются: постановка задач, теория алгоритмов, структуры данных, вопросы повышения эффективности кода, а также верификация и тестирование программ.

«Человеческий фактор. Успешные проекты и команды», Том Демарко, Тимоти Листер

Немногие книги о компьютерах оказали такое заметное влияние на управление разработкой программного обеспечения, как «Человеческий фактор». Уникальное озарение этой книги, долгие годы сохранявшей своё положение в списке бестселлеров: самые сложные проблемы разработки ПО носят не технологический, а социальный характер. Эти человеческие проблемы решать не просто, однако, решив их, вы увеличите шансы на успех до верхнего предела.

«Код. Тайный язык информатики», Чарльз Петцольд

Эта книга — азбука компьютерных технологий. Шаг за шагом автор знакомит читателя с сущностью кодирования информации, рассказывает об истории возникновения компьютеров, на практических примерах помогает освоить основные концепции информационных технологий, подробно излагает принципы работы процессора и других устройств компьютера.

«Не заставляйте меня думать. Веб-юзабилити и здравый смысл», Стив Круг

Книга посвящена юзабилити веб-сайтов и мобильных приложений. Автор популярно, с примерами и иллюстрациями, объясняет, как сделать сайт или мобильное приложение, которым будет удобно пользоваться всем.

«Путь программиста», Джон Сонмез

Любой программист — прежде всего, человек со своими достоинствами и недостатками. Но в то же время программист — это интеллектуал, человек, постоянно занятый решением задач, анализом требований, исправлением ошибок, взаимодействием с коллегами и заказчиками.

«Карьера программиста», Г. Лакман Макдауэлл

Книга «Карьера программиста» основана на опыте практического участия автора во множестве собеседований, проводимых лучшими компаниями. Это квинтэссенция сотен интервью со множеством кандидатов, результат ответов на тысячи вопросов, задаваемых кандидатами и интервьюерами в ведущих мировых корпорациях. Из тысяч возможных задач и вопросов в книгу были отобраны 189 наиболее интересных и значимых.

«Приемы объектно-ориентированного проектирования. Паттерны проектирования», Эрих Гамма, Джон Влисидис, Ричард Хелм, Ральф Джонсон

В предлагаемой книге описываются простые и изящные решения типичных задач, возникающих в объектно-ориентированном проектировании. Паттерны появились потому, что многие разработчики искали пути повышения гибкости и степени повторного использования своих программ.

«Сколько стоит программный проект» Стив Макконнелл

Уже вторая книга этого автора в нашей подборке. Очень подробное пособие о том, как рассчитывать сроки разработки программного обеспечения. Современный вариант классического труда Фредерика Брукса «Мифический человеко-месяц», написанного в 1975 году. Поможет научиться реалистично подходить к оценке затрат на разработку продуктов.

ТОП-5 Образовательных платформ, в которых вы сможете изучить программирование бесплатно дома

1.Geekbrains

geekbrains

Обучаем с нуля профессиям и предоставляем знания по востребованным специальностям и направлениям в сфере Информационных технологий.

  • Диплом о профессиональной переподготовке
  • Государственная образовательная лицензия
  • Длительные программы обучения, короткие интенсивные программы и обширная база знаний
  • Лекции, семинары, вебинары, мероприятия, статьи, видеоматериалы и другие форматы
  • Крупнейшее сообщество IT-специалистов, экспертов, выпускников и новичков

Тотальный обзор 40+ бесплатных курсов от Geekbrains найдёте в этой статье.

Коллекция бесплатных обучающих курсов:

  1. Программирование
  2. Дизайн
  3. Маркетинг
  4. Управление
  5. Игры

2.Нетология

Бесплатные курсы, лекции и полезные материалы

Бесплатные курсы и лекции Нетологии — это Возможность познакомиться с интересующей профессией:

  • Новые навыки, которые можно сразу применять
  • Компактная программа
  • Обучение в удобное время

Тотальный обзор 30+ бесплатных курсов от Нетологии найдёте в этой статье.

3.Skillbox

Skillbox

Получите доступ к любым онлайн-курсам и интенсивам на 15 дней. Посмотрите, как устроено обучение, и оцените уровень программы. Это бесплатно — даже если решите, что курс вам не подходит. Акция действует до 16 января 2022 года.

У нас более 560 образовательных программ, которые помогут получить актуальные навыки и освоить востребованные профессии. Обучаем онлайн — на практике и с обратной связью от признанных экспертов. Помогаем с трудоустройством и стажировками.

Тотальный обзор 30+ бесплатных курсов от Skillbox найдёте в этой статье.

4.XYZ School

Курсы

Мы — XYZ School. Учим делать игры — создавать 3D-графику и концепты, придумывать персонажей и программировать. Наши преподаватели — действующие профессионалы индустрии: они работают в Blizzard, People Can Fly и CD Projekt Red.

С 2019 года мы выпустили уже 140 000 студентов и получили сотни отзывов. Многие из них работают в топовых студиях или выпускают свои проекты. Они смогли — и ты сможешь. Сделай первый шаг и все получится.

Тотальный обзор 10+ бесплатных курсов от Xyz School найдёте в этой статье.

5.СПбГУ

Подберите свой онлайн-курс от первого университета страны

Центр развития электронных образовательных ресурсов – новейшее подразделение СПбГУ, целью которого является предоставление доступа к знаниям для всех желающих.

Сочетание многолетних академических традиций СПбГУи современных образовательных технологий электронного и дистанционного обучения обеспечивают возможность получения качественного образования в удобное время и в любой точке мира.

Заключение

бесплатные книги по программированию 2022

Источники:

  1. https://skillbox.ru/media/code/16-klassicheskikh-knig-dlya-programmista/
  2. https://tproger.ru/books/the-25-most-recommended-programming-books-of-all-time/
Евгений Волик

¡Hola amigos! Здесь я выкладываю подборки с курсами для обучения разным профессиям с нуля. Проект существует с 2021 года и постоянно развивается.

Оцените автора
( Пока оценок нет )
Evgenev.ru