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


Скачать 0.61 Mb.
Название Кафедра системного программирования Разработка технологии взаимодействия гетерогенных систем с использованием метапрограммирования
страница 1/13
Тип Дипломная работа
rykovodstvo.ru > Руководство эксплуатация > Дипломная работа
  1   2   3   4   5   6   7   8   9   ...   13
Санкт-Петербургский Государственный Университет

Математико-механический факультет

Кафедра системного программирования
Разработка технологии взаимодействия гетерогенных систем с использованием метапрограммирования
Дипломная работа студента 545 группы
Константинова Александра Сергеевича

Научный руководитель

………………
/ подпись /

Соломатов К.В.

Рецензент

………………
/ подпись /

Шкредов С.Д.

“Допустить к защите”
заведующий кафедрой,

………………

/ подпись /

д.ф.-м.н., проф. Терехов А.Н.



Санкт-Петербург

2011

Saint-Petersburg State University

Mathematics and Mechanics Faculty

Software Engineering Department
Implementation of heterogenous system interoperability technology

with metaprogramming


Graduate paper by

Alexander Konstantinov
545 group


Scientific advisor

………………

K.V.Solomatov

Reviewer

………………

S.D.Shkredov

“Approved by”
Head of Department

………………

Professor A. N. Terekhov

Saint-Petersburg

Оглавление


Введение 5

Постановка задачи 6

Глава 1. Обзор существующих решений 7

XML-RPC 7

SOAP 8

JSON-RPC 8

.NET Remoting 9

RMI 9

Corba 9

GWT-RPC 10

ONC-RPC 10

DCE/RPC 10

Routix-RPC 10

ZeroC 11

Burlap 12

Hessian 12

Abstract Syntax Notation One 12

Etch 13

Thrift 14

Protobuf 15

Kryo 17

Protostuff 18

Avro 18

Сравнение 18

- 19

Выводы из обзора 20

Глава 2. Алгоритм работы 21

Глава 3. Реализация 24

Выбор платформы 25

Язык асинхронных вызовов 27

Язык сообщений 28

Язык сервисов 30

Исключения 31

Генерация в Objective C 33

События 34

Тестирование 35

Глава 4. Внедрение 37

Заключение 38

Литература 40


Введение


В данный момент самой частой архитектурой приложений является трехзвенная архитектура, представляющая из себя клиент, сервер приложений, далее просто сервер, и сервер базы данных. При этом чаще всего клиенты должны быть реализованы для разных платформ и на разных языках. Самой сложной задачей становится процедура взаимодействия гетерогенных систем, поскольку сервер может быть написан на Java, а клиенты на одном из языков, которые чаще всего предоставлены для мобильных устройств: Java, Objective C, JavaScript (устройства типа iPad, android-клиенты, веб-клиенты).

Проект, в рамках которого был выполнен данный диплом, является приложением, имеющим различные клиенты: GWT, AWT, iPad, android. При этом каждый запущенный клиент постоянно делает запросы к серверу и получает от него ответы большого объёма. Поэтому реализация эффективного взаимодействия – первостепенная задача.

Существует множество решений для удаленного вызова процедур и для передачи данных, но у всех есть какие-либо недостатки: тяжеловесность, большое потребление трафика, низкая скорость кодирования, сложность использования, отсутствие поддержки какой-либо платформы, отсутствие необходимой функциональности, отсутствие возможности расширения, низкий уровень абстракции.

Если клиентское приложение запущено на мобильной платформе, то большой объём трафика является самым тонким местом, поскольку многие RPC реализованы на базе XML, который, как известно, крайне увеличивает объём передаваемой информации.

Кроме того, важной частью работы была возможность поддержки веб-клиента, поскольку он является одним из ключевых, так как у абсолютного большинства пользователей есть возможность запустить приложение из браузера. Изначально технологией для разработки был выбран фреймворк GWT, который позволяет писать код на Java, а затем транслировать его в JavaScript. В комплект поставки GWT входит GWT-RPC, но его реализация есть только для Java, а значит нужно использовать стороннее RPC. Практически никакое существующее решение не поддерживает данную технологию, так как создает код на Java, который не может быть транслирован в JavaScript.

Для достижения более высокого уровня абстракции, возможности расширения, было выбрано метапрграммирование [1], поскольку оно позволяет быстро и удобно создавать языки, создавать для них генераторы, отходить от парадигм каких-то конкретных языков программирования. Кроме того проект, для которого нужно было RPC, был реализован с помощью MPS [2], поэтому конкретной платформой для метапрграммирования был также выбран JetBrains MPS, чтобы добиться лучшего уровня и простоты интеграции.
  1   2   3   4   5   6   7   8   9   ...   13

Похожие:

Кафедра системного программирования Разработка технологии взаимодействия гетерогенных систем с использованием метапрограммирования icon Разработка модуля вычисления синдромов и восстановления утраченных...
Демьяненко И. И., студент кафедры системного программирования спбГУ, dii6@yandex ru
Кафедра системного программирования Разработка технологии взаимодействия гетерогенных систем с использованием метапрограммирования icon Кафедра системного программирования Разработка отладчика для программ...
Такие проекты как, Google Maps, Photoshop Express, Zoho доказали возможность создания качественных web-ориентированных программных...
Кафедра системного программирования Разработка технологии взаимодействия гетерогенных систем с использованием метапрограммирования icon Экзаменационные вопросы по дисциплине «Инструментальные средства и технологии программирования»
Понятие технологии программирования. Основные задачи технологии программирования
Кафедра системного программирования Разработка технологии взаимодействия гетерогенных систем с использованием метапрограммирования icon Кафедра систем автоматизированного проектирования
Сформировать системное базовое представление, первичные знания, умения и навыки студентов по основам программирования на объектно-ориентированном...
Кафедра системного программирования Разработка технологии взаимодействия гетерогенных систем с использованием метапрограммирования icon Кафедра системного программирования
Построение риторических деревьев текста на основе машинного обучения в рамках задачи автоматического реферирования
Кафедра системного программирования Разработка технологии взаимодействия гетерогенных систем с использованием метапрограммирования icon Математико-Механический Факультет Кафедра Системного Программирования...
Платформа IntelliJ эта бесплатная программная платформа с открытым исходным кодом, предназначенная для написания удобных и многофункциональных...
Кафедра системного программирования Разработка технологии взаимодействия гетерогенных систем с использованием метапрограммирования icon Рабочая программа учебной дисциплины (модуля) Современные операционные системы
Целью изучения дисциплины является подготовка студентов в области системного программирования, использования, установки, проектирования...
Кафедра системного программирования Разработка технологии взаимодействия гетерогенных систем с использованием метапрограммирования icon Разработка графической системы поддержки программирования контроллеров...

Кафедра системного программирования Разработка технологии взаимодействия гетерогенных систем с использованием метапрограммирования icon Вопросы к вступительному испытанию по направлению
Основные этапы программирования (структурный, rad-технологии, case-технологии). Кризис программирования
Кафедра системного программирования Разработка технологии взаимодействия гетерогенных систем с использованием метапрограммирования icon Пояснительная записка Кафедра пмиК
Разработка адаптера системы межведомственного электронного взаимодействия к сервису Росреестра "Выписка и егрп"
Кафедра системного программирования Разработка технологии взаимодействия гетерогенных систем с использованием метапрограммирования icon Кафедра вычислительной техники Технологии программирования Курсовой...
Программа может применяться пользователями персональных компьютеров для преобразования растрового изображения в ascii-графику
Кафедра системного программирования Разработка технологии взаимодействия гетерогенных систем с использованием метапрограммирования icon Математико-механический факультет Кафедра системного программирования...
К ним можно отнести сегодня разве что db2 udb корпорации ibm и Oracle. Оба продукта обладают развитой функциональностью, необходимой...
Кафедра системного программирования Разработка технологии взаимодействия гетерогенных систем с использованием метапрограммирования icon Подготовил Гунько А. В
Предмет Web-программирования. Программирование на стороне клиента и сервера. Инструменты и технологии программирования
Кафедра системного программирования Разработка технологии взаимодействия гетерогенных систем с использованием метапрограммирования icon Математико-механический факультет Кафедра системного программирования...
Поэтому на настоящий момент практически все распространенные форматы электронных обучающих курсов основываются на xml-технологиях:...
Кафедра системного программирования Разработка технологии взаимодействия гетерогенных систем с использованием метапрограммирования icon Обоснование и разработка технологии производства виноматериалов с...
Злаковых, бобовых культур, крупяных продуктов, плодоовощной продукции и виноградарства
Кафедра системного программирования Разработка технологии взаимодействия гетерогенных систем с использованием метапрограммирования icon Государственное образовательное учреждение высшего профессионального...
Разработка учебно-методического комплекса организации и проведения уроков технологии

Руководство, инструкция по применению




При копировании материала укажите ссылку © 2024
контакты
rykovodstvo.ru
Поиск