Интернет Университет информационных технологий Твой путь к знаниям
  Искать!
Курсы | Обучение | Школа | Магазин | Общение | Новости | Помощь

поддержка курса Введение в теорию программирования. Объектно-ориентированный подход
информация [+] Автор: С.В. Зыков


 
 
18. Лабораторная работа: Проектирование и реализация гетерогенных приложений
для печати и PDA
Если Вы заметили ошибку - сообщите нам или выделите ее и нажмите Ctrl+Enter
Цель: знакомство с проектированием и реализацией гетерогенных приложений для платформы .NET на примере совместного проекта из компонент на языках SML и C#.

Теоретические сведения

Гетерогенные приложения

x+y=2

Платформа программирования .NET изначально разрабатывалась для построения приложений на компонентной основе и обеспечения независимости взаимодействия компонентов от языка программирования. Благодаря этому в рамках одного приложения могут быть использованы компоненты, реализующие различные подходы к программированию.

В качестве основной структурной единицы компонентного программирования выступает решение (solution), которое может состоять из сборок (assembly). Сборка представляет из себя управляемую динамическую библиотеку (DLL-файл) для .NET или приложение (EXE-файл). В каждом решении должна быть хотя бы одна сборка.

Для взаимодействия между сборками используется механизм ссылок. Ссылка (reference) - это пространство имен из одной сборки, доступное в другой. После добавления дополнительного проекта к решению и ссылки к основному проекту, в коде основного проекта можно пользоваться пространствами имен дополнительного.

Взаимодействие с SML.NET на компонентном уровне

Код SML.NET может создавать пространство имен, видимое в рамках других приложений. Для этого в файл script.smlnet добавляется директива export. Данная директива экспортирует фрагмент программы на языке программирования (скажем, SML) в форме объекта или структуры в пространство имен .NET. Последнее, в свою очередь, может быть использовано в любой сборке решения при добавлении соответствующей ссылки.

Описание директивы export

Синтаксис:

export имя1[, имя2 ...]

При создании нового проекта SML.NET платформа автоматически заносит имя основной структуры SML-проекта в создаваемый файл. В случае добавления дополнительных файлов или создания дополнительных экспортируемых структур экспортом необходимо управлять вручную.

Для создания ссылки на другие проекты .NET в решении для SML.NET необходимо добавить директиву reference.

Директива reference

Синтаксис:

Reference файл_с_кодом_компонента_1 [...]

Порядок выполнения работы

  1. Реализовать программу на C# в соответствии с вариантом исполнения.
  2. Представить в графическом виде взаимодействие компонентов в среде .NET.

Варианты заданий

Оснастить графическим интерфейсом на языке C# следующие функции на языке SML.

Реализовать функцию на языке программирования SML, которая выполняет синтаксический разбор следующего аппликативного выражения по ассоциации влево с построением бинарного дерева:

  1. a(bc)
  2. ac(bc)
  3. (ac)(bc)
  4. (ab)(c(de))
  5. a(b(cd)(ef))
  6. a(b(cd)(ef)g)
  7. a(b((cd)(ef))
  8. (a(bc(de)f)gh)
  9. abb(cdd(e)fg)
  10. (ab(c(de))f(g(hi))j)

Реализовать функцию на языке программирования SML, которая выполняет синтаксический разбор следующего аппликативного выражения по ассоциации вправо с построением бинарного дерева:

  1. a(bc)
  2. ac(bc)
  3. (ac)(bc)
  4. (ab)(c(de))
  5. a(b(cd)(ef))
  6. a(b(cd)(ef)g)
  7. a(b((cd)(ef))
  8. (a(bc(de)f)gh)
  9. abb(cdd(e)fg)
  10. (ab(c(de))f(g(hi))j)
для печати и PDA
 
 

Внимание! Если Вы увидите ошибку на нашем сайте, выделите её и нажмите Ctrl+Enter.
Нужна помощь?
• Забыли пароль? Вам сюда...
• Есть вопрос? Спрашивайте!
Вы можете:
• Изменить персональные данные
• Изменить параметры подписки
Интернет-магазин:
• Ваши заказы здесь
• Ваш личный счет
Курсы | Учебные программы | Учебники | Вопросы и Ответы | Форум | Новости | Помощь

Телефон: +7 (499) 253-9312, 253-9313, факс: +7 (499) 253-9310, email: info@intuit.ru
© INTUIT.ru::Интернет-Университет Информационных Технологий - дистанционное образование, 2003-2011
Проект Издательства "Открытые Системы".
Партнеры: РМ Телеком, KRAFTWAY COMPUTERS.
Rambler's Top100