Architecture Net

Architecture Net

Краткое содержание
Что такое Microsoft .NET?
Стеклянный дом и тонкие клиенты
Устойчивая Windows
Новая платформа программирования

Каркас NET Framework
Общеязыковая среда выполнения CLR (Common Language Runtime)
Разработка приложений на разных языках
Инструментальные средства разработки
Важность инструментальных средств разработки


Роль языка XML
Факторы, определяющие успех Web-служб
Microsoft и Web

Резюме
Приложения в эпоху Internet
Web-службы
ASP.NET
Открытые стандарты и возможность взаимодействия (функциональная совместимость)
Протоколы обмена
Windows на рабочем столе
Проблемы с Windows

Architecture Net

Глава 2. Основы технологии .NET
ILDASM — дисассемблер промежуточного языка Microsoft
Возможность взаимодействия языков, или функциональная совместимость
Управляемый код
Сборки

JIТ-компиляция, или оперативная компиляция
Производительность
Резюме
Проблемы, связанные с разработкой Windows-приложений
Приложения будущего
Обзор платформы .NET
Волшебство метаданных
Библиотека классов .NET Framework

Программирование на основе интерфейсов
Объектом является все
Общая система типов

Architecture Net

Глава 3. Программирование на управляемом C++
Программа Hotel (Гостиница)
Типы данных C++ и общеязыковая среда выполнения CLR
Типы данных C++ и .NET Framework

Программирование на C++ для платформы .NET
Управляемые и неуправляемые типы
Управление сборкой мусора
Типовая безопасность
Типы значений
Абстрактные типы
Место C++ в мире .NET

Интерфейсы
Упаковка и распаковка примитивных типов данных
Делегаты
События
Свойства
Закрепление управляемых объектов

Конечные классы
Управляемое приведение типов
Определение ключевых слов в качестве идентификаторов
Обработка исключений
Использование расширений управляемого C++
Атрибуты C++

Резюме
Ваша первая программа на управляемом C++.NET
Программа HelloWorld (Привет, мир)
Директива #using и оператор using
Стандартный ввод-вывод
Класс System:: string (Система::Строка)

Класс System::Array (Система::МAССИВ)

Architecture Net

Объектно-ориентированное программирование на управляемом C++

Наследование в управляемом C++
Основные принципы наследования
Реализация примера "Бюро путешествий Acme"
Запуск программы примера
Класс HotelReservation
Класс HotelBroker
Класс Customers (Клиенты)
Пространство имен

Класс TestHotel
Резюме
Обзор основных понятий объектно-ориентированного программирования
Объекты
Классы
Полиморфизм
Проект: "Бюро путешествий Acme"
Проектирование абстракций

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

Architecture Net

Управляемый C++ в .NET Framework
Основные сведения об интерфейсах
Программирование с использованием интерфейсов

Динамическое использование интерфейсов
Программа Бюро путешествий Acme (Acme Travel Agency)
Явное определение интерфейсов

Родовые интерфейсы в .NET
Интерфейсы коллекций
Копирование объектов и интерфейс icioneable
Сравнение объектов
Что такое каркасы приложений
Объект системы: System::Object
Делегаты
Объявление делегата
Определение метода
Создание экземпляра делегата
Вызов делегата

Объединение экземпляров делегатов
Полный пример
Моделирование фондовой биржи
События
События в управляемом C++ и .NET
Общедоступные методы экземпляров класса Object (Объект)
Описание сервера
Описание клиента

Комната для дискуссий: пример чат-программы
Резюме
Защищенные методы экземпляров класса object (Объект)
Родовые интерфейсы и обычное поведение
Использование методов класса object (Объект) в классе Customer (Клиент)
Коллекции
Пример класса ArrayList (Список массивов)

Интерфейсы

Architecture Net

Краткое содержание
Создание графических пользовательских интерфейсов
Шаг 2М: Несколько обработчиков для события
Шаг 3: События MouseDown (Кнопка мыши нажата) и Keypress (Нажатие клавиши)
Меню
Шаг 4: Меню для выхода из программы
Код меню
Код события Menu (Меню)
Управляющие элементы

Шаг 5: Использование управляющего элемента TextBox (Поле)
Visual Studio.NET и формы
Демонстрация Windows Forms (Формы Windows)
Иерархия Windows Forms (Формы Windows)
Окно конструктора (Design window) и окно кода (Code window)
Добавление события
Код обработчика события
Использование управляющего элемента Menu (Меню)

Закрытие формы (Выход из формы)
Диалоговые окна
Документация по диалогам .NET
Демонстрация диалогового окна
Управляющий элемент ListBox (Список элементов)
Начальная загрузка списка элементов

Создание простых форм с помощью комплекса инструментальных средств разработки программ .NET SDK
Выбор элемента в списке элементов ListBox
Пример бюро путешествий Acme (Acme Travel Agency) — шаг 3
Резюме
Шаг 0: Создание простой формы
Шаг 1: Отображение текста на форме
Обработка событий в Windows Forms (Формы Windows)
Документация по обработке событий

