Helix (база данных)

редактировать

Helix - это система управления базами данных для Платформа Apple Macintosh, созданная в 1983 году. Helix использует графический «язык программирования » для добавления логики в свои приложения, позволяя непрограммистам создавать сложные приложения.

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

Содержание
  • 1 История
  • 2 Описание
  • 3 Ограничения визуального программирования Helix
  • 4 Ссылки
  • 5 Внешние ссылки
История

Первоначально создано Odesta Corporation из Нортбрука, штат Иллинойс, в 1983 году на оригинальном Macintosh, Helix дебютировал с восторженными отзывами, когда был впервые выпущен в конце 1984 года.

В то время Mac поддерживал только 440kB гибкие диски в качестве хранилища. Сначала пользователи запускали Helix с дискеты с установленной Helix на «системном диске», на котором операционная система жила до начала эпохи хранения на жестких дисках. Эта конфигурация оставляла мало места для приложений или данных. Предполагалось, что пользователи добавят вторую дискету для любого вида реального использования, с ОС и Helix на одной дискете, а данными - на другой. Несмотря на эти первоначальные ограничения, Helix уже была очень мощной и полностью реляционной базой данных, которая легко переносилась по мере того, как машины становились все быстрее и мощнее, а варианты хранения эволюционировали до сложных инструментов, которые сегодня считаются само собой разумеющимися.

В мае 1986 года Odesta выпустила Double Helix . Основной новый набор функций позволял создавать собственные меню и строки меню, в результате чего создавались «автономные» приложения. Для сравнения: исходная версия Helix создавала приложения, которые явно работали в Helix, так же как документ Microsoft Word явно работает «внутри Word». Выпущенный как часть более крупного пакета программного обеспечения, пакет Helix также включал автономную версию среды выполнения, известную как RunTime Helix, которая позволяла пользователям запускать приложения Double Helix без полной установленная версия, а также MultiUser Helix, работающая в режиме клиент-сервер.

Обновление линейки продуктов Helix было непрерывным в течение 80-х годов, но компания потратила огромное количество времени и денег на разработку версии, известной как Remote Helix, которая использовала базовую систему разработки Helix. поверх баз данных на основе VAX. Идея заключалась в том, чтобы предложить Mac-подобный опыт на системах «big iron », что было распространенной темой в начале 1990-х. Компания также выпустила ряд связанных инструментов, GeoQuery и Data Desk, для анализа баз данных. Однако вскоре средний Mac смог превзойти миникомпьютер, популярность VAX пошла на убыль, и продукт так и не добился большого успеха.

В 1992 году Odesta распалась, и были выделены оригинальные приложения Helix. Double Helix вновь появилась как Helix Express на Helix Technologies, позиционируясь как лидер по производительности, а не как «простой в использовании». К сожалению, материнская компания оказалась втянутой в несвязанную, но дорогостоящую судебную тяжбу, и Helix зачахла. В 1998 году компания Helix Technologies была приобретена компанией Chip Merchant, поставщиком памяти из Сан-Диего, который в 2000 году выпустил крупное обновление, добавив возможности TCP / IP в Helix Client / Server и значительно улучшив производительность всей линейки продуктов. Однако падение цен на память и спад экономики в совокупности привели к банкротству The Chip Merchant в 2002 году, отправив Helix в юридическое состояние. Он был куплен в 2004 году двумя людьми, которые руководили его повседневной деятельностью, и при финансовой поддержке неназванного бизнесмена и давнего пользователя Helix образовали новую компанию: QSA ToolWorks .

QSA вернула соавтора Helix в лоно Helix, а позже вернула первоначального архитектора MultiUser Helix. Эта новая команда менеджеров и программистов, получившая название Helix Recovery Team, приступила к работе по переписыванию продуктов Classic Helix для работы под Mac OS X. Сервер OS X Helix вместе с тремя встроенными инструментами диагностики и обслуживания был выпущен в декабре 2005 года.

Месяц спустя Apple анонсировала первые продукты, основанные на их переходе с PowerPC на Процессоры Intel, в результате чего QSA пришлось «переключить передачи» и начать процесс преобразования своего кода в формат Universal Binary. Это вызвало преобразование из CodeWarrior IDE в Xcode, после чего они выпустили собственные версии Intel для своих трех «конечных пользователей » товары. Ранние версии (известные как «предварительные версии») были неполными и нестабильными, но частые обновления (пять только в 2008 году) решали эти проблемы. Еще девять обновлений в 2009 и 2010 годах были посвящены дополнению набора функций, устранению оставшихся ошибок и повышению производительности.

В то же время QSA начала работу над переносом Helix IDE (известной как «Helix RADE») в OS X. Первоначально объявленный в декабре 2009 года проект носил кодовое имя Europa, как косвенную ссылку. к фильму 2010. В июне 2011 года QSA начала поставки ″ Предварительных выпусков ″ - версий с некоторыми, но не всеми функциями, перенесенными на OS X. Перенос функций продолжился до июня 2013 года.

Описание

