Эндрю Троелсен - ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание

Тут можно читать онлайн Эндрю Троелсен - ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming, издательство Издательский дом Вильямс, год 2007. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание
  • Автор:
  • Жанр:
  • Издательство:
    Издательский дом Вильямс
  • Год:
    2007
  • Город:
    Москва • Санкт-Петербург • Киев
  • ISBN:
    ISBN 5-8459-1124-9
  • Рейтинг:
    3.2/5. Голосов: 101
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5

Эндрю Троелсен - ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание краткое содержание

ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание - описание и краткое содержание, автор Эндрю Троелсен, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

В этой книге содержится описание базовых принципов функционирования платформы .NET, системы типов .NET и различных инструментальных средств разработки, используемых при создании приложений .NET. Представлены базовые возможности языка программирования C# 2005, включая новые синтаксические конструкции, появившиеся с выходом .NET 2.0, а также синтаксис и семантика языка CIL. В книге рассматривается формат сборок .NET, библиотеки базовых классов .NET. файловый ввод-вывод, возможности удаленного доступа, конструкция приложений Windows Forms, доступ к базам данных с помощью ADO.NET, создание Web-приложений ASP.NET и Web-служб XML. Книга содержит множество примеров программного кода, призванного помочь читателю в освоении предлагаемого материала. Программный код примеров можно загрузить с Web-сайта издательства.

ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание - читать онлайн бесплатно полную версию (весь текст целиком)

ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание - читать книгу онлайн бесплатно, автор Эндрю Троелсен
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Исходный код. Проект VersionedObject размещен в подкаталоге, соответствующем главе 17.

Резюме

В этой главе предлагается обсуждение сервисов сериализации. Вы могли убедиться в том. что платформа .NET для корректного учета всего множества связанных объектов, подлежащих сохранению в потоке, использует объектные графы. Когда каждый член объектного графа обозначен атрибутом [Seriаlizable], данные можно сохранять в любом из нескольких доступных форматов (в двоичном формате, формате SOAP или формате XML).

Вы также узнали о том, что процесс сериализации допускает пользовательскую настройку в рамках двух возможных подходов. Во-первых, у вас есть возможность реализовать интерфейс ISerializable (с поддержкой специального приватного конструктора), чтобы влиять на то. как средства форматирования сохраняют поступающие данные. Во-вторых, вы можете использовать множество новых атрибутов, появившихся в .NET 2.0, которые упрощают процесс сериализации с пользовательскими настройками. Следует просто применить один из атрибутов [OnSerializing], [OnSerialized], [OnDeserializing] или [OnDeserialized] к членам, получающим параметр StreamingContext, и форматтер обработает их соответствующим образом. Завершается глава обсуждением еще одного атрибута, [OptionalField], который может использоваться для поддержки версий сериализации типов.

ГЛАВА 18. Удаленное взаимодействие .NET