Событие MouseDown (Кнопка мыши нажата)
Шаг 2: Обработка событий мыши

Architecture Net

Сборки и развертывание
Подписание в цифровой форме после компиляции
Конфигурация сборки
Проводимая по умолчанию политика управления версиями
Файлы конфигурации политики управления версиями
Обнаружение физического местоположения сборки
Многомодульные, или мультимодульные сборки

Инсталляция примера программной системы
Установка и развертывание проектов
CAB Project (Проект CAB)
Проект установки (Setup Project)
Сборки
Merge Module Project (Проект модуля слияния)

Развертывание по сети
Резюме
Содержимое сборки
Частное развертывание сборки

Общедоступное развертывание сборки
Строгие имена
Цифровые сигнатуры (подписи)
Цифровая подпись и развертывание общедоступной сборки
Управление версиями общедоступных компонентов

Architecture Net

Классы каркаса .NET Framework

Сериализация, или преобразование в последовательную форму
Объекты сериализации
ISerializable
Модель приложений .NET
Потоки

Изоляция потоков
Синхронизация коллекций
Контекст
Заместители и заглушки

ContextBoundObject
Метаданные и отражение
Изоляция приложений
Прикладная область
Прикладные области и сборки
Класс AppDomain (Прикладная область)
События AppDomain (Прикладная область)
Пример AppDomain (Прикладная область)

Маршализация, прикладные области и контексты
Асинхронное программирование
Асинхронные шаблоны проектирования
LAsyncResult
Класс туре (Тип)
Использование делегатов в асинхронном программировании

Организация поточной обработки с параметрами
Удаленный доступ
Краткий обзор удаленного доступа
Удаленные объекты
Активация
Пример удаленного объекта
Пример программы, реализующей удаленный доступ
Метаданные и удаленный доступ
Конфигурационные файлы удаленного доступа

Динамическое связывание
Программируемые атрибуты
Использование самостоятельно созданного атрибута
Определение класса атрибута
Определение базового класса
Сборка мусора
Уничтожение объектов
Неуправляемые ресурсы и освобождение ранее выделенной области памяти

Поколения
Завершение и раскручивание стека
Управление сборкой мусора с помощью класса сборщика мусора GC
Ввод и вывод в .NЕТ
Программа-пример
Резюме

Потоковые классы
Примитивные типы данных и потоки
TextReader И TextWriter
Обработка файлов

Architecture Net

Программирование в ADO.NET
Коллекция параметров
Классы SqlDataAdapter и DataSet (Набор данных)

Отсоединенный режим
Коллекции объектов DataSet (Набор данных)
Основные сведения о наборах данных
Обновление источника данных
Автоматически генерируемые свойства команд
Транзакции и обновление базы данных
Объект DataSet (Набор данных) и сравнение пессимистического блокирования с оптимистическим

Использование наборов данных
Источники данных
Множественные таблицы в объекте DataSet (Набор данных)
Создание таблицы без обращения к источнику данных
Ограничения и связи
Получение информации о схеме размещения данных в объекте DataTabie (Таблица данных)

Изменение объекта DataRow
Пример приложения Acme Travel Agency (Туристическое агентство Acme)
Доступ к данным XML
Схема и данные XML
XmlDataDocument
DataSet (Набор данных) и XML
Проводник Visual Studio.NET по серверу: Server Explorer

База данных AirlineBrokers
Создание документа XML из объекта DataSet (Набор данных)
Резюме
Установление соединения

Устройства считывания данных
a href="glava-09-rabota-s-bazoj-dannyh-v-soedinennom-rezhime.htm" >Работа с базой данных в соединенном режиме
Выполнение операторов SQL
DataReader
Множественное результирующее множество

Architecture Net

Краткое содержание
ASP.NET и Web-формы
Модель событий Web-форм
Обработка страницы

Трассировка
Программирование запросов и ответов
Класс HttpRequest
Класс HttpResponse

Изучение конкретного примера
Web-страница с информацией о гостиницах
Привязка данных
Приложения ASP.NET

Что такое ASP.NET?
Сеансы
Global.asax
Состояния в приложениях ASP.NET
Статические элементы данных
Объект Application (Приложение)
Объект Session (Сеанс)
Конфигурация ASP.NET
Файлы конфигурации

Дополнительная информация об ASP.NET
Резюме
Основные принципы создания Web-приложения
Программа на С#: Echo (Эхо)
Возможности ASP.NET
Архитектура Web-форм
Класс Page (Страница)

Время существования страниц с Web-формами
Состояние представления (вида)

Architecture Net

Web-службы
Просмотр Web-службы Add (Сложение) при помощи броузера
Отладка Web-службы Add (Сложение)
Клиент для Web-службы Add (Сложение)
Язык описания Web-служб (Web Services Description Language — WSDL)