Проект Helix известен как Коллекция, «документ», созданный Helix RADE (что означает «Среда быстрой разработки приложений»). Он представлен в системе своего рода «псевдо-рабочим столом», похожим на Macintosh Finder. Коллекция может содержать тысячи отдельных баз данных (также известных как отношения или таблицы). Приложения Helix открывают только одну коллекцию за раз. Однако можно приобрести лицензии, чтобы разрешить одновременный доступ к многочисленным коллекциям, ограниченный, главным образом, доступной памятью.

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

В Отношении создаются таблицы базы данных (группы связанных данных). Отношения содержат поля для определения типов данных, счеты для определения отношений между данными и создания информации, которую сами по себе поля не могут представить, индексы для организации данных и повышения производительности, запросы для поиска данных, «шаблоны» для визуальной структурирования информации и для ввода, изменения, удаление и печать из «Представлений», которые объединяют шаблоны, запросы и индексы, чтобы предоставить пользователю доступ к информации и контроль над ней.

Счеты используют полностью графическую систему для создания расчетов. Вы описываете желаемый расчет, перетаскивая значки, представляющие операции и поля, в окно редактора счеты, а затем размещаете их в диаграмме потока данных. Например, чтобы сказать «имя, за которым следует пробел, за которым следует фамилия», вы перетаскиваете значок «за которым следует», затем перетаскиваете поле «имя» в его первую часть и устанавливаете символ пробела в качестве второй части; затем вы перетаскиваете второй значок «за которым следует», вставляете стрелку вывода из первого в первую часть второй и перетаскиваете поле «фамилия» во вторую часть.

Helix RADE работает в двух режимах: режиме разработки и режиме пользователя. В пользовательском режиме коллекция Helix открывается в одной из определенных полос пользовательского меню, что позволяет пользователю использовать базу данных, как любое другое приложение. Режим «Дизайн» позволяет разработчику (или опытному пользователю) изменять дизайн базы данных, добавлять поля, создавать новые отчеты и т. Д.

Несмотря на то, что они предназначены для упрощения программирования, иконические языки программирования часто «упускают из виду»: программирование сложно не потому, что вам нужно печатать, а потому, что сложность очень быстро достигает уровня, когда проект больше не может быть понят. Теоретически графический язык может помочь значительно снизить эту сложность (см. Примеры в преднамеренное программирование ). В некоторых случаях это так, но во многих случаях они усугубляют проблему. Helix - очень щадящий инструмент, позволяющий использовать множество маршрутов к одному и тому же результату. В руках неквалифицированного пользователя, как и в случае любого другого инструмента, сложные вычисления могут быстро стать громоздкими, требуя, чтобы программист имел большой монитор (или два) для эффективной работы. Однако опытные пользователи находят его визуальный подход экономящим время и освобождающим с некоторыми серьезными ограничениями.

Несмотря на то, что Helix достаточно хорошо разбирается в работе с базами данных малого и среднего размера, общая проблема заключается в том, что на протяжении большей части своего жизненного цикла он работает только в среде совместной многозадачности Классическая Mac OS, что делает ее нестабильной для больших баз данных. Хотя сам язык программирования имеет масштабируемость, необходимую для создания сложных баз данных, неспособность надежно работать в среде 24/7 относит Helix к рабочим группам из 100 или менее пользователей. Однако эти ограничения быстро становятся историей. QSA выпустила версию своего Helix Server для OS X в декабре 2005 г. и развернула остальную часть своей линейки продуктов в версиях OS X в 2006 и 2007 гг.

Для тех, кто знаком с Helix, экономия времени на разработку может быть значительным. По оценке одного эксперта, который также является ведущим инструктором / разработчиком Microsoft Access, в зависимости от размера проекта проект Helix может быть завершен в 30-70% случаев, как и тот же проект Access. Экономия достигается, в частности, за счет отсутствия «языка» программирования, а значит, устранения всех синтаксических ошибок. Поскольку Helix сама по себе не позволяет разработчику совершать синтаксические или программные ошибки, остальные источники проблем связаны с ошибками в бизнес-логике. Все языки сталкиваются с этой проблемой, но Helix еще раз смягчает трудность отслеживания проблем из-за своей объектной и графической природы. Поскольку все объекты связаны (через значки, а не через кодирование), система «знает», какие объекты используются другими объектами и каким образом, и упрощает отслеживание ошибок бизнес-логики, а также предоставляет простой метод определения всего, что является собирается затронуть предлагаемое изменение любого объекта.

Ограничения визуального программирования Helix

В Helix весь код должен быть составлен графически - таким образом, конструкция if..then..else создается с использованием виджетов типа блок-схемы, таких как ромбики решений, а петли реализованы с помощью соединителей.

Хотя визуальное программирование Helix, возможно, легче освоить новичкам (поскольку оно использует парадигму блок-схем, интуитивно понятную нетехническим специалистам), оно может стать утомительным, когда объем написанного кода становится значительным, особенно для человека, который может писать код намного проще и удобнее, чем если бы его заставляли перетаскивать значки из палитры.

С этой целью, когда Helix RADE был обновлен для работы на Intel Mac, был добавлен «язык выражений счеты», чтобы предоставить эту возможность тем, кто в ней нуждался.

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

Ссылки
Внешние ссылки
Последняя правка сделана 2021-05-23 05:46:03
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте