История 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 (сервисно-ориентированную архитектуру) на базе Интернета.
Сделайте службы приложений универсальными и гибкими и готовыми обслуживать различные типы запросов.
Будущие приложения будет легко создавать и редактировать
Клиенты и серверы будут обмениваться данными простым и понятным способом.
Приложения не будут кодироваться, если этого можно избежать.
Приложения будут создаваться и модифицироваться путем редактирования моделей, а не кода.
Описания приложений будут понятны людям.
Описания приложений будут самоописывающими.
Приложения будут писать пользователи, а не программисты.
Наши предложения:
Используйте удобочитаемые текстовые файлы для описания услуг и предоставляйте услуги, выполняя эти описания.
Используйте текстовые файлы (например, файлы JSON) для описания приложений.
Используйте текстовые файлы (например, файлы JSON) для обмена данными.
Используйте HTML, CSS и JavaScript для выполнения приложений.
Три маленьких веб-разработчика...
Жили-были три маленьких веб-разработчика, разрабатывавших новый веб-сайт.
1. Первый веб-разработчик использовал AppML.
2. Второй веб-разработчик использовал свой любимый серверный язык программирования.
3. В-третьих, использовалась профессиональная среда корпоративной веб-разработки.
Первый веб-разработчик запустил демоверсию за два дня. После совместной работы с пользователями за неделю был готов действующий прототип. И после двух недель тестирования интеллектуальный, быстрый и простой в использовании веб-сайт был готов к публикации.
Сайт второго веб-разработчика был готов через 6 месяцев. Но WWW изменила свои требования и не была удовлетворена. Веб-разработчик не мог внести серьезные изменения в свой проект, потому что он содержал слишком много кода. Поэтому он начал разработку версии 2.
Третий веб-разработчик так и не успел завершить свою работу. Профессиональная среда веб-разработки была очень сложной в использовании, очень сложной для понимания и почти невозможной для тестирования.
Взгляните, как это сделал первый разработчик .