Топ-10 книг для C#-разработчиков

Книги для C#-разработчиков

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

C# in Depth

Автор — Джон Скит.

Как эту книгу ни похвали, все равно будет мало. Джон Скит известен своим активным участием в сообществе StackOverflow. Его труд «C# in Depth» впервые был опубликован в 2008 году, а в настоящее время вы можете купить уже четвертое издание.

Джон знаменит своим умением объяснять сложные материи очень простым и понятным языком. Могу сказать, что большей частью своих знаний о работе C# и о том, как использовать различные особенности этого языка, я обязан именно этой книге.

Книга «C# для профессионалов» структурирована таким образом, чтобы осветить все доступные функции C# хронологически — в порядке их появления в версиях C#, начиная со 2-й и заканчивая 7-й. Таким образом читатель, независимо от того, когда он вошел в мир .NET, может проследить развитие языка.

Лично у меня книга во втором издании. Я прочитал ее дважды от корки до корки и извлек много пользы. Так что я рекомендую эту книгу каждому серьезному C#-разработчику, желающему поглубже погрузиться в изучение этого языки и платформы .NET.

Чистый код

Автор — Роберт Сесил Мартин. Название книги в оригинале — «Clean Code».

Эта книга не о C#. Она предназначена для разработчиков вообще и ориентирована на качество кода. Собственно, данная книга уже стала классикой, впервые она вышла еще в 2008 году. Свой экземпляр я купил в 2012 году и к настоящему времени прочел его уже многократно.

Роберт С. Мартин освещает базовые и продвинутые способы улучшения качества кода ваших программ. Некоторые из принципов, упоминаемых в книге, уже внедрены в самых популярных IDE, другие в среде опытных разработчиков считаются просто проявлением здравого смысла.

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

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

The Pragmatic Programmer

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

Эта книга впервые была выпущена в 1999 году. И это одна из моих любимых книг прошлого века, содержание которых до сих пор вполне применимо в разработке.

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

«Программист-прагматик» это книга более высокого уровня, чем «Чистый код». Она освещает все темы, касающиеся разработки ПО, включая разработку спецификаций, отношения с заказчиками, управление командой, инструменты разработчика и процедуру тестирования.

Идеальный программист

Автор — Роберт Сесил Мартин. Название книги в оригинале — «The Clean Coder».

Книга «Идеальный программист» была выпущена как продолжение супер-популярной книги «Чистый код». Первая книга главным образом освещает качество кода и такие вещи как нейминг и структурирование кода, а вторая должна служить в качестве руководства для профессионального программиста.

Вышла эта книга в 2011 году. На момент написания этой статьи она входит в топ-10 книг в категории разработки ПО на Amazon.

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

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

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

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

Чистая архитектура

Автор — Роберт Сесил Мартин. Название книги в оригинале — «Clean Architecture».

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

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

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

В книге «Чистая архитектура» вы найдете определения дизайна ПО и архитектуры ПО, а также пояснение различий между ними. Далее, там описываются различные парадигмы структурного, объектно-ориентированного и функционального программирования.

Принципы дизайна, описанные в книге, включают все принципы SOLID.

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

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

В целом, я советую читать книги Мартина именно в таком порядке, в каком они здесь изложены: сначала «Чистый код», потом «Идеальный программист», а уж затем «Чистая архитектура».

От редакции Techrocks. Также рекомендуем обратить внимание на книгу «Принципы, паттерны и методики гибкой разработки на языке C#» (авторы — Роберт Мартин и Мика Мартин).

C# Smorgasbord

Книга для C#-разработчиков

Автор — Филип Экберг.

«C# Smorgasbord» это первая книга Филипа Экберга.

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

В книге есть главы, посвященные parallel extensions, написанию модульных тестов и применению их для ускорения разработки. Также есть отличная глава об асинхронном программировании с async и await, а также о динамическом программировании.

Во второй части разбирается использование Reflection. Также есть базовая информация о платформе Roslyn.

Книга была выпущена довольно давно, и часть ее контента уже устарела. Но я все равно считаю, что она полезна для C#-разработчиков, стремящихся получше разобраться в указанных темах.

Паттерны проектирования

Авторы — Эрик Фримен, Элизабет Робсон. Также в создании книги принимали участие Кэти Сьерра и Берт Бейтс. Название в оригинале — «Design Patterns» (серия «Head First»).

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

Должен признаться, что мне эта книга не нравится. Мне не по вкусу ни стиль ее написания, ни иллюстрации, ни примеры.

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

Эту книгу я купил еще во время стажировки и думаю, что это единственная книга (из тех, что я тогда покупал), стоившая заплаченных за нее денег.

Примеры кода в книге «Паттерны проектирования» написаны на Java, но их можно с легкостью применить ко всем объектно-ориентированным языкам, включая C#.

Если вы хотите узнать больше о паттернах проектирования или узнать что-то новое, например, познакомиться с каким-то необычным паттерном, я настоятельно рекомендую приобрести книгу Фримена и Робсон.

От редакции Techrocks. Возможно, вас также заинтересует книга «Паттерны проектирования для C# и платформы .NET Core» (авторы — Гаурав Арораа, Джеффри Чилберто).

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

Автор — Джон Сонмез. Название книги в оригинале — «Soft Skills: The Software Developer’s Life Manual».

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

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

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

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

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

Книга для C#-разработчиков

Автор — Ошероув Рой. Название книги в оригинале — «The Art of Unit Testing».

Рой Ошероув обновил свою популярную книгу и опубликовал ее второе издание в конце 2013 года.

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

Также есть отдельные главы, посвященные использованию тестовых фреймворков, таких как Moq, FakeItEasy и Typemock Isolator. Книга включает много примеров кода, написанных на C#, что делает ее очень понятной и подходящей для начинающих.

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

Советую эту книгу всем, кто хочет побольше узнать о TDD (разработке через тестирование) и автоматизированном тестировании, и, конечно же, всем C#-разработчикам.

Эффективное программирование на C#. 50 способов улучшения кода

Книга для C#-разработчиков

Автор — Билл Вагнер. Название книги в оригинале — «Effective C#: 50 Specific Ways to Improve Your C#».

В третьем издании своей книги Вагнер освещает широкий спектр тем как начального, так и продвинутого уровня, а также дает много советов.

Во вступлении к книге Вагнер говорит, что его целью было дать 50 рекомендаций, которые помогут профессиональным разработчикам использовать C# более эффективно.

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

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

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

Очень рекомендую эту книгу каждому C#-разработчику.

От редакции Techrocks. А мы рекомендуем обратить внимание на другую книгу того же автора — «More Effective C#». В ней рассматривается C# 7.0.

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

[customscript]techrocks_custom_after_post_html[/customscript]

[customscript]techrocks_custom_script[/customscript]

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Прокрутить вверх