ЛУЧШИЙ САЙТ ДЛЯ ВЕБ-РАЗРАБОТЧИКОВ
AppML. Уроки для начинающих

AppML История


В 1999 году Refsnes Data разработала первую версию AppML.

Уже тогда AppML был основан на передаче HTTP-запросов между веб-клиентом и веб-сервером. Позже этот метод стал известен как AJAX.

В сентябре 2000 года был начат проект по развитию для крупного норвежского заказчика. Целью проекта было преобразование огромной информационной системы (около 300 приложений) из настольного приложения Windows в современное Интернет-приложение, используя только AppML.

Система на основе AppML была запущена в 2001 году, на несколько месяцев раньше запланированного срока, как первое в мире коммерческое приложение AJAX. Проект имел огромный успех, время разработки сократилось на 75% по сравнению с обычной веб-разработкой. С тех пор были добавлены новые приложения, и теперь система охватывает более 1000 работающих приложений.

В феврале 2015 года W3Schools повторно запустила AppML как новый продукт, открытый для всех.

Цели разработки AppML:

  • Приложения AppML должны работать через Интернет;
  • Приложения AppML должны быть независимыми от платформы;
  • Приложения AppML должны использовать только стандарты Интернета (HTML, CSS, JavaScript);
  • Приложения AppML должны поддерживать различные потребности приложений;
  • Приложения AppML должны иметь самоописание;
  • Приложения AppML должны быть простыми в разработке, обслуживании и изменении;
  • Приложения AppML должны быть ориентированы на будущее.

В нижеследующих параграфах описывается исходное видение Refsnes Data (1999 г.) будущих веб-приложений.


Исполняемые файлы умрут, JavaScript будет жить

Скомпилированные исполняемые файлы (скомпилированные из таких языков, как C или Java) не могут работать на другом оборудовании.

Исполняемые файлы (EXE-файлы, объекты ActiveX и COM, DLL-файлы) - это компоненты, препятствующие разработке приложений, которые могут запускаться через Интернет.

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

Наши предложения:

Пишите свои будущие приложения, используя только HTML, CSS и JavaScript.

Убедитесь, что ваши будущие приложения работают в любом веб-браузере.


Веб-приложения станут интернет-сервисами

История полна больших, специально созданных приложений. Многие из них умерли очень быстро, потому что не смогли пережить изменения требований.

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

Приложения должны иметь возможность масштабирования от поддержки нескольких до миллионов запросов в день.

Приложения должны иметь возможность распространяться с одного сервера на многие или перемещаться между серверами, не нарушая работу приложения.

Приложения должны иметь возможность взаимодействовать с другими приложениями.

Приложения не должны содержать большой объем кода.

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

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

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

Наши предложения:

Напишите свои будущие приложения, использующие Интернет, базирующиеся на SOA (Service Oriented Architecture - Сервис-Ориентированная Архитектура).

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


Будущие приложения будет легко создавать и редактировать

Клиенты и серверы будут обмениваться данными простым и понятным способом.

Приложения не будут кодироваться, если этого можно будет избежать.

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

Описания приложений будут доступны для чтения людям.

Описания приложений будут самоописательными.

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

Наши предложения:

Используйте удобочитаемые текстовые файлы для описания услуг и предоставляйте услуги, выполняя эти описания.

Используйте текстовые файлы (например, файлы JSON) для описания приложений.

Используйте текстовые файлы (например, файлы JSON) для обмена данными.

Используйте HTML, CSS и JavaScript для выполнения приложений.


Три маленьких веб-разработчика...

Давным-давно было три маленьких веб-разработчика, разрабатывающих новый веб-сайт.

1. Первый веб-разработчик использовал AppML.

2. Второй веб-разработчик использовал свой любимый язык серверного программирования.

3. Третий веб-разработчик использовал профессиональный фреймворк корпоративной веб-разработки.

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

Второй веб-разработчик подготовил свой веб-сайт через 6 месяцев. Но WWW изменила свои требования и не была удовлетворена. Веб-разработчик не мог внести серьезных изменений в свой проект, потому что он содержал слишком много кода. Итак, он начал разработку версии 2.

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

Посмотрите, как это сделал первый разработчик.