Разделы презентаций


WWW технология

Содержание

ПланИсторические сведенияКлиенты и серверыПротоколыСерверы приложенийWWW службыSOAP, XML RPC

Слайды и текст этой презентации

Слайд 1WWW технология
Судаков А.А.
“Параллельные и распределенные вычисления” Лекция 6

WWW технологияСудаков А.А.“Параллельные и распределенные вычисления” Лекция 6

Слайд 2План
Исторические сведения
Клиенты и серверы
Протоколы
Серверы приложений
WWW службы
SOAP, XML RPC

ПланИсторические сведенияКлиенты и серверыПротоколыСерверы приложенийWWW службыSOAP, XML RPC

Слайд 3Литература
http://www.w3c.org
http://hercules.xml.org/xml/resources_cover.shtml
http://www.iks.inf.ethz.ch/education/ws04

Литератураhttp://www.w3c.orghttp://hercules.xml.org/xml/resources_cover.shtmlhttp://www.iks.inf.ethz.ch/education/ws04

Слайд 4Исторические сведения
Сегодня WWW – «синоним» Интернет и распределенных приложений в

пределах Интернет
Начало 80-х годов создана в CERN для обмена

документами в пределах Интернет
1990 г. язык HTML, позже XML
В 1993 г SUN анонсировал Java – «платформенно-независимая» технология для создания программ, которая стала основой для разработки WWW приложений
Конец 90-х стандарты для удаленных вызовов процедур через Интернет (SOAP, XML RPC)
Исторические сведенияСегодня WWW – «синоним» Интернет и распределенных приложений в пределах Интернет Начало 80-х годов создана в

Слайд 5Недостатки классических RPC
Рассчитывались на локальные сети с большой скоростью доступа

и малыми задержками
Не рассчитывались на одновременное обслуживание большого количества клиентов
Существует

несколько несовместимых реализаций
Разработка сложна, требует высокой квалификации специалистов
Недостатки классических RPCРассчитывались на локальные сети с большой скоростью доступа и малыми задержкамиНе рассчитывались на одновременное обслуживание

Слайд 6WWW
WWW – всемирная паутина
Большое количество серверов и клиентов, которые

работаю с использованием общих протоколов передачи данных (http)
Каждый ресурс (документ,

программа) идентифицируется уникальным идентификатором URI – uniform resource identification

WWW WWW – всемирная паутинаБольшое количество серверов и клиентов, которые работаю с использованием общих протоколов передачи данных

Слайд 7URI
URL – locator
URN - name
ftp://ftp.is.co.za/rfc/rfc1808.txt http://www.ietf.org/rfc/rfc2396.txt ldap://[2001:db8::7]/c=GB?objectClass?one mailto:John.Doe@example.com news:comp.infosystems.www.servers.unix tel:+1-816-555-1212

telnet://192.0.2.16:80/

URIURL – locatorURN - name	ftp://ftp.is.co.za/rfc/rfc1808.txt http://www.ietf.org/rfc/rfc2396.txt ldap://[2001:db8::7]/c=GB?objectClass?one mailto:John.Doe@example.com news:comp.infosystems.www.servers.unix tel:+1-816-555-1212  telnet://192.0.2.16:80/

Слайд 8
Взаимодействие клиентов и серверов
Клиент
WWW браузер – система
отображения информации и


выполнения клиентских программ
(аплетов)
Пользователь
Итерпретатор Java
или других языков
Сервер
WWW сервер – обслуживание
клиентский

запросов

Программы, которые
выполняются на сервере –
CGI, SOAP, PHP, XML RPC

Статические документы
и программы, которые
выполняются на клиенте

Протокол HTTP

Выдача результатов
в виде HTML, XML

Выдача документов
в виде HTML, XML

Доступ к базам данных,
CORBA серверам,
Вычислительным системам

Обработка принятых данных
или выдача результатов
выполнения

ОДИНАКОВО
ДЛЯ ВСЕХ

Взаимодействие клиентов и серверовКлиентWWW браузер – система отображения информации и выполнения клиентских программ(аплетов)ПользовательИтерпретатор Javaили других языковСерверWWW сервер

Слайд 9Протоколы и сериализация
Транспортные протоколы – TCP/IP
Представление данных – HTTP hyper

