No Image

Топ книг для программиста

СОДЕРЖАНИЕ
4 просмотров
10 марта 2020

Где научиться программированию, если не хочется тратить 4 года на скучные лекции? Запишитесь на курсы программирования, там вас быстро обучат азам. После этого совершенствуйтесь хоть всю жизнь, в чём помогут книги из подборки 😉

Роберт Мартин. «Чистый код»

Если ваш код работает, это ещё не значит, что он хороший. Думаете, что название переменных — это мелочь, которая ни на что не влияет? Как же вы ошибаетесь!

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

Это именно та книга, которую раз в жизни должен прочитать каждый программист. Да, возможно некоторые моменты здесь устарели, но книга рассказывает о незыблемых истинах. Здесь каждый программист найдет что-то для себя.

Томас Кормен, Чарльз Лейзерсон, Рональд Ривест и Клиффорд Штайн. «Алгоритмы: построение и анализ»

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

Хант Эндрю, Томас Дэвид. «Программист-прагматик. Путь от подмастерья к мастеру»

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

Дональд Кнут. «Искусство программирования»

Монография, которая успела стать классикой в кругу программистов. Изучив все 4 тома серии, вы ознакомитесь со всем, что нужно для освоения профессии.

Юрий Родичев. «Нормативная база и стандарты в области информационной безопасности»

Вы думаете, что программирование — это только код? Как бы не так! Если вы хотите стать настоящим профи, то без изучения стандартов безопасности и чтения профильной литературы не обойтись. Маст-рид для программиста в 2019!

Андрей Бирюков. «Информационная безопасность: защита и нападение»

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

Том ДеМарко, Тимоти Листер. «Вальсируя с Медведями»

Авторы рассказывают, как идентифицировать риски, управлять ими и извлекать выгоду из рисков. Вы должны рисковать в каждом проекте по разработке, иначе стагнируете.

Избегать рисков — дело проигрышное.

Игорь Савчук. «Отъявленный программист. Лайфхакинг из первых рук»

Это не классический учебник по программированию — здесь собраны мнения звезд IT-индустрии, где каждый поделился личными методами достижения успеха. И пусть эти люди совершенно разные, но их объединяет одно — любовь к программированию!

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

Если вам интересна история информатики — обязательно ознакомьтесь с этой книгой. Чарльз Петцольд создал настоящую азбуку компьютерных технологий, где раскрыта вся история IT: с самых первых попыток программирования до портативных технологий сегодняшнего дня.

Эрик Фримен, Элизабет Робсон. «Паттерны проектирования»

Решили стать Java-программистом? Без понимания паттернов проектирования вы застрянете на повторении упражнений из учебника. Обязательная книга для Java программиста в 2019 году.

Марейн Хавербек. «Выразительный JavaScript»

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

Брайан Холл. «Beej’s Gu >

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

Бьярне Страуструп. «Программирование: принципы и практика использования C++»

Интересуетесь языком C++, но нет опыта программирования? Здесь вы узнаете всю информацию о C++, так как автор книги и придумал этот язык программирования!

Мажед Маржи. «Scratch для детей»

Это один из самых понятных и интересных языков программирования, которому можно научить даже ребенка. Забудьте про зазубривание форм и алгоритмов: программировать так же просто, как сделать башню из конструктора!

Авторы проекта Dev-Books проанализировали миллионы вопросов и ответов в крупнейшем сообществе программистов Stack Overflow. Всё для того, чтобы найти книги, на которые чаще всего ссылаются разработчики.

В общий список вошло 5 720 книг. Ниже вы найдёте 20 самых упоминаемых из них, которые когда-либо выходили на русском.

По просьбе Лайфхакера своими мнениями насчёт некоторых изданий поделились отечественные эксперты.

1. «Эффективная работа с унаследованным кодом», Майкл К. Физерс

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

2. «Приёмы объектно-ориентированного проектирования. Паттерны проектирования», Эрих Гамма и другие

Классика для программиста. Первая книга, посвящённая именно шаблонам.

Леонид Выговский, системный архитектор IT-компании LiveTex

— Издание уже 20 лет переиздаётся в изначальном виде. В этом, конечно, главный недостаток книги: некоторые шаблоны уже неактуальны. Думаю, её полезно читать уже после других, более современных, книг по паттернам проектирования. Тем более что она написана сухим академическим языком. Для понимания паттернов эта книга не must read, но её прочтение добавляет крутости в глазах коллег-программистов. 🙂 Начинать я советую с «Паттернов проектирования» (Head First Design Patterns).

