CLR via C#. Программирование на платформе Microsoft .NET Framework 4.0 на языке C#

Джеффри Рихтер

Эта книга, выходящая в третьем издании и уже ставшая классическим учебником по программированию, подробно описывает внутреннее устройство и функционирование общеязыковой исполняющей среды (CLR) Microsoft .NET Framework версии 4.0. Написанная признанным экспертом в области программирования Джеффри Рихтером, много лет являющимся консультантом команды разработчиков .NET Framework компании Microsoft, книга научит вас создавать по-настоящему надежные приложения любого вида, в том числе с использованием Microsoft Silverlight, ASP.NET, Windows Presentation Foundation и т.д.

Третье издание полностью обновлено в соответствии со спецификацией платформы .NET Framework 4.0 и принципами многоядерного программирования.

Издательство: Питер, 3-е издание, 2012 г.

ISBN 978-5-459-00297-3,978-0735627048

Количество страниц: 928.

Содержание книги «CLR via C#. Программирование на платформе Microsoft .NET Framework 4.0 на языке C#»:

  • 12 Предисловие
  • 14 Введение
    • 15 Для кого эта книга
    • 16 Посвящение
    • 16 Благодарности
    • 17 Поддержка
    • 17 Мы хотим вас услышать
  • 19 Часть I. Основы CLR
  • 20 Глава 1. Модель выполнения кода в среде CLR
    • 20 Компиляция исходного кода в управляемые модули
    • 24 Объединение управляемых модулей в сборку
    • 25 Загрузка CLR
    • 29 Исполнение кода сборки
  • 34 Глава 2. Компоновка, упаковка, развертывание и администрирование приложений и типов
    • 34 Задачи развертывания в .NET Framework
    • 36 Компоновка типов в модуль
    • 40 Несколько слов о метаданных
    • 47 Объединение модулей для создания сборки
    • 58 Ресурсы со сведениями о версии сборки
    • 63 Региональные стандарты
    • 65 Развертывание простых приложений (закрытое развертывание сборок)
    • 67 Простое средство администрирования (конфигурационный файл)
  • 71 Глава 3. Совместно используемые сборки и сборки со строгим именем
    • 72 Два вида сборок — два вида развертывания
    • 74 Назначение сборке строгого имени
    • 79 Глобальный кэш сборок
    • 82 Компоновка сборки, ссылающейся на сборку со строгим именем
    • 83 Устойчивость сборок со строгими именами к несанкционированной модификации
    • 85 Отложенное подписание
    • 88 Закрытое развертывание сборок со строгими именами
    • 89 Как исполняющая среда разрешает ссылки на типы
    • 93 Дополнительные административные средства (конфигурационные файлы)
  • 99 Часть II. Проектирование типов
  • 100 Глава 4. Основы типов
    • 100 Все типы — производные от System.Object
    • 102 Приведение типов
    • 106 Пространства имен и сборки
    • 111 Как разные компоненты взаимодействуют во время выполнения
  • 121 Глава 5. Примитивные, ссылочные и значимые типы
    • 121 Примитивные типы в языках программирования
    • 129 Ссылочные и значимые типы
    • 136 Упаковка и распаковка значимых типов
    • 155 Хэш-коды объектов
    • 158 Примитивный тип данных dynamic
  • 165 Глава 6. Основные сведения о членах и типах
    • 165 Члены типа
    • 168 Видимость типа
    • 170 Доступ к членам
    • 172 Статические классы
    • 174 Частичные классы, структуры и интерфейсы
    • 175 Компоненты, полиморфизм и версии
  • 191 Глава 7. Константы и поля
    • 191 Константы
    • 193 Поля
  • 196 Глава 8. Методы
    • 196 Конструкторы экземпляров и классы (ссылочные типы)
    • 200 Конструкторы экземпляров и структуры (значимые типы)
    • 204 Конструкторы типов
    • 211 Методы перегруженных операторов
    • 215 Методы операторов преобразования
    • 219 Методы расширения
    • 225 Частичные методы
  • 230 Глава 9. Параметры
    • 230 Необязательные и именованные параметры
    • 234 Неявно типизированные локальные переменные
    • 236 Передача параметров в метод по ссылке
    • 242 Передача в метод переменного количества аргументов
    • 245 Типы параметров и возвращаемых значений
    • 247 Константность
  • 248 Глава 10. Свойства
    • 248 Свойства без параметров
    • 264 Свойства с параметрами
    • 270 Производительность при вызове методов-аксессоров свойств
    • 270 Доступность аксессоров свойств
    • 271 Обобщенные методы-аксессоры свойств
  • 272 Глава 11. События
    • 273 Разработка типа, поддерживающего событие
    • 279 Как реализуются события
    • 282 Создание типа, отслеживающего событие
    • 284 Явное управление регистрацией событий
  • 289 Глава 12. Обобщения
    • 294 Обобщения в библиотеке FCL
    • 295 Библиотека Power Collections производства Wintellect
    • 296 Инфраструктура обобщений
    • 303 Обобщенные интерфейсы
    • 304 Обобщенные делегаты
    • 308 Обобщенные методы
    • 311 Обобщения и другие члены
    • 311 Верификация и ограничения
  • 322 Глава 13. Интерфейсы
    • 322 Наследование в классах и интерфейсах
    • 323 Определение интерфейсов
    • 324 Наследование интерфейсов
    • 327 Подробнее о вызовах интерфейсных методов
    • 329 Явные и неявные реализации интерфейсных методов (что происходит за кулисами)
    • 331 Обобщенные интерфейсы
    • 333 Обобщения и ограничения интерфейса
    • 335 Реализация нескольких интерфейсов с одинаковыми сигнатурами и именами методов
    • 336 Совершенствование контроля типов за счет явной реализации интерфейсных методов
    • 338 Опасности явной реализации интерфейсных методов
    • 341 Дилемма разработчика: базовый класс или интерфейс?
  • 343 Часть III. Основные типы данных
  • 344 Глава 14. Символы, строки и обработка текста
    • 344 Символы
    • 347 Тип System.String
    • 364 Эффективное создание строк
    • 368 Получение строкового представления объекта
    • 378 Получение объекта посредством разбора строки
    • 381 Кодировки: преобразования между символами и байтами
    • 389 Защищенные строки
  • 393 Глава 15. Перечислимые типы и битовые флаги
    • 393 Перечислимые типы
    • 399 Битовые флаги
    • 404 Добавление методов к перечислимым типам
  • 406 Глава 16. Массивы
    • 408 Инициализация элементов массива
    • 411 Приведение типов в массивах
    • 413 Базовый класс System.Array
    • 414 Реализация интерфейсов IEnumerable, ICollection и IList
    • 415 Передача и возврат массивов
    • 416 Массивы с ненулевой нижней границей
    • 418 Производительность доступа к массиву
    • 423 Небезопасный доступ к массивам и массивы фиксированного размера
  • 426 Глава 17. Делегаты
    • 426 Знакомство с делегатами
    • 429 Обратный вызов статических методов
    • 430 Обратный вызов экземплярных методов
    • 431 Раскрытие тайны делегатов
    • 436 Обратный вызов нескольких методов (цепочки делегатов)
    • 443 Обобщенные делегаты
    • 445 Упрощенный синтаксис для работы с делегатами
    • 454 Делегаты и отражение
  • 458 Глава 18. Настраиваемые атрибуты
    • 458 Сфера применения настраиваемых атрибутов
    • 462 Определение класса атрибутов
    • 466 Конструктор атрибута и типы данных полей и свойств
    • 467 Выявление настраиваемых атрибутов
    • 472 Сравнение экземпляров атрибута
    • 475 Выявление настраиваемых атрибутов без создания производных от класса Attribute объектов
    • 479 Условные атрибуты
  • 481 Глава 19. Null-совместимые значимые типы
    • 483 Поддержка в C# null-совместимых значимых типов
    • 486 Оператор объединения null-совместимых значений
    • 488 Поддержка в CLR null-совместимых значимых типов
  • 491 Часть IV. Ключевые механизмы
  • 492 Глава 20. Исключения и управление состоянием
    • 492 Определение «исключения»
    • 494 Механика обработки исключений
    • 501 Класс System.Exception
    • 505 Классы исключений, определенные в FCL
    • 508 Генерация исключений
    • 509 Создание классов исключений
    • 512 Продуктивность вместо надежности
    • 521 Приемы работы с исключениями
    • 529 Необработанные исключения
    • 534 Отладка исключений
    • 536 Скорость обработки исключений
    • 539 Области ограниченного выполнения
    • 543 Контракты кода
  • 552 Глава 21. Автоматическое управление памятью (сборка мусора)
    • 552 Работа на платформе, поддерживающей сборку мусора
    • 556 Алгоритм сборки мусора
    • 560 Сборка мусора и отладка
    • 564 Освобождение ресурсов при помощи механизма финализации
    • 571 Финализация управляемых ресурсов
    • 574 Когда вызываются методы финализации
    • 576 Детали механизма финализации
    • 579 Модель освобождения ресурсов: принудительная очистка объекта
    • 584 Типы, реализующие модель освобождения ресурсов
    • 588 Инструкция using языка C#
    • 590 Интересные аспекты зависимостей
    • 592 Мониторинг и контроль времени жизни объектов
    • 605 Воскрешение
    • 607 Поколения
    • 614 Другие возможности сборщика мусора для работы с машинными ресурсами
    • 619 Прогнозирование успеха операции, требующей много памяти
    • 621 Программное управление сборщиком мусора
    • 625 Захват потока
    • 626 Режимы сборки мусора
    • 630 Большие объекты
    • 630 Мониторинг сборки мусора
  • 633 Глава 22. Хостинг CLR и домены приложений
    • 633 Хостинг CLR
    • 636 Домены приложений
    • 652 Выгрузка доменов
    • 653 Мониторинг доменов
    • 655 Уведомление о первом управляемом исключении домена
    • 656 Использование хостами доменов приложений
    • 659 Нетривиальное управление хостингом
  • 665 Глава 23. Загрузка сборок и отражение
    • 665 Загрузка сборок
    • 671 Использование отражения для создания динамически расширяемых приложений
    • 672 Производительность отражения
    • 681 Создание приложений с поддержкой подключаемых компонентов
    • 684 Нахождение членов типа путем отражения
  • 709 Глава 24. Сериализация
    • 710 Краткое руководство по сериализации/десериализации
    • 715 Сериализуемые типы
    • 717 Управление сериализацией и десериализацией
    • 721 Сериализация экземпляров типа
    • 723 Управление сериализованными и десериализованными данными
    • 730 Контексты потока ввода-вывода
    • 732 Сериализация в другой тип и десериализация в другой объект
    • 736 Суррогаты сериализации
    • 740 Переопределение сборки и/или типа при десериализации объекта
  • 743 Часть V. Многопоточность
  • 744 Глава 25. Потоки исполнения
    • 744 Зачем потоки в Windows?
    • 745 Ресурсоемкость потоков
    • 750 Так дальше не пойдет!
    • 752 Тенденции развития процессоров
    • 754 Архитектура NOMA
    • 756 CLR- и Windows-потоки
    • 757 Потоки для асинхронных вычислительных операций
    • 759 Причины использования потоков
    • 762 Порядок исполнения и приоритеты потоков
    • 768 Фоновые и активные потоки
    • 769 Что дальше?
  • 771 Глава 26. Асинхронные вычислительные операции
    • 771 Пул потоков в CLR
    • 773 Простые вычислительные операции
    • 774 Контексты исполнения
    • 776 Скоординированная отмена
    • 781 Задания
    • 796 Методы For, ForEach и Invoke класса Parallel
    • 800 Встроенный язык параллельных запросов
    • 804 Периодические вычислительные операции
    • 807 Как пул управляет потоками
    • 810 Строки кэша и ложное разделение
  • 813 Глава 27. Асинхронные операции ввода-вывода
    • 813 Операции ввода-вывода в Windows
    • 818 Модель асинхронного программирования в CLR
    • 823 Класс AsyncEnumerator
    • 827 Модель асинхронного программирования и исключения
    • 828 Потоковые модели приложений
    • 832 Асинхронная реализация сервера
    • 833 Модель асинхронного программирования и вычислительные операции
    • 835 Анализ модели асинхронного программирования
    • 840 Приоритеты запросов ввода-вывода
    • 843 Преобразование объекта IAsyncResult в объект Task
    • 844 Модель асинхронного программирования на базе событий
    • 850 Сводная информация по моделям программирования
  • 852 Глава 28. Простейшие конструкции синхронизации потоков
    • 854 Библиотеки классов и безопасность потоков
    • 856 Простейшие конструкции пользовательского режима и режима ядра
    • 857 Конструкции пользовательского режима
    • 876 Конструкции режима ядра
  • 889 Глава 29. Гибридные конструкции синхронизации потоков
    • 889 Простое гибридное запирание
    • 891 Зацикливание, владение потоком и рекурсия
    • 894 Различные гибридные конструкции
    • 910 Запирание с двойной проверкой
    • 915 Паттерн условной переменной
    • 918 Сокращение времени запирания при помощи коллекций
    • 923 Классы коллекций для параллельной обработки потоков

Инструкция как скачать книгу Джеффри Рихтер: CLR via C#. Программирование на платформе Microsoft .NET Framework 4.0 на языке C# в форматах DjVu, PDF, DOC или fb2 совершенно бесплатно.
CLR via C#. Программирование на платформе Microsoft .NET Framework 4.0 на языке C#
Рейтинг книги:
1 голос
1050

Поиск книг:




При поиске учитываются только слова, длина которых больше 3-х символов.

Статистика: