JADE (язык программирования) - JADE (programming language)

Логотип Jade Software Corporation

ДЖЕЙД проприетарный объектно-ориентированный Платформа для разработки и развертывания программного обеспечения из Новой Зеландии. Jade Software Corporation, впервые выпущенный в 1996 году.[1][2] Он состоит из языка программирования JADE, Интегрированная среда разработки и отладчик, интегрированный сервер приложений и база данных объектов система управления.

Разработан как сквозная среда разработки, позволяющая кодировать системы на одном языке из сервер базы данных вниз к клиенты, он также предоставляет API для других языков, включая .NET Framework,[3] Ява, C /C ++ и Веб-сервисы.

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

Язык

По синтаксису JADE очень похож на Паскаль; его синтаксис основан на языке Модула-2, который был получен из Паскаля. Хотя он включает инновации, отсутствующие в Pascal или Modula-2, в нем отсутствуют некоторые функции других современных объектно-ориентированных языков, таких как C # и Java.[4]

JADE может импортировать и запускать LINC 4GL программ и изначально была его основной ролью.

Модель программирования

Как и все другие популярные языки программирования, используемые для создания программного обеспечения, управляемого базами данных, JADE полностью объектно-ориентированный. JADE был разработан с учетом всех наиболее важных функций объектно-ориентированного программирования, но не поддерживает перегрузку методов или операторов, и до Jade 2018 не хватало параметризованных конструкторов.[4]

Уроки в JADE проводятся вместе в схемы. Схемы служат той же цели, что и Пакеты Java или пространства имен в .NET, но имеют иерархию и наследуют классы от суперсхем. Это становится полезным, особенно при программировании с использованием модель-представление-контроллер методологии, поскольку классы модели могут быть помещены в одну схему, тогда классы контроллера и представления могут быть построены поверх классов модели в подсхеме.

Структура программы

Программы JADE разрабатываются с использованием пользовательского интерфейса, который позволяет программистам визуально создавать классы и определить их свойства и методы. Вместо того, чтобы размещать методы в больших файлах, программисты выбирают метод, который они хотели бы отредактировать, и отображается только код этого конкретного метода. Кроме того, вместо того, чтобы компилировать весь код программы сразу, в JADE каждый метод компилируется индивидуально, как только метод завершается, что означает, что код можно проверить немедленно.

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

особенности

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

База данных объектов

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

Различий между манипулированием временными и постоянными объектами очень мало, поэтому JADE делает это появиться для программиста, как если бы все объекты во всей базе данных были в локальной памяти. В большинстве случаев объектно-ориентированная база данных JADE используется в многопользовательской системе, и поэтому JADE создает для программиста впечатление, будто все объекты в базе данных хранятся в общей памяти, к которой могут получить доступ все пользователи, подключенные к системе. , даже с разных компьютеров.

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

База данных JADE по своей сути объектно-ориентирована, и КИСЛОТА -соответствует и имеет все стандартные функции, такие как атомарные транзакции, блокировка, откат, восстановление после сбоя и возможность сохранить один или несколько вторичные серверы баз данных синхронизируется с основной базой данных для резервного копирования, аварийного восстановления и повышения производительности.

Чтобы взаимодействовать с реляционными базами данных для отчетности, бизнес-аналитика и хранилище данных целей JADE с 2010 года предоставляет «Службу реляционного населения», которая позволяет автоматически реплицировать объекты из собственной объектно-ориентированной базы данных в один или несколько реляционная база данных. Эта функция поддерживает Microsoft SQL Server версий 2000, 2005 и 2008.

Трехуровневая модель

Программное обеспечение, управляемое базой данных, часто использует трехуровневый методология с разделением приложений на три уровня - хранение, обработка и представление данных. На уровнях хранения и обработки данных системы JADE представляют собой совокупность взаимодействующих серверов, называемых узлы, и на каждом уровне может быть задействовано несколько узлов. Каждый тип узла имеет свое имя, и все они способны манипулировать объектами и выполнять бизнес-логику. Набор узлов может быть развернут на одной или нескольких машинах. Серверы баз данных управляют хранением данных, а также могут выполнять бизнес-логику, в то время как серверы приложений обрабатывают их. В трехуровневой модели клиенты представления предоставляют пользовательский интерфейс. JADE также предоставляет двухуровневый клиент, сочетающий в себе возможности сервера приложений и клиента представления. Традиционно эти три уровня создавались бы путем объединения трех программ и их взаимодействия для формирования одной системы. Подобное разделение различных программ дает много преимуществ, главное из которых состоит в том, что система становится масштабируемой, то есть повышение мощности системы требует простого добавления дополнительных узлов.

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

Это отличается для приложений JADE, поскольку они кодируются как одно приложение от начала до конца. Создавая приложение JADE, программист может думать, как если бы он создавал программу, которая будет работать на сервере базы данных - как если бы все хранение, обработка и представление данных происходили на одном компьютере. Когда программа работает на трех уровнях, JADE автоматически знает, что нужно запускать весь код по умолчанию на сервере приложений и отправлять запросы к базе данных на сервер базы данных, а информацию пользовательского интерфейса - на клиент представления. Однако программисту очень легко переключить место, в котором выполняется конкретный метод, и переместить его на другой уровень, изменив подпись метода. Из-за этого решение о том, где должен запускаться конкретный фрагмент кода, может быть принято на поздних этапах цикла разработки, а рефакторинг кода для запуска в разных частях системы в конечном итоге становится намного проще, поскольку JADE позволяет -окончить разработку программного обеспечения.