Классы-заместители
Клиент web-службы, использующий
Особенности форматирования данных согласно спецификации SOAP

Класс WebService
Использование шаблона Managed C++ web Service (Web-службы на управляемом C++)
Код, генерируемый шаблоном Managed C++ Web Service (Web-служба на управляемом C++)
Протоколы
Арифметическая Служба Сети, или Web-служба Arithmetic (Арифметика)
Использование внутренних объектов

Web-служба Hotel Broker (Брокер гостиницы)
Web-служба Customer (Клиент)
Соображения по поводу проектирования
Резюме
Язык XML
Пространства имен XML (XML Namespeces)
Схема XML (XML schema)

Протокол SOAP
Язык описания Web-служб WSDL
Архитектура Web-службы
Пример Web-службы Add (Сложение)

Architecture Net

Web-узлы и Web-службы, работающие на основе ATL Server
Добавление в сервер еще одного обработчика
Добавление на сервер обработки управляющей структуры if-else-endif
Передача параметров серверному обработчику

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

Службы сеанса
Создание проекта Web-службы на основе ATL Server (ATL Server Web Service Project)
Код Web-службы на основе ATL Server: ATLServerWebService.h
История технологий, работающих с динамическим содержимым Web
Создание клиентской программы, обращающейся к Web-службе

Добавление функций в Web-службу на основе ATL Server
Изменение клиентской программы, работающей с Web-службой
Передача структур в качестве входных и выходных параметров
Резюме
Приложения на основе ATL Server
ATL Server основан на интерфейсе прикладного программирования Internet-сервера (ISAPI)
Архитектура приложения, использующего ATL server
Создание проекта ATL Server Project (Проект на основе ATL Server)

Динамически подключаемая библиотека
Динамически подключаемая библиотека (DLL) Web-приложения
Создание и запуск проекта на основе ATL Server

Architecture Net

Защита
Роли .NET в Windows

Другие классы личностей
Личность в операционной системе и общеязыковой среде выполнения CLR
Разрешения коду на доступ
Простой запрос разрешения кодом
Как работает запрос на разрешение
Стратегия запроса разрешений
Запрет разрешений
Утверждение разрешений
Другие методы разрешений

Защита на основе пользователей
Класс SecurityPermission
Неуправляемый код
Разрешения на основе атрибутов
Разрешение принципала
Класс PermissionSet
Личность кода

Классы разрешений для личности
Подтверждение
Политика безопасности
Уровни политики безопасности
Защита доступа к коду
Кодовые группы
Именованные наборы разрешений
Изменение политики безопасности

Резюме
Разрешения
Lnternet-безопасность
Информационный сервер Internet: Internet Information Server (MS)
Защита .NET на основе ролей
Принципалы и личности

Architecture Net

Трассировка и отладка в .NET
Класс TraceListener
Коллекция слушателей
Резюме
Пример TraceDemo
Разворачивание TraceDemo.exe.config
Использование классов Debug (Отладка) и Trace (Трассировка)

Использование переключателей для активизации диагностики
Активация и деактивация переключателей
Установка переключателей в файле конфигурации
Установка переключателей программным путем
Использование переключателей для управления выводом

Architecture Net

Смешивание управляемого и неуправляемого кода
Сервисная программа Tibinp. ехе
Унаследованный компонент на основе модели компонентных объектов Microsoft (COM)

Действующий клиент на основе модели компонентных объектов Microsoft (COM)
Создание клиента на основе модели компонентных объектов Microsoft (COM) с помощью управляемого C++
Разработка управляемого клиента на основе модели компонентных объектов Microsoft (COM) с помощью С#
Создание с помощью управляемого
Создание с помощью С# управляемого
Доступ к управляемым компонентам из клиентов на основе модели компонентных объектов Microsoft (COM)
Раннее связывание клиента на основе модели компонентных объектов Microsoft (COM) с компонентами .NET

Динамическое связывание клиента
Сравнение управляемого и неуправляемого кода
Явное определение интерфейса
Службы обращения к платформе: Plnvoke (Platform Invocation Services)

Резюме
Причины смешивания управляемого и неуправляемого кодов
Неуправляемый или опасный?
Управляемые и неуправляемые ссылки и типы значений
Ограничения на использование управляемых типов в C++

Вызов управляемого кода из неуправляемого и обратный вызов
Сравнение программирования на
Доступ из управляемого кода к

Architecture Net

Visual Studio.NET
Запуск программы в отладчике
Конфигурирование проектов
Создание новой конфигурации

Установка параметров компоновки приложения в конфигурации
Отладка
Оперативная отладка
Обычная отладка, точки останова
Резюме
Обзор Visual Studio.NET
Панели инструментов
Создание консольного приложения
Создание проекта C++

Добавление файла на C++
Использование текстового редактора Visual Studio
Компиляция проекта
Запуск программы