Jump to content

Табличное программирование

Таблично-ориентированное программирование ( TOP ) — это парадигма программирования, ориентированная на данные (в отличие от ориентированной на код), часть парадигмы, ориентированной на данные.

Существует три основных подтипа таблично-ориентированного программирования:

  • ТОП-языки общего назначения со встроенными таблицами ( xBase )
  • Таблицы
  • Языки реляционных баз данных: табличные языки, специфичные для предметной области, часто на удаленном сервере, например SQL.

Эпоха мэйнфреймов: 1960–1978 гг.

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

В ту эпоху таблично-ориентированное программирование называлось программированием таблиц решений .

Самая ранняя известная ссылка на программирование таблицы решений - DETAB-X, [1] в октябре 1962 года. Это привело к появлению таких языков, как Filetab в конце 60-х, потомки которого продолжили свое существование в 70-х и 80-х годах.

Поток электронных таблиц TOP, похоже, начался в 1969 году с LANPAR. [2]

Концепция реляционной базы данных была определена Э. Ф. Коддом из IBM в 1970 году.

Эпоха ПК: 1978–1995 гг.

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

TOP-языки общего назначения в ту эпоху, когда парадигма вообще была обозначена, иногда называли языками, ориентированными на данные . Основными языками в ту эпоху были семейство xBase (включая Clipper и более поздний xHarbour ) и семейство FoxPro .

Это также была эпоха растущей популярности электронных таблиц. Начиная с выпуска VisiCalc в 1979 году и вплоть до Lotus 1-2-3 и распространения Microsoft Excel , электронные таблицы следовали за ростом популярности персональных компьютеров.

В это время были выпущены ранние версии Oracle (с 1977 г.), Ingres (1980-е гг.) и других систем управления реляционными базами данных (СУБД).

Эпоха Web 1.0: 1995–2008 гг.

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

В эпоху Web 1.0 универсальный поток TOP вышел из употребления. Причины были двоякие. Во-первых, эти языки не стали извлекать выгоду из Интернета так, как это сделали другие, такие как Java. Вторым стал рост популярности объектно-ориентированного программирования. В то время как языки, ориентированные на код, породили объектно-ориентированных потомков (например, от C до C++ и др., от Lisp до CLOS), языки TOP так и не сделали этого. Хотя у них были превосходные средства обработки данных, их средства обработки кода не могли конкурировать с объектно-ориентированными языками.

Одним из факторов, способствовавших этому, была пропагандистская деятельность Брайса Джейкобса (использующего псевдонимы Tablizer и TOPMind); оппозиционный характер этих взаимодействий привел к тому, что TOP был отвергнут как низший по сравнению с ООП (в то время как концепции TOP могут быть весьма полезны в контексте объектно-ориентированного программирования), а его многочисленные обоснованные положения были отвергнуты теми, кто не хотел тратить время на расшифровку. его очки. Однако он, похоже, был первым, кто использовал название «таблично-ориентированное программирование», которое является наиболее точным обозначением этой парадигмы.

Это была эпоха консолидации электронных таблиц; Microsoft Excel стал стандартом де-факто и в конечном итоге остался без конкурентов.

Что касается реляционных баз данных, это была эпоха, когда MySQL (1995 г.) и PostgreSQL (1996 г.) стали популярными.

Эпоха Web 2.0: 2008–2022 гг.

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

В эту эпоху все необходимое таблично-ориентированное программирование было перенесено в СУБД, и было разработано стандартное разделение задач на «интерфейс», «бэкэнд» и «базу данных».

Электронные таблицы продолжали работать, как и в предыдущую эпоху, за исключением Интернета. Наконец у Excel появился конкурент: Google Sheets .

Языки TOP общего назначения имеют много общего с другими языками общего назначения.

Основная особенность TOP заключается в том, что таблицам отводится видное место в языке программирования.

Сравнение ТОП-стримов
Текст заголовка Универсальные ТОП Таблицы Реляционные базы данных Комментарии
Таблицы, известные на языке Да Да Да
Код, хранящийся в таблицах Да Да Нет
Удобно управляет множеством таблиц Да Нет Да
Словари данных Да Нет Да
Тип столбца Именованный секвенированный Именованный
Тип строки секвенированный секвенированный секвенированный
Единый интерфейс для нескольких серверов Да Нет Вроде Если весь SQL-код совместим с ANSI, то он предназначен для СУБД, но не для других бэкэндов (например, в памяти, CSV , JSON ).

Шаблоны проектирования

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

Таблицы решений

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

Таблицы решений — это часто используемый шаблон, особенно в TOP-языках общего назначения. Таблица решений — это таблица со столбцами (обычно несколькими), которые представляют входные данные, и столбцами (обычно единичными, но многие из них могут быть множественными), которые представляют выходные данные. Каждый набор входных данных уникален, а строки таблицы должны охватывать все возможные комбинации входных данных.

Контрольные таблицы

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

Управляющие таблицы представляют собой расширение таблиц решений; вместо выходных столбцов у них есть код, хранящийся в таблице. Когда выбрана строка для этого решения, запускается код, хранящийся в таблице.

ТОП языков

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

ТОП языков общего назначения

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

Категория:Программное обеспечение для работы с электронными таблицами

Реляционные базы данных

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

Категория:Системы управления базами данных

  1. ^ Перейти обратно: а б Что такое ДЕТАБ-Х? , Соломон Л. Поллак, октябрь 1962 г.
  2. ^ «Рене Пардо и Реми Ландау представляют LANPAR, первую коммерческую электронную таблицу: история информации» . www.historyofinformation.com .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 9a9ee3cd2fa6591479e5d2e5bf3d13c7__1722890820
URL1:https://arc.ask3.ru/arc/aa/9a/c7/9a9ee3cd2fa6591479e5d2e5bf3d13c7.html
Заголовок, (Title) документа по адресу, URL1:
Table-oriented programming - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)