Типы клиентов

Программисты могут позволить трем различным типам клиентов подключаться к системе JADE. Называются эти три типа клиентов:

  • JADE формы
  • HTML-документы
  • Веб-сервисы

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

JADE формы

Как следует из названия, приложения JADE Forms состоят из форм. Клиенты должны подключаться через JADE Smart Тонкий клиент или Standard Client, чтобы иметь возможность запускать приложения, использующие JADE Forms.

Smart Thin Client работает путем подключения к серверу приложений, который обычно выполняет всю обработку от имени Smart Thin Client, то есть тонкий клиент должен отвечать только за отображение форм и ввод данных. Это означает, что компьютер, на котором работает тонкий клиент, не обязательно должен быть очень мощным и не требует быстрого сетевого подключения, поскольку он не загружает данные из базы данных - тонкие клиенты JADE часто работают через коммутируемое соединение. По этой причине они называются тонкими клиентами, поскольку для работы этих клиентов не предъявляются высокие требования к вычислительной мощности.

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

Преимущества использования JADE Forms:

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

К недостаткам можно отнести:

  • Невозможно охватить мировую аудиторию, как это возможно во всемирной паутине.

Однако у JADE Forms есть интересный поворот. На самом деле можно запустить приложение JADE Forms через веб-браузер, изменив его режим на Интернет-доступ. Когда это происходит, JADE автоматически генерирует HTML-код, чтобы страницы напоминали формы и контроль, без каких-либо изменений в коде. Это очень быстрый способ для программистов, не разбирающихся в HTML и других веб-технологиях, доставить программу через Интернет.

HTML документы

JADE поддерживает развертывание приложений в Интернете с помощью функции HTML-документов. Они работают очень похоже на ASP.NET, где разработчики создают шаблоны HTML-страниц и оставляют части в шаблоне для заполнения программой.

Преимущества использования HTML-документов:

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

К недостаткам можно отнести:

  • Когда приложения JADE используют HTML-документы, они больше не используют одну и ту же технологию от начала до конца. Проверка на передней панели системы может выполняться, например, с помощью JavaScript.
  • Передача части обработки внешним клиентам уже не так проста и безопасна.

Веб-сервисы

Веб-сервисы используются, чтобы позволить различным программам общаться друг с другом из удаленных мест в объектно-ориентированной форме. Пользователи-люди не могут получить доступ к веб-службам напрямую. Одно из применений Web-сервисов с JADE - позволить другим технологиям, таким как .NET или Java, использовать JADE в качестве серверной объектно-ориентированной базы данных. Веб-службы также позволяют системам JADE взаимодействовать со службами, предоставляемыми другими системами, не относящимися к JADE.

Совместимость

В дополнение к Web-сервисам JADE также может взаимодействовать с другими программами через языковые API (включая .NET, Java, C / C ++), вызовы DLL, объекты ActiveX / COM и сборки .NET. Это позволяет другим программам получать доступ к объектам и выполнять методы и может использоваться для предоставления другого интерфейса приложению JADE. JADE 6.2 предоставил Java API, интеграцию .NET Assembly и возможность запускать Smart Thin Clients на устройствах Windows Mobile. JADE 6.3 предоставляет API для языков .NET.

Многоязычие

JADE изначально поддерживает многоязычный программы. Это делается несколькими способами:

  • Строки можно пометить как переводимый, что означает, что они будут меняться в зависимости от текущего языка.
  • Для каждого языка можно создать множество версий одной и той же формы. Это означает, что интерфейсы могут полностью отличаться от одного языка к другому.
  • У разработчика есть методы доступа к текущему локаль системы и поэтому они могут реализовать свои собственные языковые функции.

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

Портативность

В настоящее время приложения JADE можно запускать только в Windows, поддержка Linux прекращена. JADE 6.2 позволяет интеллектуальным тонким клиентам и специализированному стандартному клиенту работать на устройствах Windows Mobile.

Примеры кода

В этом разделе приведены несколько коротких примеров кода JADE.

Привет мир!

Это "Привет мир!" код в JADE:

Привет мир();начать   приложение.msgBox ("Привет мир!", "Привет мир!", MsgBox_OK_Only + MsgBox_Information_Icon);конец;

или

Привет мир();начать   записывать "Привет мир!";конец;

История

ДЖЕЙД была задумана сэром Гилберт Симпсон и в настоящее время разрабатывается Jade Software Corporation.[5]

Первой версией JADE была JADE 3, выпущенная в сентябре 1996 года.

Текущая версия - JADE 2018, выпущенная в декабре 2018 года, заменившая Jade 2016.[6]

Смотрите также

использованная литература

  1. ^ "Джейд - кто мы". Jade Software Corporation.
  2. ^ "Jade Software поставляет Jade 7.1". ZDnet. Получено 21 декабря 2019.
  3. ^ "Совок независимых новостей - JADE 6.3". Получено 21 декабря 2019.
  4. ^ а б ДЖЕЙД: непонятный язык программирования месяца
  5. ^ Jade Software Corporation
  6. ^ «Скачать JADE 2018»,

внешние ссылки