Последние учебники веб-разработки
 

AppML Архитектура


Современные веб-архитектура

AppML сочетает в себе большинство методов уточненный и идеи современной веб-разработки.

AppML сосредоточиться на скорости, простоте и низкой стоимости:

  • Сервис-ориентированная архитектура MVC
  • Чрезвычайно низкое потребление полосы пропускания
  • Оптимизированный для облачных вычислений
  • Полное разделение содержания от представления
  • Интеллектуальное декларативное программирование
  • Быстрая и Agile Web Development
  • Высокая масштабируемость и Testable
  • Простая конфигурация и реконфигурация
  • Смарт Поддержка учетных записей пользователей и роли

Архитектура MVC

AppML использует MVC архитектуры

MVC означает Model, View, Controller

Модель описывает ваше приложение.

View отображает данные.

Контроллер управляет приложением (of course) .

Википедия: Модель, вид, контроллер

MVC

MODEL - Just JSON

Модель описывает применение.

Модель можно использовать повторно на различных аппаратных и программных платформ (Server, PC, iPhone, Tablets, etc.) .

Модель не связана с представлением или пользовательским интерфейсом (UI) .

Модель записывается в формате JSON:

Модель

{
"rowsperpage" : 10,
"database" : {
    "connection" : "localmysql",
    "sql" : "SELECT CustomerName, City, Country FROM Customers",
    "orderby" : "CustomerName"
},
"filteritems" : [
    {"item" : "CustomerName", "label" : "Customer"},
    {"item" : "City"},
    {"item" : "Country"}
],
"sortitems" : [
    {"item" : "CustomerName", "label" : "Customer"},
    {"item" : "City"},
    {"item" : "Country"}
]
}

VIEW - Просто HTML

Мнение пользовательский интерфейс (User Interface) для отображения (and input) данных.

Вид записывается в HTML и CSS:

HTML Посмотреть

<!DOCTYPE html>
<html lang="en-US">
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
<script src="http://www.w3ii.com/appml/2.0.3/appml.js"></script>
<body>

<div class="container" appml-data="local?model=model_customers">
<h1>Customers</h1>
<div appml-include-html="inc_listcommands.htm"></div>
<div appml-include-html="inc_filter.htm"></div>

<table class="table table-striped table-bordered">
<tr>
  <th>Customer</th>
  <th>City</th>
  <th>Country</th>
</tr>
<tr appml-repeat="records">
  <td>{{CustomerName}}</td>
  <td>{{City}}    </td>
  <td>{{Country}} </td>
</tr>
</table>
</div>

</body>
</html>
Попробуй сам "

CONTROLLER - Клиент и / или серверные скрипты

Сценарий клиента на веб-странице можно управлять приложением:

  • AppML может отображать данные, как определено в модели
  • AppML может отображать данные, как это определено HTML атрибутов.
  • AppML приложение может работать независимо от HTML (hidden)
  • (Необязательно) AppML может запрашивать данные модели с веб-сервера (сервер SQL)
  • пользователи (Необязательно) AppML могут редактировать данные
  • (Необязательно) AppML может передавать данные на веб-сервер

Сценарий сервер может управлять приложением с помощью:

  • Прием запросов от клиента (browser)
  • Возвращение данных клиента
  • Получение данных от клиента
  • Обновление данных на сервере
  • Заботясь о проверке подлинности и безопасности

Искусство программирования

Сохраняя размер приложений и сложность низкой, является основной проблемой всех программ.

Управление сложности компьютерного приложения, является истинным искусством программирования.


декларативное программирование

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

Кодирование Out. Вы должны описать более Что делать, меньше Как это сделать.

С AppML вы Объявить ваше приложение в модели и в представлении.

С AppML не меньше (sometimes nothing) в коде.

Википедия: декларативное программирование


Быстрая и Agile разработки приложений

Управление сложности компьютерного приложения является истинным искусством программирования.

Сохранение размера приложения и сложности под под контролем является основной проблемой всех программ.

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

AppML обеспечивает супер-быстрое прототипирование, до 100 раз быстрее, чем традиционные методы разработки.

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

Википедия: Быстрая разработка приложений

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

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

Википедия: Разработка Agile Software


Code First

Веб-приложение может быть разработан двумя различными способами:

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

2. Договор Первое: Кодирование приложения с нуля, используя полное описание требования приложения.

AppML использует наиболее рациональную концепцию: Code First.


Сервис - ориентированная архитектура (SOA)

Сервис - ориентированная архитектура (SOA) представляет собой архитектуру для создания веб - приложений.

SOA предлагает низкие затраты на разработку и высокую гибкость.

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

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


веб-сервисы

Веб - служба представляет собой интерфейс для данных, определенных с помощью URL - адреса, так же , как веб - страницы.

Веб - служба отличается от веб - страницы, только в том , как он обменивается информацией.

Типичный Web Service предоставляет только данные на веб - странице.

С AppML, HTML это пользовательский интерфейс, веб - служба предоставляет данные.

Оригинальный Web Services были разработаны , чтобы использовать стандарты XML , такие как SOAP, WSDL и UDDI.

Современные Web - сервисы , такие как AppML намного проще в использовании.

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

Преимущества веб-служб

  • Веб-сервисы представляют собой небольшие блоки кода
  • Веб-сервисы предназначены для обработки ограниченного набора задач
  • Web-сервисы использовать HTTP на основе проходные протоколы
  • Веб-службы не зависят от операционных систем
  • Веб-служба не зависит от языков программирования
  • Веб-сервисы могут подключаться различные приложения, системы и устройства
  • Web Services позволяет легко распространять информацию
  • Web Services способствует быстрой разработки приложений

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

Пример: Расписание полетов и система бронирования билетов.

Так как веб-сервисы используют HTTP, они не зависят от обеих операционных систем и языков программирования.


Облачные вычисления

Cloud Computing является расширением SOA: Application-как-услуга, хранения-как-услуга, Data-как-услуга.

Для большинства людей, Cloud Computing этого хранения данных в сети:

  • Электронные письма и календари
  • Документы и таблицы
  • Книги, заметки и списки дел
  • Музыка, фотографии и фильмы
  • Базы данных и приложения

Причины достаточно очевидны:

  • Для того, чтобы иметь доступ к данным во всем мире
  • Для того, чтобы поделиться своими данными с другими
  • Чтобы выжить аппаратные изменения или аварии

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