Разработчики, не имеющие опыта работы с платформой .NET, обычно относят .NET только к средствам создания Интернет-приложений (поскольку ".NET"' часто ассоциируется с "Интернет" и соответствующим программным обеспечением. Вы уже имели возможность убедиться в том, что это далеко не так. Создание Web-приложений является лишь одной и очень узкой (но широко разрекламированной) возможностью платформы .NET. В русле этой информации многие разработчики .NET, не имеющие достаточного опыта, склонны предполагать, что Web-сервисы XML обеспечивают единственный способ взаимодействия с удаленными объектами. Это тоже не соответствует действительности. Используя слой удаленного взаимодействия .NET, можно строить одноранговые распределенные приложения, не имеющие ничего общего с HTTР или XML (если вы этого захотите).

Первой задачей этой главы является рассмотрение низкоуровневых возможностей, используемых средой CLR для передачи информации за границы доменов приложений. При обсуждении проблем удаленного взаимодействия .NET используется множество специальных терминов, таких так агент (т.е. proxy-модуль), канал, маршалинг по ссылке (который противопоставляется маршалингу по значению), серверная активизация объектов (в противоположность клиентской активизации) и т.д… После выяснения сути этих базовых терминов будет предложено несколько примеров программного кода, иллюстрирующих процесс построения распределенных систем в рамках платформы .NET.

Понятие удаленного взаимодействия .NET

Вы должны помнить из главы 13, что домен приложения [AppDomain] задает логические границы выполнения компоновочного блока .NET в рамках процесса Win32. Понимание этого очень важно для дальнейшего обсуждения распределенных приложений .NET, поскольку удаленное взаимодействие означает здесь не более чем взаимодействие двух объектов, сообщающихся через границы доменов. Соответствующие домены приложений могут физически находиться в следующих условиях.

• Два домена приложения определены в рамках одного и того же процесса (и поэтому на одной и той же машине).

• Два домена приложения определены в разных процессах на одной и той же машине.

• Два домена приложения определены в разных процессах на разных машинах.

С учетом этих трех возможностей становится ясно, что удаленное взаимодействие не обязательно предполагает наличие соединенных в сеть компьютеров. На самом деле все примеры, представленные в этой главе, могут вполне успешно выполняться на одной автономной машине. Независимо от расстояния между объектами, в отношении взаимодействующих агентов используются термины "клиент" и "сервер". Упрощенно говоря, клиент - это сущность, пытающаяся взаимодействовать с удаленными объектами, а сервер - это программный агент, содержащий удаленные объекты.

Пространства имен удаленного взаимодействия .NET

Перед тем как углубиться в детали процесса удаленного взаимодействия .NET. мы должны выяснить, какие функциональные возможности предлагают пространства имен, обеспечивающие удаленное взаимодействие. Библиотеки базовых классов .NET содержат очень много пространств имен, позволяющих строить распределенные приложения. Большинство типов, содержащихся в этих пространствах имен, находятся в mscorlib.dll, но дополнения и расширения базовых пространств имен вынесены в отдельный компоновочный блок System.Runtime.Remoting.dll. В табл. 18.1 предлагаются краткие описания пространств имен удаленного взаимодействия .NET 2.0.

Таблица 18.1.Пространства имен .NET для поддержки возможностей удаленного взаимодействия

Пространство имен Описание
System.Runtime.Remoting Базовое пространство имен, которое должно использоваться при построении любого распределенного приложения .NET
System.Runtime.Remoting.Activation Относительно малое пространство имен, в котором определяются несколько типов, обеспечивающих тонкую настройку процесса активизации удаленного объекта
System.Runtime.Remoting.Channels Содержит типы, представляющие каналы и приемники каналов
Systern.Runtime.Remoting.Channels.Http Содержит типы, использующие протокол HTTP для транспорта сообщений и объектов в удаленную точку и обратно
System.Runtime.Remoting.Channels.Ipc Пространство имен, которое появилось в .NET 2.0 и содержит типы, использующие архитектуру IPC Win32. Архитектура IPC (Interprocess Communication – взаимодействие процессов) обеспечивает быстрое взаимодействие доменов приложений, существующих на одной физической машине
System.Runtime.Remoting Базовое пространство имен, которое должно использоваться при построении любого распределенного приложения .NET
System.Runtime.Remoting.Activation Относительно малое пространство имен, в котором определяются несколько типов, обеспечивающих тонкую настройку процесса активизации удаленного объекта
System.Runtime.Remoting.Channels Содержит типы, представляющие каналы и приемники каналов
System.Runtime.Remoting.Channels.Http Содержит типы, использующие протокол HTTP для транспорта сообщений и объектов в удаленную точку и обратно
System.Runtime.Remoting.Channels.Ipc Пространство имен, которое появилось в .NET 2.0 и содержит типы, использующие архитектуру IPC Win32. Архитектура IPC (Interprocess Communication – взаимодействие процессов) обеспечивает быстрое взаимодействий доменов приложений, существующих на одной физической машине
System.Runtime.Remoting.Channels.Tcp Содержит типы, использующие протокол TCP для транспорта сообщений и объектов в удаленную точку и обратно
System.Runtime.Remoting.Contexts Позволяет конфигурировать параметры объектного контекста
System.Runtime.Remoting.Lifetime Содержит типы, управляющие циклом существования удаленных объектов
System.Runtime.Remoting.Messaging Содержит типы, используемые для создания и передачи объектов сообщений
System.Runtime.Remoting.Metadata Содержит типы, используемые для настройки параметров генерированиям форматирования сообщений SOAP
System.Runtime.Remoting.Metadata.W3cXsd2001 Содержит типы, представляющие формат XSD (XML Schema Definition – определение схемы XML) в соответствии со стандартами Консорциума W3C, принятыми в 2001 году
System.Runtime.Remoting.MetadataServices Содержит типы, используемые средством командной строки soapsuds.exe при конвертировании метаданных удаленной инфраструктуры .NET в XML-схемы (и обратно)
System.Runtime.Remoting.Proxies Содержит типы, обеспечивающие функциональные возможности для объектов, выполняющих задачи агента (proxy)
System.Runtime.Remoting.Services Определяет ряд общих базовых классов (и интерфейсов), которые обычно используются только внутренними агентами удаленного взаимодействия

Каркас удаленного взаимодействия .NET

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Эндрю Троелсен читать все книги автора по порядку

Эндрю Троелсен - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание отзывы


Отзывы читателей о книге ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание, автор: Эндрю Троелсен. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x