text transfer protocol
Данные передаются (как правило) в текстовом виде

(HTML, XML)
Сериализация и десериализация выполняются с помощью HTML, XML
Могут использоваться и другие протоколы
Уровень прикладных программ
универсальный интерфейс для представления информации – WWW браузер
Логика работы разделена между сервером (www приложение, сервлет) и клиентом (аплеты)
Протоколы и сериализацияТранспортные протоколы – TCP/IPПредставление данных – HTTP hyper text transfer protocol Данные передаются (как правило)

Слайд 10Совместимость
Для совместимости предпочтительно использовать текстовые форматы данных
Данные в таком формате

всем людям понятны
100000
“This is a pen”
То же в шестнадцатиричном

формате
186A0
54 68 69 73 20 69 73 20 61 20 70 65 6E
Во втором случае не зная формата трудно определить, что написано
В текстовом виде это занимает больше места, но его легко может понять человек и просто обработать программно
СовместимостьДля совместимости предпочтительно использовать текстовые форматы данныхДанные в таком формате всем людям понятны100000“This is a pen” То

Слайд 11HTML
Таговая (tag, дескриптор) структура
Разбивка потока байтов на блоки, каждый

со своим типом интерпретации
Блок выделяется «таговыми скобками»
Открывающий дескриптор
Содержимое блоки
Закрывающий

дескриптор
Существует стандартный набор дескрипторов для описания форматирования документов
HTMLТаговая (tag, дескриптор) структура Разбивка потока байтов на блоки, каждый со своим типом интерпретации Блок выделяется «таговыми

Слайд 12Пример HTML



обов'язково) -->
Назва документа









. . .


. . .




Пример HTML

Слайд 13Языки гипертекстовой разметки
SGML (Standard Generalized Markup Language ) – 1960-е

года (IBM)
широко используется в промышленности
Общее описание языков гипертекстовой разметки
HTML

– 1980-1990 года (CERN)
Подмножество SGML
Используется для форматирования текста
XML – 1990-е года (w3c)
Язык описания структуры информации c возможностью создания своих типов дескрипторов
Универсальное средство описания данных любой структуры
Языки гипертекстовой разметкиSGML (Standard Generalized Markup Language ) – 1960-е года (IBM) широко используется в промышленностиОбщее описание

Слайд 14XML
Extensible Markup Language
В отличие от HTML рассчитан не на то,

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

назначение блока данных
Это обеспечивается возможностью введения описания новых тагов
HTML
// это начинается таблица
// это начинается новая строка таблицы
//это ячейка таблицы в текущей строке


XML
//это начинается информация о пользователе
//это имя пользователя
//это псевдоним пользователя

XMLExtensible Markup LanguageВ отличие от HTML рассчитан не на то, как форматировать данные при выводе, а на

Слайд 15XML
Широко используется в WWW технологии
Форматирование документов
Описания структур документов
Описания

интерфейсов, типов данных
Описания входных и выходных параметров при вызовах программ
Описания

методов сериализации/десериализации объектов при передачи по сети
Все это в текстовом виде и независимо от аппаратной и программной платформы
XML Широко используется в WWW технологии Форматирование документовОписания структур документовОписания интерфейсов, типов данныхОписания входных и выходных параметров

Слайд 16Синтаксис XML документа
Каждый открывающий дескриптор должен иметь закрывающий, если в

блоке есть вложенные данные
имя

Блоки не должны

перекрываться
имя - нельзя
корневой блок должен быть один


..


<\root>
Синтаксис XML документаКаждый открывающий дескриптор должен иметь закрывающий, если в блоке есть вложенные данные имя Блоки не

Слайд 17Синтаксис дескриптора блока

Данные блока

Пример

name=“saa” age=“16”>





Синтаксис дескриптора блока 	Данные блока Пример 			 …

Слайд 18Пространства имен (namespace)
Разные пользователи могут использовать одинаковые имена дескрипторов, атрибутов,

имен, но смысл у них может быть разным
Пример
0xc0048000

//адрес памяти

Lomonosov str. 80 //домашний адрес
Для решения проблемы были введены пространства имен
Пространства имен (namespace)Разные пользователи могут использовать одинаковые имена дескрипторов, атрибутов, имен, но смысл у них может быть

