Подборка хороших книг для программистов
В этом посте мы собрали подборку самых популярных книг для разработчиков. Они являются лучшими для старта изучения той или иной технологии.
60К открытий60К показов
В этом посте мы собрали подборку самых популярных книг для разработчиков. Они затрагивают множество различных тем и являются лучшими для старта изучения той или иной технологии.
Автором этого пособия является Г. Макдоуэлл, основатель CareerCup и бывший сотрудник таких компаний, как Apple, Google и Microsoft. Книга предназначена для качественной подготовки к предстоящему собеседованию на позицию разработчика программного обеспечения.
Она сделана в формате «задача-решение»: почти 200 вопросов и ответов, большинство из которых автор взял из собственного опыта, покрывают всевозможные темы, в том числе алгоритмы, шаблоны проектирования и многое другое. В целом прочтение «Cracking the Coding Interview» точно не будет лишним, и это подтверждает его статус бестселлера.
Многие задачи из этой книги есть в нашем переводе в соответствующей рубрике сайта.
В книге «24 смертных греха компьютерной безопасности» Майкл Ховард и Дэвид Лебланк, эксперты безопасности Microsoft, рассказывают о наиболее распространенных и серьезных ошибках при создании разнообразного ПО, а также соответствующих «дырах».
Рассмотрено большинство языков и платформ программирования, каждая глава посвящена отдельному типу уязвимости — «смертному греху».
Создание качественного и развитого искусственного интеллекта — одна из самых сложных задач, с которыми сталкиваются разработчики игр. Часто от качества ИИ зависит весь коммерческий успех проекта.
В этом пособии Ян Миллингтон, известный в игровой индустрии программист и автор серии книг, делится своим опытом создания и улучшения ИИ в самых разнообразных играх. Книга содержит множество реальных примеров, а также исходные коды популярных коммерческих реализаций алгоритмов ИИ. Большое внимание уделено разработке геймплея с упором на искусственный интеллект, реализации поведения персонажей и особенностям разработки игр-головоломок.
Обновленное третье издание рассказывает обо всех математических концептах, которые должен знать современный разработчик компьютерных игр для создания графики и игровых движков на профессиональном уровне.
Третье издание раскрывает такие темы, как проекции, тени, физика, отрисовка ткани и числовые методы, а весь код полностью соответствует последним спецификациям языка шейдеров.
Самая большая проблема, стоящая перед многими разработчиками игр — завершение разработки их продукта. Часто проекты «выдыхаются», оказываясь перегруженными сложностью и запутанностью их собственного кода. Эта книга призвана решить эту проблему раз и навсегда.
«Game Programming Patterns» — это коллекция шаблонов, делающих код (не только игр) чище, проще для понимания и быстрее. Из нее вы узнаете, как создать надежный цикл игры, как организовывать объекты и их компоненты, как использовать кэш процессора для улучшения производительности и многое другое. Вы погрузитесь в изучение не только того, как работают скриптовые движки и как их оптимизировать, но и того, как классические шаблоны проектирования могут быть использованы в разработке игр.
MySQL — супер-популярная свободная реляционная система управления базами данных, которую использует большинство интернет-сайтов.
С помощью этой книги всего за 7 дней вы сможете освоить MySQL, научиться использовать её скорость и гибкость. Вы научитесь сохранять, модифицировать и обрабатывать данные, подключать к БД свои программы, работать с таблицами, делать бекапы и многое другое.
Если у вас есть идея для «взрывного» Android-приложения, но вы не знаете, как её реализовать, то эта книга — то, что вам нужно. Вы узнаете, как правильно задать структуру своего приложения, создать к нему интерфейс и базу данных, а также как сделать, чтобы оно работало на самых разных смартфонах и планшетах, и многое другое.
По словам авторов, эта книга — как опытный Android-разработчик рядом с тобой. Единственное, что вам нужно для начала — небольшое знание Java.
«97 вещей, которые должен знать каждый программист» — сборник коротких практических советов от ведущих специалистов в области IT, который поможет избежать многих проблем, стоящих на пути программиста.
В этой книге Майкл Физерс предлагает стратегии по эффективной работе с legacy-кодом. Автор долгое время занимался наставничеством и решил поместить в книгу весь свой опыт. Прочитав её, вы узнаете, как читать, исправлять и улучшать такой код. Помимо примеров на Java, C++, C и C# в книге есть 24 способа избавления от зависимостей.
В этой книге говорится о паттернах проектирования и описываются простые и элегантные решения типичных задач, возникающих в объектно-ориентированном проектировании. Паттерны проектирования не появились сразу в готовом виде; многие разработчики, искавшие возможности повысить гибкость и степень пригодности к повторному использованию своих программ, приложили много усилий, чтобы поставленная цель была достигнута. В паттернах проектирования найденные решения отлиты в краткую и легко применимую на практике форму.
Роберт Мартин в своём творении, опираясь на личный опыт и, что даже важнее, конкретные примеры из своей практики, рассказывает о том, как нужно кодить. Принципиальное отличие от книги Макконелла заключается в том, что здесь очень мало статистических обоснований правильности тех или иных действий, только код (занимающий почти треть книги) и рекомендации автора.
Эта книга отлично подойдёт тем, кто сталкивался или ещё только столкнётся с проблемно-ориентированным программированием.
Если вы планируете построить успешную карьеру программиста, то это та книга, которую прочитать вы просто обязаны. Абсолютно неважно, в какой среде вы планируете работать, какой ваш уровень подготовки, новичок вы или уже руководитель — здесь найдётся полезная информация для каждого, кто хоть как-то связан с процессом создания кода. Совершенного кода.
«Язык программирования Си» (также известна как K&R) — книга Брайана Кернигана и Денниса Ритчи, причём последний — один из непосредственных авторов и разработчиков языка Си. Книга стала основой для разработки и популяризации Си, до сих пор имеет спрос и широко используется в качестве «классического» учебника по языку. Она долгое время была единственным справочным руководством и де-факто — стандартом языка.
Кстати, у нас есть неплохая подборка бесплатных книг по Си, советуем взглянуть, если этот язык вам интересен.
Ещё один представитель программистской литературы, где на трёхстах страницах методично описываются основные принципы создания качественного кода и условия, при которых вы будете получать удовольствие от работы, а клиент от результатов. Написана книга приятным языком, поэтому много времени на её освоение не уйдёт.
Практически каждого программиста привела в профессию любовь к созиданию, удовольствие от созерцания, как символы превращаются в программы. Однако есть в этой работе и обратная сторона: высокая конкуренция, сложные отношения с клиентами, коллегами, руководством, финансовая нестабильность. Именно о тёмной стороне работы программиста и о том, как существовать в ладах со всеми этими заботами, рассказывает в своей книге Джон Сонмез.
Эта книга рассматривает создание кода на уровне общих принципов, то есть описываются алгоритмы, объясняется взаимодействие программной среды и машины и, как следствие, предлагаются методы оптимизации будущего кода. Несмотря на довольно общую тематику, в профессиональных кругах эта книга считается учебником, как для новичков, так и для настоящих зубров IT-цеха.
Ещё одна увесистая книга по алгоритмам, впервые изданная в 1990 году в Массачусетском технологическом институте с авторством местных преподавателей. Несмотря на то, что написана она простым и понятным языком, из-за объёма и подачи материала (каждая глава имеет законченный вид) использовать лучше в качестве справочника, периодически обращаясь к нужной информации.
Искусство программирования — монументальный труд Дональда Кнута. Серия книг состоит из 4 томов, каждый из которых охватывает определенные виды алгоритмов. Это классика, которую до сих пор в обязательном порядке проходят в ВУЗах. Материал подан в достаточно сложном формате, но и цель у книг особенная — рассказать наиболее полно о существующих алгоритмах.
Не обращайте внимание на российское название — в оригинале это «Cracking the Coding Interview: 189 Programming Interview Questions and Solution», то есть просто 189 наиболее часто задаваемых вопросов на собеседованиях в крупных IT-компаниях. Ответы, разумеется, прилагаются. Помогает не только потренировать собственный мозг, но и получить представление об образе мышления в Amazon, Apple, Facebook, Google и Microsoft.
Кстати, мы часто даем разборы задач из этой книги в рубрике «Задачки» на нашем сайте.
Очень хорошее чтиво для людей, начинающих свой путь в программировании. Здесь автор доступным языком описывает основные этапы написания качественного кода: от идеи до финального тестирования.
От серьёзных и фундаментальных принципов построения кода перейдём непосредственно к практической части создания ПО, а именно юзабилити, производительности, масштабированию, администрированию и далее по списку. Здесь вас ждут реальные примеры из жизни автора, несколько типовых кодов на Java (при этом сам язык никакой роли не играет) и профессиональные советы, как общего плана, так и вполне конкретные по созданию кода.
Если вам когда-нибудь хотелось подсмотреть за работой других программистов высокого полёта, то это книга придётся вам по душе. Пятнадцать человек в формате живого общения расскажут об отношении к профессии, о будущем программирования и дадут конкретные практические советы.
Эта книга в США входит в список must-read любого разработчика ПО. Написана она была в далёком 1975 году, но описанные этапы, проблемы и советы по разработке ПО актуальны и по сей день. Вряд ли она будет полезна для человека, который уже несколько лет варится в профессии и на личном опыте знает об этом процессе, а вот студентам и новичкам в IT — прочитать действительно следует.
Если «Мифический человеко-месяц» — книга для разработчиков, то это своего рода библия для работников веб-индустрии. Как повысить производительность и привлекательность веб-сайта, советы для новичков, ветеранов и руководителей – всё это можно подчеркнуть из немного ироничной и крайне полезной книги Стива Круга.
60К открытий60К показов