3. «Чистый код. Создание, анализ и рефакторинг», Роберт К. Мартин

Интересная, но во многом спорная книга о том, как писать понятный и поддерживаемый код.

Леонид Выговский, системный архитектор IT-компании LiveTex

— Почему спорная? Книг про написание кода уже огромное количество, и часть приёмов являются общепризнанными. Но каждый автор добавляет что-то своё. Лично для меня мнение Боба Мартина кажется иногда странным и противоречащим другим источникам. Не must read, но прочитать всё же стоит. Качество кода после прочтения становится лучше.

Читайте также:  Почему сцепление срабатывает в начале

4. «Предметно-ориентированное проектирование», Эрик Эванс

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

Леонид Выговский, системный архитектор IT-компании LiveTex

— Из этой книги выросли концепции СQRS, BDD, onion-architecture и много других интересных идей. Единственный недостаток: книга насквозь теоретическая. Практическую пользу она приобрела только с выходом книги Вона Вернона «Реализация методов предметно-ориентированного проектирования» (Implementing Domain Driven Design). Поэтому читать их надо последовательно, сразу друг за другом.

5. «JavaScript: сильные стороны», Дуглас Крокфорд

Обязательная книга для веб-разработчиков. В ней Дуглас Крокфорд рассказывает о преимуществах языка JavaScript и учит грамотно их применять для создания эффективного кода.

6. «Шаблоны корпоративных приложений», Мартин Фаулер и другие

Книга описывает базовые принципы проектирования ПО для корпоративных платформ.

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

Классическая книга о том, как писать код лучше.

Михаил Осотов, директор по производству «Центра высоких технологий»

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

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

Из серии книг по написанию понятного и качественного кода, «Рефакторинг» — лучшая.

Леонид Выговский, системный архитектор IT-компании LiveTex

Выговский: «Она не только показывает хороший код, но и на примере плохого объясняет, чем именно он плох. Эта книга — must read для всех. Причём чем раньше вы её прочтёте, тем лучше. Качество кода после прочтения сильно вырастет».

Если книгу Фаулера вы уже прочли, обратите внимание на «Рефакторинг с использованием шаблонов» (Refactoring to Patterns) Джошуа Кериевски, которую рекомендует Михаил Осотов.

«Рефакторинг с использованием шаблонов» Кериевски — отличная книга для тех, кто каждый день сталкивается с проблемой легаси-кода и технического долга в своих проектах.

Михаил Осотов, директор по производству «Центра высоких технологий»

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

9. «Паттерны проектирования», Эрик Фримен, Элизабет Фримен и другие

Серия Head First, на мой взгляд, идеально подходит для новичков в области разработки ПО.

Михаил Осотов, директор по производству «Центра высоких технологий»

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

10. «Язык программирования C», Брайан У. Керниган, Деннис М. Ритчи

Классическое учебное пособие по языку C, написанное его же создателями. Однако начинающим эта книга может показаться сложной, поскольку требует от читателя знания основ программирования.

11. «Эффективное использование С++. 55 верных способов улучшить структуру и код ваших программ», Скотт Майерс

Книга содержит советы по проектированию программ, работе с шаблонами и управлению ресурсами, а также другие рекомендации по созданию качественного ПО на языке С++.

12. «Экстремальное программирование: разработка через тестирование», Кент Бек

Автор на примерах описывает методику разработки ПО, которая предполагает тестирование программ ещё до написания их кода.

13. «Алгоритмы. Построение и анализ», Томас Х. Кормен и другие

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

14. «Регулярные выражения», Джеффри Фридл

Издание об эффективной работе с текстом в Perl, PHP, Java, Python, Ruby и других языках программирования.

15. «CLR via C#. Программирование на платформе Microsoft.NET Framework 4.5 на языке C#», Джеффри Рихтер

Классический учебник по разработке приложений для платформы Microsoft, в том числе с помощью Silverlight, Windows Presentation Foundation, ASP.NET и прочих технологий компании.

16. «Современное проектирование на C++», Андрей Александреску

Книга для опытных программистов на C++. Автор предлагает новый подход к разработке, сочетающий метапрограммирование шаблонов, обобщённое программирование и объектно-ориентированное программирование на этом языке.

17. «Microsoft ASP.NET 2.0. Базовый курс», Дино Эспозито

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

18. «Шаблоны тестирования xUnit. Рефакторинг кода тестов», Джерард Месарош

Автор книги показывает, как применять шаблоны проектирования, исключение повторений, инкапсуляцию и другие принципы разработки ПО к написанию кода тестов.

19. «Компиляторы. Принципы, технологии и инструментарий», Альфред В. Ахо и другие

Книга описывает базовые принципы разработки компиляторов и делает особый акцент на оптимизации кода. В помощь читателю — большое количество примеров из практики.

20. «Инфраструктура программных проектов. Соглашения, идиомы и шаблоны для многократно используемых библиотек .NET», Кржиштоф Цвалина, Брэд Абрамс

Издание содержит лучшие приёмы разработки библиотек для платформы Microsoft .NET Framework. Книга должна упростить работу любого .NET-специалиста, который пишет код для других разработчиков.

Полный рейтинг англоязычных книг доступен на сайте Dev-Books. Там же можно просмотреть списки самых популярных книг на определённые темы, будь то Java, Database Design или CSS.

    Книги, 15 февраля 2018 в 15:20
Читайте также:  Программа для автовыключения компьютера windows 10

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

Карьера программиста

Автором этого пособия является Г. Макдоуэлл, основатель CareerCup и бывший сотрудник таких компаний, как Apple, Google и Microsoft. Книга предназначена для качественной подготовки к предстоящему собеседованию на позицию разработчика программного обеспечения.

Она сделана в формате «задача-решение»: почти 200 вопросов и ответов, большинство из которых автор взял из собственного опыта, покрывают всевозможные темы, в том числе алгоритмы, шаблоны проектирования и многое другое. В целом прочтение «Cracking the Coding Interview» точно не будет лишним, и это подтверждает его статус бестселлера.

Многие задачи из этой книги есть в нашем переводе в соответствующей рубрике сайта.

24 Deadly Sins of Software Security

В книге «24 смертных греха компьютерной безопасности» Майкл Ховард и Дэвид Лебланк, эксперты безопасности Microsoft, рассказывают о наиболее распространенных и серьезных ошибках при создании разнообразного ПО, а также соответствующих «дырах».

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

Artificial Intelligence for Games

Создание качественного и развитого искусственного интеллекта — одна из самых сложных задач, с которыми сталкиваются разработчики игр. Часто от качества ИИ зависит весь коммерческий успех проекта.

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

Mathematics for 3D Game Programming and Computer Graphics

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

Третье издание раскрывает такие темы, как проекции, тени, физика, отрисовка ткани и числовые методы, а весь код полностью соответствует последним спецификациям языка шейдеров.

Game Programming Patterns

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

«Game Programming Patterns» — это коллекция шаблонов, делающих код (не только игр) чище, проще для понимания и быстрее. Из нее вы узнаете, как создать надежный цикл игры, как организовывать объекты и их компоненты, как использовать кэш процессора для улучшения производительности и многое другое. Вы погрузитесь в изучение не только того, как работают скриптовые движки и как их оптимизировать, но и того, как классические шаблоны проектирования могут быть использованы в разработке игр.

Jump Start MySQL

MySQL — супер-популярная свободная реляционная система управления базами данных, которую использует большинство интернет-сайтов.

С помощью этой книги всего за 7 дней вы сможете освоить MySQL, научиться использовать её скорость и гибкость. Вы научитесь сохранять, модифицировать и обрабатывать данные, подключать к БД свои программы, работать с таблицами, делать бекапы и многое другое.

Head First. Программирование для Android

Если у вас есть идея для «взрывного» Android-приложения, но вы не знаете, как её реализовать, то эта книга — то, что вам нужно. Вы узнаете, как правильно задать структуру своего приложения, создать к нему интерфейс и базу данных, а также как сделать, чтобы оно работало на самых разных смартфонах и планшетах, и многое другое.

По словам авторов, эта книга — как опытный Android-разработчик рядом с тобой. Единственное, что вам нужно для начала — небольшое знание Java.

97 Things Every Programmer Should Know

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

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

В этой книге Майкл Физерс предлагает стратегии по эффективной работе с legacy-кодом. Автор долгое время занимался наставничеством и решил поместить в книгу весь свой опыт. Прочитав её, вы узнаете, как читать, исправлять и улучшать такой код. Помимо примеров на Java, C++, C и C# в книге есть 24 способа избавления от зависимостей.