Слайд 19Определение пространства имен
Введены для того, чтобы отличать одинаковые имена

в разных контекстах
Пространство имен – определяется следующим образом
xmlns:префикс=“уникальное имя”
Уникальное

имя – URI, который никуда может не указывать
Пример
xmlns:my_ns=“http://my_ns.xml/my_ns”
Определение пространства имен Введены для того, чтобы отличать одинаковые имена в разных контекстахПространство имен – определяется следующим

Слайд 20Использование пространства имен

Lomonosov Str. 80


0xc0048000



То же самое

Lomonosov Str. 80


0xc0048000



Использование пространства имен	Lomonosov Str. 80	 0xc0048000 То же самое	Lomonosov Str. 80	 0xc0048000

Слайд 21Описания типов документов (DTD)
Для того, чтобы четко указать какие элементы

могут иметь какие атрибуты и какие типы значений могут эти

атрибуты принимать







]>

Если что-то не совпадает, то XML документ не верный
Описания типов документов (DTD)Для того, чтобы четко указать какие элементы могут иметь какие атрибуты и какие типы

Слайд 22XML документ в соответствии с описанием

Shevchenko University of Kyiv"
LATLONG="50° 28' North; 30° 29' East;"

URL="http://www.cluster.kiev.ua/">
….
XML документ в соответствии с описанием

Слайд 23Схемы
Типизация помогает избежать ошибок
Схемы – описание сложных структур данных (по

аналогии со структурами и объектами C, C++)
Фактически – описание типа
Какие

элементы каких типов могут входить в сложную структуру данных
Сколько и каких элементов может в этой структуре быть
Используется XML вместо DTD
Хорошо подходит для запросов и ответов от баз данных, передачи RPC параметров
СхемыТипизация помогает избежать ошибокСхемы – описание сложных структур данных (по аналогии со структурами и объектами C, C++)Фактически

Слайд 24Пример схемы
C++

class person_t {
string name;
string surname;
time_t birth_date;
};
XML


name=“person" type=“personType"/>





name=“surname" type="xsd:string"/>




Пример схемыC++class person_t {	string name;	string surname;	time_t birth_date;}; XML

Слайд 25Пример объектов (структур)
C++
person_t person;
person.name=“Olexandr ”;
person.surname=“Sudakov ”;
person.birth_date=“23-12-1973”;


XML


Olexandr


Sudakov


23-12-1973




Пример объектов (структур)C++person_t person;person.name=“Olexandr ”;person.surname=“Sudakov ”;person.birth_date=“23-12-1973”;XML	 Olexandr 	 		Sudakov 		 		23-12-1973

Слайд 26Document Object Model (DOM)
Представление сложных объектов в виде XML документов
Представление

XML документов в виде структур данных на каком-либо языке программирования
Сериализация/десериализация
Передача

аргументов и возврат значений
Простое создание XML документов
Document Object Model (DOM)Представление сложных объектов в виде XML документовПредставление XML документов в виде структур данных на

Слайд 27Пример

function loadXML()
{
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.load("note.xml")

to.innerText=
xmlDoc.getElementsByTagName("to").item(0).text
from.innerText=
xmlDoc.getElementsByTagName("from").item(0).text
header.innerText=
xmlDoc.getElementsByTagName("heading").item(0).text
body.innerText=
xmlDoc.getElementsByTagName("body").item(0).text
}


