CLR via C#. Программирование на платформе Microsoft .NET Framework 4.0 на языке C#
Книга «CLR via C#. Программирование на платформе Microsoft .NET Framework 4.0 на языке C#» – это третье издание классического руководства по программированию для .NET Framework, цель которого – объяснить, как разрабатывать приложения и многократно используемые классы для .NET Framework. Написанная признанным экспертом в области программирования Джеффри Рихтером, много лет являющимся консультантом команды разработчиков .NET Framework компании Microsoft, она научит вас создавать по-настоящему надежные приложения любого вида, в том числе с использованием Silverlight, ASP.NET, WPF и других технологий, которые заложены в Microsoft .NET Framework. Европейская ассоциация по стандартизации информационных и вычислительных систем ЕСМА International приняла в качестве стандарта язык C# и некоторые компоненты среды CLR и библиотеки FCL, поэтому львиная доля приводимых сведений посвящена описанию этих стандартов, что многие найдут для себя полезным при работе с реализациями приложений и библиотек, совместимых со спецификацией ЕСМА. Хотя в издании отдельно не рассматриваются подсистема графического интерфейса пользователя Windows Forms, система для построения клиентских приложений Windows Presentation Foundation, платформа Silverlight, XML веб-сервисы, веб-формы и другие компоненты Microsoft .NET Framework, технологии, описанные в ней, применимы ко всем этим видам приложений.
Структура книги «CLR via C#. Программирование на платформе Microsoft .NET Framework 4.0 на языке C#»
I. Основы CLR
- Компиляция исходного кода в управляемые модули
- Объединение управляемых модулей в сборку
- Загрузка CLR
- Исполнение кода сборки
- Задачи развертывания в .NET Framework
- Компоновка типов в модуль
- Несколько слов о метаданных
- Объединение модулей для создания сборки
- Ресурсы со сведениями о версии сборки
- Региональные стандарты
- Развертывание простых приложений (закрытое развертывание сборок)
- Простое средство администрирования (конфигурационный файл)
- Два вида сборок – два вида развертывания
- Назначение сборке строгого имени
- Глобальный кэш сборок
- Компоновка сборки, ссылающейся на сборку со строгим именем
- Устойчивость сборок со строгими именами к несанкционированной модификации
- Отложенное подписание
- Закрытое развертывание сборок со строгими именами
- Как исполняющая среда разрешает ссылки на типы
- Дополнительные административные средства (конфигурационные файлы)
II. Проектирование типов
- Все типы – производные от System.Object
- Приведение типов
- Пространства имен и сборки
- Как разные компоненты взаимодействуют во время выполнения
- Примитивные типы в языках программирования
- Ссылочные и значимые типы
- Упаковка и распаковка значимых типов
- Хэш-коды объектов
- Примитивный тип данных dynamic
- Члены типа
- Видимость типа
- Доступ к членам
- Статические классы
- Частичные классы, структуры и интерфейсы
- Компоненты, полиморфизм и версии
- Константы
- Поля
- Конструкторы экземпляров и классы (ссылочные типы)
- Конструкторы экземпляров и структуры (значимые типы)
- Конструкторы типов
- Методы перегруженных операторов
- Методы операторов преобразования
- Методы расширения
- Частичные методы
- Необязательные и именованные параметры
- Неявно типизированные локальные переменные
- Передача параметров в метод по ссылке
- Передача в метод переменного количества аргументов
- Типы параметров и возвращаемых значений
- Константность
- Свойства без параметров
- Свойства с параметрами
- Производительность при вызове методов-аксессоров свойств
- Доступность аксессоров свойств
- Обобщенные методы-аксессоры свойств
- Разработка типа, поддерживающего событие
- Как реализуются события
- Создание типа, отслеживающего событие
- Явное управление регистрацией событий
- Обобщения в библиотеке FCL
- Библиотека Power Collections производства Wintellect
- Инфраструктура обобщений
- Обобщенные интерфейсы
- Обобщенные делегаты
- Обобщенные методы
- Обобщения и другие члены
- Верификация и ограничения
- Наследование в классах и интерфейсах
- Определение интерфейсов
- Наследование интерфейсов
- Подробнее о вызовах интерфейсных методов
- Явные и неявные реализации интерфейсных методов (что происходит за кулисами)
- Обобщенные интерфейсы
- Обобщения и ограничения интерфейса
- Реализация нескольких интерфейсов с одинаковыми сигнатурами и именами методов
- Совершенствование контроля типов за счет явной реализации интерфейсных методов
- Опасности явной реализации интерфейсных методов
- Дилемма разработчика: базовый класс или интерфейс
III. Основные типы данных
- Символы
- Тип System.String
- Эффективное создание строк
- Получение строкового представления объекта
- Получение объекта посредством разбора строки
- Кодировки: преобразования между символами и байтами
- Защищенные строки
- Перечислимые типы
- Битовые флаги
- Добавление методов к перечислимым типам
- Инициализация элементов массива
- Приведение типов в массивах
- Базовый класс System.Array
- Реализация интерфейсов IEnumerable, ICollection и IList
- Передача и возврат массивов
- Массивы с ненулевой нижней границей
- Производительность доступа к массиву
- Небезопасный доступ к массивам и массивы фиксированного размера
- Знакомство с делегатами
- Обратный вызов статических методов
- Обратный вызов экземплярных методов
- Раскрытие тайны делегатов
- Обратный вызов нескольких методов (цепочки делегатов)
- Обобщенные делегаты
- Упрощенный синтаксис для работы с делегатами
- Делегаты и отражение
- Сфера применения настраиваемых атрибутов
- Определение класса атрибутов
- Конструктор атрибута и типы данных полей и свойств
- Выявление настраиваемых атрибутов
- Сравнение экземпляров атрибута
- Выявление настраиваемых атрибутов без создания производных от класса Attribute объектов
- Условные атрибуты
- Поддержка в C# null-совместимых значимых типов
- Оператор объединения null-совместимых значений
- Поддержка в CLR null-совместимых значимых типов
IV. Ключевые механизмы
- Определение исключения
- Механика обработки исключений
- Класс System.Exception
- Классы исключений, определенные в FCL
- Вбрасывание исключений
- Создание классов исключений
- Продуктивность вместо надежности
- Приемы работы с исключениями
- Необработанные исключения
- Отладка исключений
- Скорость обработки исключений
- Области ограниченного выполнения
- Контракты кода
- Работа на платформе, поддерживающей сборку мусора
- Алгоритм сборки мусора
- Сборка мусора и отладка
- Освобождение ресурсов при помощи механизма финализации
- Финализация управляемых ресурсов
- Мотивы вызова методов финализации
- Детали механизма финализации
- Эталон освобождения ресурсов: принудительная очистка объекта
- Типы, реализующие эталон освобождения ресурсов
- Инструкция using языка C#
- Интересные аспекты зависимостей
- Мониторинг и контроль времени жизни объектов
- Воскрешение
- Поколения
- Другие возможности сборщика мусора для работы с машинными ресурсами
- Прогнозирование успеха операции, требующей много памяти
- Программное управление сборщиком мусора
- Захват потока
- Режимы сборки мусора
- Большие объекты
- Мониторинг сборки мусора
- Хостинг CLR
- Домены приложений
- Выгрузка доменов
- Мониторинг доменов
- Уведомление о первом управляемом исключении домена
- Использование хостами доменов приложений
- Нетривиальное управление хостингом
- Загрузка сборок
- Использование отражения для создания динамически расширяемых приложений
- Производительность отражения
- Создание приложений с поддержкой подключаемых компонентов
- Нахождение членов типа путем отражения
- Краткое руководство по сериализации/десериализации
- Сериализуемые типы
- Управление сериализацией и десериализацией
- Сериализация экземпляров типа
- Управление сериализованными и десериализованными данными
- Контексты потока ввода-вывода
- Сериализация в другой тип и десериализация в другой объект
- Суррогаты сериализации
- Переопределение сборки и/или типа при десериализации объекта
V. Многопоточность
- Зачем потоки в Windows
- Ресурсоемкость потоков
- Тенденции развития процессоров
- Неравномерный доступ к памяти
- CLR и Windows-потоки
- Потоки для асинхронных вычислительных операций
- Мотивы использования потоков
- Порядок исполнения и приоритеты потоков
- Фоновые и активные потоки
- Пул потоков в CLR
- Простые вычислительные операции
- Контексты исполнения
- Скоординированная отмена
- Задания
- Методы For, ForEach и Invoke класса Parallel
- Встроенный язык параллельных запросов
- Периодические вычислительные операции
- Как пул управляет потоками
- Строки кэша и ложное разделение
- Операции ввода-вывода в Windows
- Модель асинхронного программирования в CLR
- Класс AsyncEnumerator
- Модель асинхронного программирования и исключения
- Потоковые модели приложений
- Асинхронная реализация сервера
- Модель асинхронного программирования и вычислительные операции
- Анализ модели асинхронного программирования
- Приоритеты запросов ввода-вывода
- Преобразование объекта IAsyncResult в объект Task
- Эталон асинхронного программирования на базе событий
- Сводная информация по моделям программирования
- Библиотеки классов и безопасность потоков
- Простейшие конструкции пользовательского режима и режима ядра
- Конструкции пользовательского режима
- Конструкции режима ядра
- Простое гибридное запирание
- Зацикливание, владение потоком и рекурсия
- Различные гибридные конструкции
- Запирание с двойной проверкой
- Эталон условной переменной
- Сокращение времени запирания при помощи коллекций
- Классы коллекций для параллельной обработки потоков
В книге «CLR via C#. Программирование на платформе Microsoft .NET Framework 4.0 на языке C#» используются системы Microsoft Visual Studio 2010, .NET Framework 4.0 и компилятор C# версии 4.0. Компания Microsoft старается обеспечивать максимальную обратную совместимость разрабатываемых программных продуктов, поэтому многое из того, что вы узнаете, будет применимо и к ранним версиям .NET Framework. Все примеры написаны на языке C#, но так как в среде CLR можно использовать различные языки программирования, приводимый код может быть полезен также и тем, кто пишет на других языках программирования.
Формат: PDF + Примеры кода
Качество: eBook
Страниц: 928
Купить книгу «CLR via C#. Программирование на платформе Microsoft .NET Framework 4.0 на языке C#»
Интернет-магазин OZON.RU: CLR via C#. Программирование на платформе Microsoft .NET Framework 4.0 на языке C# / Интернет-магазин OZON.RU / Описание товара / CLR via C#. Программирование на платформе Microsoft .NET Framework 4.0 на языке C# / Интернет-магазин OZON.RU / Оформить заказ
Скачать бесплатно книгу «CLR via C#. Программирование на платформе Microsoft .NET Framework 4.0 на языке C#»
- Архив CLR-CS.NetFx4.rar 11.8 Мб: CLR via C#. Программирование на платформе Microsoft .NET Framework 4.0 на языке C# / Depositfiles.com / Архив CLR-CS.NetFx4.rar