В этой книге многоуважаемый эксперт в области .NET Билл Вагнер исследует 50 способов использования в своих целях полной мощи языка C# 6.0 для написания исключительно надежного, эффективного и высокопроизводительного кода. Отражая растущую сложность языка C# и сообщества разработчиков, автор обозначает десятки новых путей написания лучшего кода. В число новых решений настоящего издания входят такие, которые задействуют преимущества обобщений, а также те, что более сконцентрированы на LINQ. Отдельная глава посвящена передовому опыту работы с исключениями. Ясное и ориентированное на практику изложение Вагнера, экспертные советы и реалистичный код делают книгу незаменимой для сотен тысяч разработчиков. Опираясь на свой непревзойденный опыт, автор рассматривает все темы, простирающиеся от управления ресурсами до поддержки многоядерных процессоров, и объясняет, каким образом избежать распространенных ловушек в языке и среде .NET. Вы узнаете, как выбирать наиболее эффективное решение, когда существует множество вариантов, и каким образом писать код, который гораздо легче сопровождать и улучшать. Автор книги показывает, как и почему: отдавать предпочтение неявно типизированным локальным переменным (см. совет 1) заменять вызовы string.Format() интерполированными строками (см. совет 4)выражать обратные вызовы с помощью делегатов (см.совет 7) использовать наилучшим образом управление ресурсами .NET (см. совет 11) определять минимальные и достаточные ограничения для обобщений (см. совет 18) специализировать обобщенные алгоритмы с применением контроля типов во время выполнения (см. совет 19) использовать делегаты для определения ограничений методов на параметрах типов (см. совет 23) дополнять минимальные контракты интерфейсов расширяющими методами (см. совет 27) создавать компонуемые API-интерфейсы для последовательностей (см. совет 31) отвязывать итерации от действий, предикатов и функций (см. совет 32) отдавать предпочтение лямбда-выражениям перед методами (см. совет 38) проводить различие между ранним и отложенным выполнением (см. совет 40) избегать захватывания затратных ресурсов (см. совет 41) применять исключения для сообщения о нарушениях контрактов методов (см. совет 45) задействовать побочные эффекты в фильтрах исключений (см. совет 50) Вы уже успешный программист на C#, а эта книга сделает вас выдающимся программистом.