Примерfunction loadXML(){var xmlDoc = new ActiveXObject(

Слайд 28Сетевой протокол прикладного уровня
HTTP – hypertext transfer protocol
RFC 2616 HTTP/1.1
RFC

1945 HTTP/1.0
Работает по верх протокола TCP, рассчитанного на соединение
HTTP

рассчитан на передачу запроса (в виде сообщений) серверу и получение ответа (в виде сообщений)
Сетевой протокол прикладного уровняHTTP – hypertext transfer protocolRFC 2616 HTTP/1.1RFC 1945  HTTP/1.0Работает по верх протокола TCP,

Слайд 29HTTP сеанс
Клиент устанавливает соединение
Клиент отправляет на сервер запрос
Сервер обрабатывает запрос

и отправляет ответ
Сервер обычно разрывает соединение после отправки всего ответа

Сервер



Клиент


соединение
запрос
ответ
разъединение

HTTP сеансКлиент устанавливает соединениеКлиент отправляет на сервер запросСервер обрабатывает запрос и отправляет ответСервер обычно разрывает соединение после

Слайд 30Формат запроса
Метод запроса, URI и протокол запроса
Заголовок
Опциональные параметры запроса
Опциональные параметры

команды
Пустая строка
GET http://www.univ.kiev.ua/ HTTP/1.0

Методом GET
Запросили список корневого каталога сервера

www.univ.kiev.ua
Протокол HTTP/1.0

Формат запросаМетод запроса, URI и протокол запросаЗаголовокОпциональные параметры запросаОпциональные параметры командыПустая строка GET http://www.univ.kiev.ua/ HTTP/1.0Методом GETЗапросили список

Слайд 31Формат ответа
Протокол ответа, Код статуса
Параметры заголовка ответа
Пустая строка
Данные ответа
Разрыв

соединения
HTTP/1.1 200 OK
Date: Tue, 28 Jun 2005 13:52:43 GMT
Server: Apache/1.3.29

(Unix) mod_fastcgi/2.4.2 PHP/4.3.9 mod_perl/1.26 mod_ssl/2.8.16 OpenSSL/0.9.7d
Connection: close
Content-Type: text/html




Index of /



Формат ответаПротокол ответа, Код статуса Параметры заголовка ответаПустая строкаДанные ответаРазрыв соединенияHTTP/1.1 200 OKDate: Tue, 28 Jun 2005

Слайд 32Методы запроса
GET – получить заданный URL
PUT – поместить нижеследующие данные

в заданный URL
POST – передать нижеследующие данные ресурсу, связанному

с URL
DELETE – удалить заданный URL
Методы запросаGET – получить заданный URLPUT – поместить нижеследующие данные в заданный URL POST – передать нижеследующие

Слайд 33Работа за брандмауэром и кэширование
HTTP хорошо рассчитан на работу за

брандмауэром
Клиент является активным и к клиенту присоединяться не нужно невозможно
HTTP

удобен для кэширования информации
Клиент обращается к прокси-серверу с просьбой о доставке URI
Прокси-сервер либо доставляет URI, и кэширует, либо возвращает закэшированные данные, если они есть
Достаточно легко сжимать и шифровать информацию в потоке
Работа за брандмауэром и кэшированиеHTTP хорошо рассчитан на работу за брандмауэромКлиент является активным и к клиенту присоединяться

Слайд 34Основное использование WWW
Серверы данных
Возможность получить данные (документы, программы) с другой

машины на свою машину и запустить или открыть их
Серверы приложений
Возможность

запустить программу (сервлет) на другой машине и увидеть результат ее выполнения на своем браузере
WWW службы
Возможность разработать распределенную программу, которая состоит из множества компонент, находящихся на разных машинах (аналогично CORBA)
Основное использование WWWСерверы данныхВозможность получить данные (документы, программы) с другой машины на свою машину и запустить или

Слайд 35Серверы приложений
Клиент обращается к серверу (пользователь «кликает»)
Сервер запускает приложение, связанное

с URI, указанным клиентом
Приложение выполняет сложную работу и выдает результат

в виде HTML
Серверы приложенийКлиент обращается к серверу (пользователь «кликает»)Сервер запускает приложение, связанное с URI, указанным клиентомПриложение выполняет сложную работу

Слайд 36Основные подходы к созданию серверов приложений
CGI – common gateway interface
Клиент

передает серверу URI и параметры программы
Сервер запускает программу с заданными

параметрами (cgi обработчик)
Программа-обработчик возвращает результаты выполнения в виде HTML на стандартный вывод, который непосредственно передается клиенту
Контейнер-серверы
Сервер сам является интерпретатором с некоторого языка программирования (Java)
С URI связан некоторый исполняемый файл (сервлет)
Сервер запускает сервлет с параметрами, переданными клиентом
Сервлет возвращает результат
Основные подходы к созданию серверов приложенийCGI – common gateway interfaceКлиент передает серверу URI и параметры программыСервер запускает

Слайд 37Передача параметров на сервер (CGI)
Метод GET
Как часть URI
GET http://cluster/ganglia/index?c=cluster.univ.kiev.ua&h=ss20-15.univ.kiev.ua

HTTP/1.0
Пустая строка

Метод POST
В заголовке запроса

POST http://cluster/ganglia/index HTTP/1.0
Content-Length: 48

&c=cluster.univ.kiev.ua
&h=ss20-15.univ.kiev.ua

Передача параметров на сервер (CGI)Метод GETКак часть URI GET http://cluster/ganglia/index?c=cluster.univ.kiev.ua&h=ss20-15.univ.kiev.ua HTTP/1.0Пустая строкаМетод POSTВ заголовке запросаPOST http://cluster/ganglia/index HTTP/1.0Content-Length:

Слайд 38Ответ сервера
HTTP/1.1 200 OK
Date: Wed, 29 Jun 2005 16:17:40 GMT
Server:

Apache/2.0.51 (Fedora)
X-Powered-By: PHP/4.3.8
Set-Cookie: gs=grid.org.ua%40; expires=Thu, 30-Jun-2005 16:17:41 GMT
Expires: Mon, 26

Jul 1997 05:00:00 GMT
Last-Modified: Wed, 29 Jun 2005 16:17:41 GMT
Cache-Control: no-cache, must-revalidate
Pragma: no-cache
Connection: close
Content-Type: text/html; charset=UTF-8




Ganglia:: Host Report
Ответ сервераHTTP/1.1 200 OKDate: Wed, 29 Jun 2005 16:17:40 GMTServer: Apache/2.0.51 (Fedora)X-Powered-By: PHP/4.3.8Set-Cookie: gs=grid.org.ua%40; expires=Thu, 30-Jun-2005 16:17:41

Слайд 39Обработка параметров при запуске CGI программы
Метод GET – программе

передается URL
Через системную переменную
Через динамически создаваемые переменные с уже разобранным

синтаксисом
Метод POST – программа считывает данные со стандартного ввода
Данные обрабатываются самой программой
Данные обрабатываются специальной библиотечной функцией
Обработка параметров при запуске CGI программы Метод GET – программе передается URLЧерез системную переменнуюЧерез динамически создаваемые переменные

Слайд 40Недостатки CGI и их преодоление
Необходимость запуска программы на каждый запрос
При

большом количестве запросов много процессорного времени уходит только на запуск


Сервлеты – отдельный поток
Значительно облегчается переключение контекста

Недостатки CGI и их преодолениеНеобходимость запуска программы на каждый запросПри большом количестве запросов много процессорного времени уходит

Слайд 41Сервлеты
Играют ту же роль, что и CGI скрипт, но
Написаны на

Java и хорошо портируются
Выполняются как функция в отдельном потоке WWW

сервера
Для сервлетов необходим контейнер-сервер, который их может выполнять
Сервлеты очень хорошо подходят для создания WWW служб с использованием распределенной компонентной модели
Java Beans – технолгия создания распределенных программ
СервлетыИграют ту же роль, что и CGI скрипт, ноНаписаны на Java и хорошо портируютсяВыполняются как функция в

Слайд 42WWW службы
Серверы приложений – результат получает пользователь
WWW службы – части

большой распределенной программы, которые работают на разных WWW серверах (RPC)
Пользователь
Сервер

приложений

Распределенная программа

Сервер 1
Служба 1

Сервер 2
Служба 2

Сервер 3
Служба 3

WWW службыСерверы приложений – результат получает пользовательWWW службы – части большой распределенной программы, которые работают на разных

Слайд 43Определение WWW службы
WWW служба – это программа, которая идентифицируется с

помощью URI и все интерфейсы (структура входных и выходных данных)

который могут быть описаны с помощью XML
WWW служба может быть интегрирована (использована) в любой программе, которая умеет работать с XML посредством обращения через Интернет
Определение WWW службыWWW служба – это программа, которая идентифицируется с помощью URI и все интерфейсы (структура входных

Слайд 44Структура системы WWW служб
Инициатор запроса - клиент

Провайдер службы –

сервер, где выполняется программа от имени инициатора запроса

Реестр служб –

где прописаны все службы, где провайдер может себя зарегистрировать, а инициатор запроса получить информацию о необходимых службах
Структура системы WWW служб Инициатор запроса - клиентПровайдер службы – сервер, где выполняется программа от имени инициатора

Слайд 45Стандарты для WWW служб
SOAP – simple object access protocol
UDDI –

universal description and discovery protocol
WSDL – Web Service Description Language


Стандарты для WWW службSOAP – simple object access protocolUDDI – universal description and discovery protocolWSDL – Web

Слайд 46Протокол SOAP
Инкапсуляция различных протоколов в XML и передача с помощью

HTTP
Состоит из оболочки, заголовка и тела сообщения, элементы которых могут

быть структурированы
Так же как и HTTP состоит из запросов и ответов на них
Протокол SOAPИнкапсуляция различных протоколов в XML и передача с помощью HTTPСостоит из оболочки, заголовка и тела сообщения,

Слайд 47SOAP – RPC в пределах Интернет

SOAP – RPC в пределах Интернет

Слайд 48
Оболочка – кодировка
Заголовок – информация, которая не касается программы обработчика
Тело

– параметры запроса

Оболочка – кодировкаЗаголовок – информация, которая не касается программы обработчикаТело – параметры запроса

Слайд 49Связь SOAP с транспортным протоколом
Обычно HTTP
Метод GET
входные данные –

URI
Выходные данные – SOAP
Метод POST
Входные данные SOAP
Выходные данные

- SOAP
Связь SOAP с транспортным протоколомОбычно HTTPМетод GET входные данные – URIВыходные данные – SOAP Метод POSTВходные данные

Слайд 50XML RPC
http://www.xmlrpc.com/
Простой протокол удаленных вызовов процедур через Интернет

XML RPChttp://www.xmlrpc.com/Простой протокол удаленных вызовов процедур через Интернет

Слайд 51WSDL – аналог IDL
Описание WWW служб на языке XML
Для работы

достаточно знать только интерфейсы
XML схема, которая используется
Какие типы сообщений могут

использоваться для передачи данных
Какие операции (методы) может выполнять служба
Какой транспортный протокол может использоваться для каких сообщений
Где работает служба (на каком сервере)
Откуда служба может быть доступна (контроль доступа)
WSDL – аналог IDLОписание WWW служб на языке XMLДля работы достаточно знать только интерфейсыXML схема, которая используетсяКакие

Слайд 52WSDL – XML документ

WSDL – XML документ

Слайд 53Пример описания типов

Пример описания типов

Слайд 54Пример описания операций
Операция – функция
Сообщение – типы передаваемых аргументов и

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

Пример описания операцийОперация – функцияСообщение – типы передаваемых аргументов и возвращаемых значений для операцийТипы взаимодействий

Слайд 55Порты
Порт – набор всех операций службы, доступных по одному протоколу
Порту

соответствуют операции и типы сообщений
Операции определяются для каждого порта

ПортыПорт – набор всех операций службы, доступных по одному протоколуПорту соответствуют операции и типы сообщенийОперации определяются для

Слайд 56Привязки (binding) и службы
Привязка
связь портов с протоколом (soap)
Служба
Набор портов доступных

по разным протоколам
Разные порты службы имеют одни и те же

операции, но доступны по разным протоколам

Привязки (binding) и службыПривязкасвязь портов с протоколом (soap)СлужбаНабор портов доступных по разным протоколамРазные порты службы имеют одни

Слайд 57UDDI
Высокоуровневая инфраструктура для WWW служб
Поиск WWW служб
Регистрация WWW служб
Обеспечение надежности
Координация

(балансировка нагрузки)

UDDIВысокоуровневая инфраструктура для WWW службПоиск WWW службРегистрация WWW службОбеспечение надежностиКоординация (балансировка нагрузки)…

Слайд 58Примеры использования WWW
GRID системы – распределенные системы для обеспечения совместного

использования и координации вычислительных ресурсов, которые географически распределены
http://alien.cern.ch/
ГРИД система, в

которую входят вычислительные кластеры различных стран для расчетов по ядерной физике
Обеспечивается балансировка нагрузки, совместное использование дисковых ресурсов
Примеры использования WWWGRID системы – распределенные системы для обеспечения совместного использования и координации вычислительных ресурсов, которые географически

Слайд 59Вопросы ?

Вопросы ?

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика