ФОКУС
FOCUS — это язык программирования четвертого поколения (4GL), компьютерного программирования язык и среда разработки, который используется для построения запросов к базе данных . Созданный компанией Information Builders Inc., он изначально был разработан для обработки и анализа данных на мэйнфрейме IBM . Впоследствии версии для миникомпьютеров, таких как VAX и другие платформы. [1] были реализованы. [2] [3] Позже FOCUS был распространен на персональные компьютеры и (в 1997 году) на Всемирную паутину : продукт WebFOCUS .
История
[ редактировать ]Продукт FOCUS компании Information Builders начинался как альтернатива Mathematica компании RAMIS , первому языку программирования четвертого поколения (4GL).
National CSS (NCSS), поставщик систем разделения времени , лицензировал права на доступность RAMIS в своей VP/CSS . системе [4]
В какой-то момент Mathematica изменила цену лицензии. [5]
Заинтересованными сторонами выступили: [4]
- NCSS, которая продавала RAMIS (и другие продукты) для использования в своей системе разделения времени.
- Mathematica, владелец RAMIS
- Ключевые разработчики/программисты РАМИС
- некоторые остались в Mathematica
- другие ушли, чтобы основать компанию, которая стала Information Builders, известную своим продуктом FOCUS.
Отношение к другим 4GL
[ редактировать ]РАМИС был прямым предком ФОКУС.
Джеральд Д. Коэн и Питер Миттельман были основными разработчиками RAMIS во время работы в Mathematica Products Group в 1970 году. RAMIS была лицензирована Mathematica для ряда собственных клиентов (включая Nabisco и AT&T Corporation ), а также предлагалась Национальной Компания CSS , занимающаяся разделением времени. В [6] Октябрь 1975 г. [7] Коэн покинул Mathematica и сформировал Information Builders, после чего воссоздал продукт, созданный им в Mathematica, в форме FOCUS.который был очень похож на RAMIS: «те же ошибки и те же сообщения об ошибках с ошибками». [4] [8]
Синтаксис FOCUS в своих простейших элементах является почти прямым клоном синтаксиса RAMIS, имеющим сходство с различиями между различными ранними диалектами SQL. В то же время NCSS решила работать над собственным продуктом, позже получившим название NOMAD . Все три продукта процветали в 1970-х и начале 1980-х годов, причем FOCUS также предлагался на условиях разделения времени через Таймшер . [4]
Время Mathematica истекло в середине 80-х, и NCSS также потерпела неудачу, став жертвой революции персональных компьютеров, которая устранила коммерческое разделение времени.
RAMIS была продана ряду компаний, в конечном итоге перейдя к Computer Associates . NOMAD постигла та же участь. Компания FOCUS под руководством Коэна продолжала процветать, расширяя линейку своей продукции.
Слабая конкуренция с SAS , [9] FOCUS никогда не достиг такой же степени массового внедрения, возможно, потому, что он имел только базовые аналитические и статистические функции и не имел широкого спектра специализированных аналитических инструментов, которые сделали SAS стандартом в таких областях, как фармацевтические клинические испытания . Вместо этого FOCUS сосредоточился на исключительной гибкости импорта и экспорта данных, а также на специальной отчетности для конечных пользователей .
Интеграция
[ редактировать ]Пакеты программного обеспечения, с которыми FOCUS связан и интегрирован, включают:
Конкуренты в области бизнес-аналитики
[ редактировать ]Среди конкурентов программного обеспечения для бизнес-аналитики : [12]
Описание
[ редактировать ]Хотя FOCUS напоминает другие инструменты доступа к данным и анализа, такие как SQL и SAS , он также включает в себя функции отображения и представления отчетов и диаграмм. Он автоматизирует процесс идентификации файлов в операционной системе , открытия входного файла, чтения следующей записи, открытия выходного файла, записи следующей записи и закрытия файлов. Эта базовая операция позволяет пользователю/программисту сконцентрироваться на деталях работы с данными в каждой записи, фактически работая почти полностью в неявном программном цикле , который выполняется для каждой записи, что-то вроде RPG (генератора программ отчетов) . Другие процедуры работают с набором данных в целом, например печать или статистический анализ , и просто требуют от пользователя/программиста идентификации набора данных.
По сравнению с языками программирования общего назначения , эта структура позволяет пользователю/программисту быть менее знакомым с техническими деталями данных и тем, как они хранятся, и относительно лучше знаком с информацией, содержащейся в данных. Это стирает грань между пользователем и программистом, привлекая людей, чья работа связана с бизнесом или исследованиями, а не с информационными технологиями . Это, в свою очередь, имеет обоюдоострый результат: позволяет быстро отвечать на вопросы бизнеса или исследований, даже на те, которые требуют нескольких итераций , чтобы перейти от первоначальных результатов к окончательному ответу; но также может способствовать созданию большого количества плохо написанного и/или трудно поддерживаемого исходного кода .
Описание основного файла (MFD)
[ редактировать ]Уникальной в то время особенностью было то, что FOCUS дает пользователю возможность создать файл описания данных (называемый «основным описанием файла»). [13] [14] обращение к реальному файлу данных или даже к нескольким различным файлам описания данных, обращающимся к одному и тому же файлу данных по-разному, вместо обычной практики жесткого кодирования файловой структуры в программе.
Таким образом, к файлам любой структуры из любого источника можно получить доступ или создать их разными способами, устраняя большую часть манипуляций с данными (например, конкатенацию или синтаксический анализ), которые иногда требовались в других более ранних языках программирования. Например, пользователь может получить доступ к одному и тому же фактическому файлу данных (чтение или запись), поскольку каждая запись представляет собой текстовую строку длиной 80 байт или как 40 2-значных числовых полей, а также 10 8-байтовых чисел с плавающей запятой и т. д. просто перепишите соответствующее описание основного файла по мере необходимости.
Образцы
[ редактировать ]- (партия)
- ПЕЧАТАТЬ ФАМИЛИЮ ИМЯ КОД ОБЛАСТИ ТЕЛЕФОН ПРИМЕЧАНИЯ
- ПЕЧАТЬ НАЗВАНИЯ ПРОЕКТА И СТОИМОСТИ ПРОЕКТА ПО CUSTNAME ПРОМЕЖУТОЧНАЯ СТОИМОСТЬ ПРОЕКТА ПО CUSTID
Вторая команда создаст отчет с заголовками CUSTNAME CUSTID ИМЯ ПРОЕКТА СТОИМОСТЬ ПРОЕКТА
- за которым следует одна или несколько строк подробностей, за которыми следует
- _TOTAL_ CUSTNAME xxxxx (и $z,zzz.zz для этого CUSTNAME)
- В нижней части отчета будет указана общая сумма по ВСЕМ проектам.
- (интерактивный)
- ИЗМЕНИТЬ ФАЙЛ PHONEIDX
- ПОДСКАЗКА КОД РАЙОНА ТЕЛЕФОН ФАМИЛИЯ ИМЯ ПРИМЕЧАНИЯ
- СООТВЕТСТВИЕ КОДУ РАЙОНА PHONUM
- ПРИ МАТЧЕ ОТКЛОНИТЬ
- НА NOMATCH ВКЛЮЧАЕТСЯ
- ДАННЫЕ
Существуют ключевые слова, облегчающие изменение (или удаление) существующих данных, а также можно настроить подсказки и сообщения об ошибках в интерактивном сеансе.
ВебФОКУС
[ редактировать ]В 1997 году [15] была представлена веб-версия FOCUS под названием «WebFOCUS», основанная на базе доступа к данным и отчетности FOCUS, [16] расширение их до визуально ориентированной парадигмы тонкого клиента, доступной из любого веб-браузера .
Язык WebFOCUS имеет как «процедурную», так и «непроцедурную» командную структуру. Первый предназначен для более немедленного выполнения, тогда как вторые «помещаются в стек памяти для последующего выполнения». [17]
Ссылки
[ редактировать ]- ^ включая UNIX
- ^ «FOCUS 4GL от Information Builders» . Компьютерный мир . 5 марта 1990 года.
- ^ «Фокус информационных строителей / VAX» . Компьютерный мир . 31 марта 1986 г. с. 52.
- ^ Перейти обратно: а б с д «РАМИС и НОМАД — Национальный CSS» (PDF) . 20 мая 2005 г.
- ^ Ник Роулингс (17 марта 2014 г.). «История NOMAD: язык четвертого поколения». IEEE Анналы истории вычислений . 36 : 30–38. дои : 10.1109/MAHC.2014.10 . S2CID 19419272 .
- ^ 1970 или
- ^ «Краткая история языков четвертого поколения» .
- ^ также согласно книге Ника Роулингса «Краткая история языков четвертого поколения».
- ^ Консультант написал: «Когда я исследовал возможность перевода SAS в продукт WebFOCUS BI (на основе языка программирования 4GL), я лично считал некоторые из следующих функций SAS камнями преткновения», и он перечислил 11 пунктов. «Программное обеспечение для бизнес-аналитики» . 30 апреля 2012 г.
- ^ «Укрепление связи WebFocus-Excel» . Компьютерный мир . 28 мая 2007 г.
- ^ «Строители информации интегрируют AJAX» . Информационная неделя . 9 марта 2006 г.
- ^ Стив Лор (20 мая 2007 г.). «Интеллектуальный анализ данных становится мейнстримом в поисках прибыли» . Нью-Йорк Таймс .
- ^ «ОПИСАНИЕ ОСНОВНОГО ФАЙЛА (MFD)» .
- ^ «Синопсис FOCUS: Определение файла описывает компоненты основного описания файла. Аудитория Этот курс предназначен для специалистов по обработке данных и бизнес-профессионалов, которые используют FOCUS». «ФОКУС: Определение файла» .
- ^ "Введено в 1997 году..." «ВебФОКУС» .
- ^ «ВебФокус С/390» . Компьютерный мир . 9 июня 1997 года
. ...включает в себя весь функционал... Фокус
- ^ «Программное обеспечение BI – WebFOCUS» . 13 ноября 2011 г.