Приёмы объектно-ориентированного проектирования

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

Чистый код: создание, анализ и рефакторинг

Роберт Мартин в своём творении, опираясь на личный опыт и, что даже важнее, конкретные примеры из своей практики, рассказывает о том, как нужно кодить. Принципиальное отличие от книги Макконелла заключается в том, что здесь очень мало статистических обоснований правильности тех или иных действий, только код (занимающий почти треть книги) и рекомендации автора.

Читайте также:  Как понять разбит тачскрин или дисплей

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

Эта книга отлично подойдёт тем, кто сталкивался или ещё только столкнётся с проблемно-ориентированным программированием.

Совершенный код

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

Язык программирования Си

«Язык программирования Си» (также известна как K&R) — книга Брайана Кернигана и Денниса Ритчи, причём последний — один из непосредственных авторов и разработчиков языка Си. Книга стала основой для разработки и популяризации Си, до сих пор имеет спрос и широко используется в качестве «классического» учебника по языку. Она долгое время была единственным справочным руководством и де-факто — стандартом языка.

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

The Pragmatic Programmer: From Journeyman to Master

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

Путь программиста

Практически каждого программиста привела в профессию любовь к созиданию, удовольствие от созерцания, как символы превращаются в программы. Однако есть в этой работе и обратная сторона: высокая конкуренция, сложные отношения с клиентами, коллегами, руководством, финансовая нестабильность. Именно о тёмной стороне работы программиста и о том, как существовать в ладах со всеми этими заботами, рассказывает в своей книге Джон Сонмез.

Структура и Интерпретация Компьютерных Программ

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

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

Ещё одна увесистая книга по алгоритмам, впервые изданная в 1990 году в Массачусетском технологическом институте с авторством местных преподавателей. Несмотря на то, что написана она простым и понятным языком, из-за объёма и подачи материала (каждая глава имеет законченный вид) использовать лучше в качестве справочника, периодически обращаясь к нужной информации.

Искусство программирования

Искусство программирования — монументальный труд Дональда Кнута. Серия книг состоит из 4 томов, каждый из которых охватывает определенные виды алгоритмов. Это классика, которую до сих пор в обязательном порядке проходят в ВУЗах. Материал подан в достаточно сложном формате, но и цель у книг особенная — рассказать наиболее полно о существующих алгоритмах.

Карьера программиста. Как устроиться на работу в Google, Microsoft или другую ведущую IT-компанию

Не обращайте внимание на российское название — в оригинале это «Cracking the Coding Interview: 189 Programming Interview Questions and Solution», то есть просто 189 наиболее часто задаваемых вопросов на собеседованиях в крупных IT-компаниях. Ответы, разумеется, прилагаются. Помогает не только потренировать собственный мозг, но и получить представление об образе мышления в Amazon, Apple, Facebook, Google и Microsoft.

Кстати, мы часто даем разборы задач из этой книги в рубрике «Задачки» на нашем сайте.

Жемчужины программирования

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

Release it! Проектирование и дизайн ПО для тех, кому не все равно

От серьёзных и фундаментальных принципов построения кода перейдём непосредственно к практической части создания ПО, а именно юзабилити, производительности, масштабированию, администрированию и далее по списку. Здесь вас ждут реальные примеры из жизни автора, несколько типовых кодов на Java (при этом сам язык никакой роли не играет) и профессиональные советы, как общего плана, так и вполне конкретные по созданию кода.

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

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

Мифический человеко-месяц

Эта книга в США входит в список must-read любого разработчика ПО. Написана она была в далёком 1975 году, но описанные этапы, проблемы и советы по разработке ПО актуальны и по сей день. Вряд ли она будет полезна для человека, который уже несколько лет варится в профессии и на личном опыте знает об этом процессе, а вот студентам и новичкам в IT — прочитать действительно следует.

Не заставляйте меня думать

Если «Мифический человеко-месяц» — книга для разработчиков, то это своего рода библия для работников веб-индустрии. Как повысить производительность и привлекательность веб-сайта, советы для новичков, ветеранов и руководителей – всё это можно подчеркнуть из немного ироничной и крайне полезной книги Стива Круга.

Комментировать
4 просмотров
Комментариев нет, будьте первым кто его оставит

Это интересно
Adblock detector