Составляющие WebTutor

Архитектура системы (обязательно к прочтению)

SP-XML (платформа на которой работает WebTutor)

С точки зрения разработчика, WebTutor можно разделить на четыре составляющие:

Рассмотрим(поверхностно) каждую составляющую по отдельности.

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

Серверная часть

Серверная часть WebTutor состоит из самописного серверного языка JavaScript и встроенного в него самописного языка запросов XQuery (для получения данных из базы).

Ситуацию с серверной частью WebTutor, отлично проясняет комментарий с форума news.websoft.ru от Андрея Фирсова:

"здесь вам не тут". Товарищи, еще раз повторюсь - смотрите документацию. Это не браузерный JS, не обычный XQuery и не стандартный XML.
Здесь все "самописное". В любой версии WT.
И то, что это внешне похоже на то, что вы знаете, вовсе не означает, что оно это и есть...

Собственно, так оно и есть. Хотя для названия серверного языка используется JavaScript, а для языка запросов XQuery, кроме совпадающего названия, знакомого синтаксиса и поведения в определенных ситуациях, между ними и реальными JavaScript и XQuery мало соответствий. Они заточены под решение определенных задач в WebTutor и справляются с ними. Не ждите от них всех возможностей и поведения, как в современных версиях JavaScript и XQuery.

JavaScript

Как уже было сказано выше, хотя в названии серверного языка фигурирует JavaScript, но на самом деле это не тот серверный JavaScript, к которому все привыкли в Node.js и хотя синтаксис напоминает JavaScript, он не соответствуют современным версиям ECMAScript (ES5,ES6 итп).

Синтаксис и поведение будут в чем-то напоминать вам старые версии JavaScript, но далеко не всегда.

XQuery

XQuery - язык запросов, разработанный для обработки данных в формате XML. В WebTutor он позволяет получать данные из базы.

XQuery в WebTutor использует узкое подмножество функций реального XQuery, расширенное некоторыми дополнительными функциями. То есть ситуация такая же как и с серверным JavaScript, и XQuery имеет много ограничений по сравнению с реальным XQuery.

Клиентская часть

Клиентская часть делиться на браузерную и WebTutor Administrator.

В браузере

По умолчанию на страницах WebTutor для реализации интерфейса используется XAML(интерпретатор может различать код XAML и преобразовывать его в HTML + Ext JS), Ext JS, JQuery + подгружаются необходимые для работы .css, .js файлы.

WebTutor Administrator

Также к клиентской части относится WebTutor Administrator - интерфейс для администраторов системы, предназначен для настройки справочников и параметров системы, ведения отдельных баз данных системы. С помощью него можно много чего настроить в системе.

WebTutor Administrator доступен в браузере, либо в виде приложения в системе.

В WebTutor Administrator можно вести разработку и реализовывать свой функционал.

База данных

База данных WebTutor может располагаться в MS SQL, Oracle, в XML файлах.

Получить данные из базы можно с помощью серверного JavaScript и XQuery.

Записать данные в базу можно через функции серверного JavaScript.

Также есть вариант взаимодействия с базой данных напрямую, без использования WebTutor.

Подробнее про базы данных.

Управление сервером

WebTutor Server

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

IIS

Хотя WebTutor может работать в режиме приложения, сервиса и IIS, в продакшене, рекомендуем использовать его только в режиме IIS, так как только в этом режиме вы получите возможность гибкой настройки сервера + WebTutor сможет работать по протоколу HTTP/2.

WeTutor Administrator

Админка WebTutor с удобным интерфейсом и относительно большим функционалом.

Конфигурационные файлы

В WebTutor существует много различных конфигурационных файлов, но возможно они вам никогда не понадобятся и вам будет достаточно настроек в WebTutor Server, WebTutor Administrator и IIS.

Последнее обновление: 9/14/2018, 4:49:50 PM