Книги онлайн и без регистрации » Разная литература » Язык программирования C#9 и платформа .NET5 - Эндрю Троелсен

Язык программирования C#9 и платформа .NET5 - Эндрю Троелсен

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 2 3 4 5 6 7 8 9 10 ... 407
Перейти на страницу:
class="a">Резюме

Часть V

 Глава 16

  Определение специальных пространств имен

   Разрешение конфликтов имен с помощью полностью заданных имен

   Разрешение конфликтов имен с помощью псевдонимов

   Создание вложенных пространств имен

   Изменение стандартного пространства имен в Visual Studio

  Роль сборок .NET Core

   Сборки содействуют многократному использованию кода

   Сборки устанавливают границы типов

   Сборки являются единицами, поддерживающими версии

   Сборки являются самоописательными

  Формат сборки .NET Core

   Установка инструментов профилирования C++

   Заголовок файла операционной системы (Windows)

   Заголовок файла CLR

   Код CIL, метаданные типов и манифест сборки

   Дополнительные ресурсы сборки

  Отличия между библиотеками классов и консольными приложениями

  Отличия между библиотеками классов .NET Standard и .NET Core

  Конфигурирование приложений

  Построение и потребление библиотеки классов .NET Core

   Исследование манифеста

   Исследование кода CIL

   Исследование метаданных типов

   Построение клиентского приложения C#

   Построение клиентского приложения Visual Basic

   Межъязыковое наследование в действии

   Открытие доступа к внутренним типам для других сборок

    Использование атрибута assembly

    Использование файла проекта

  NuGet и .NET Core

   Пакетирование сборок с помощью NuGet

   Ссылка на пакеты NuGet

  Опубликование консольных приложений (обновление в версии .NET 5)

   Опубликование приложений, зависящих от инфраструктуры

   Опубликование автономных приложений

    Опубликование автономных приложений в виде единственного файла

  Определение местонахождения сборок исполняющей средой .NET Core

  Резюме

 Глава 17

  Потребность в метаданных типов

   Просмотр (частичных) метаданных для перечисления EngineStateEnum

   Просмотр (частичных) метаданных для типа Car

   Исследование блока TypeRef

   Документирование определяемой сборки

   Документирование ссылаемых сборок

   Документирование строковых литералов

  Понятие рефлексии

   Класс System.Туре

   Получение информации о типе с помощью System.Object.GetType()

   Получение информации о типе с помощью typeof()

   Получение информации о типе с помощью System.Туре.GetType()

  Построение специального средства для просмотра метаданных

   Рефлексия методов

   Рефлексия полей и свойств

   Рефлексия реализованных интерфейсов

   Отображение разнообразных дополнительных деталей

   Добавление операторов верхнего уровня

   Рефлексия статических типов

   Рефлексия обобщенных типов

   Рефлексия параметров и возвращаемых значений методов

   Динамическая загрузка сборок

  Рефлексия сборок инфраструктуры

  Понятие позднего связывания

   Класс System.Activato

   Вызов методов без параметров

   Вызов методов с параметрами

  Роль атрибутов .NET

   Потребители атрибутов

   Применение атрибутов в C#

   Сокращенная система обозначения атрибутов C#

   Указание параметров конструктора для атрибутов

   Атрибут [Obsolete] в действии

  Построение специальных атрибутов

   Применение специальных атрибутов

   Синтаксис именованных свойств

   Ограничение использования атрибутов

  Атрибуты уровня сборки

   Использование файла проекта для атрибутов сборки

  Рефлексия атрибутов с использованием раннего связывания

  Рефлексия атрибутов с использованием позднего связывания

  Практическое использование рефлексии позднего связывания и специальных атрибутов

  Построение расширяемого приложения

   Построение мультипроектного решения ExtendableApp

    Создание решения и проектов с помощью интерфейса командной строки

     Добавление событий PostBuild в файлы проектов

    Создание решения и проектов с помощью Visual Studio

    Установка зависимостей проектов при компиляции

     Добавление событий PostBuild

   Построение сборки CommonSnappableTypes.dll

   Построение оснастки на C#

   Построение оснастки на Visual Basic

   Добавление кода для ExtendableApp

  Резюме

 Глава 18

  Роль ключевого слова dynamic языка C#

   Вызов членов на динамически объявленных данных

   Область использования ключевого слова dynamic

   Ограничения ключевого слова dynamic

   Практическое использование ключевого слова dynamic

  Роль исполняющей среды динамического языка

   Роль деревьев выражений

   Динамический поиск в деревьях выражений во время выполнения

  Упрощение вызовов с поздним связыванием посредством динамических типов

   Использование ключевого слова dynamic для передачи аргументов

  Упрощение взаимодействия с СОМ посредством динамических данных (только Windows)

   Роль основных сборок взаимодействия

   Встраивание метаданных взаимодействия

   Общие сложности взаимодействия с СОМ

  Взаимодействие с СОМ с использованием динамических данных C#

  Резюме

 Глава 19

  Причины для изучения грамматики языка CIL

  Директивы, атрибуты и коды операций CIL

   Роль директив CIL

   Роль атрибутов CIL

   Роль кодов операций СIL

   Разница между кодами операций и их мнемоническими эквивалентами в СIL

  Заталкивание и выталкивание: основанная на стеке природа CIL

  Возвратное проектирование

   Роль меток в коде CIL

   Взаимодействие c CIL: модификация файла *.il

   Компиляция кода CIL

  Директивы и атрибуты CIL

   Указание ссылок на внешние сборки в CIL

   Определение текущей сборки в CIL

   Определение пространств имен в CIL

   Определение типов классов в CIL

   Определение и реализация интерфейсов в CIL

   Определение структур в CIL

   Определение перечислений в CIL

   Определение обобщений в CIL

  Компиляция файла CILTypes.il

  Соответствия между типами данных в библиотеке базовых классов .NET Core, C# и CIL

   Определение членов типов в CIL

   Определение полей данных в CIL

   Определение конструкторов типа в CIL

   Определение свойств в CIL

   Определение параметров членов

  Исследование кодов операций CIL

   Директива .maxstack

   Объявление локальных переменных в CIL

   Отображение параметров на локальные переменные в CIL

   Скрытая ссылка this

   Представление итерационных конструкций в CIL

   Заключительные слова о языке CIL

  Динамические сборки

   Исследование пространства имен System.Reflection.Emit

   Роль типа System.Reflection.Emit.ILGenerator

   Выпуск динамической сборки

   Выпуск сборки и набора модулей

   Роль типа ModuleBuilder

   Выпуск типа HelloClass и строковой переменной-члена

1 2 3 4 5 6 7 8 9 10 ... 407
Перейти на страницу:

Комментарии
Минимальная длина комментария - 20 знаков. В коментария нецензурная лексика и оскорбления ЗАПРЕЩЕНЫ! Уважайте себя и других!
Комментариев еще нет. Хотите быть первым?