Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Gambas - это объектно-ориентированный диалект языка программирования BASIC , а также сопровождающая его интегрированная среда разработки . Предназначен для работы на Linux и других Unix-подобных компьютер операционных систем , [3] его имя является рекурсивный акроним для G Ambas lmost M Eans Bas IC . Гамбас также означает креветки на испанском , французском и португальском языках. языки, на которых созданы логотипы проекта.

История [ править ]

Gambas 1.0.15 под управлением KDE

Gambas был разработан французским программистом Бенуа Минизини , и его первая версия вышла в 1999 году. Бенуа вырос на языке BASIC и решил создать свободную среду разработки программного обеспечения, которая могла бы быстро и легко создавать программы с пользовательским интерфейсом. [2]

Версии Gambas 1.x имели интерфейс, состоящий из нескольких отдельных окон для форм и диалогов IDE, аналогично интерфейсу более ранних версий GIMP . Он также мог разрабатывать приложения только с использованием Qt и был больше ориентирован на разработку приложений для KDE . [4] Последним выпуском версий 1.x была Gambas 1.0.19.

Гамбас 2.7 с русским интерфейсом

Первая из версий 2.x была выпущена 2 января 2008 года после трех-четырех лет разработки. В нем был произведен значительный редизайн интерфейса, теперь все формы и функции встроены в одно окно, а также внесены некоторые изменения в синтаксис Gambas, хотя по большей части сохранена совместимость кода. Он включал в себя важные обновления существующих компонентов Gambas, а также добавление некоторых новых, таких как новые компоненты, которые могли использовать GTK + или SDL для рисования или использовать ускорение OpenGL . Версии Gambas 2.x могут загружать и запускать проекты Gambas 1.x со случайной несовместимостью; то же самое верно для Gambas от 2.x до 3.x, но не от Gambas с 1.x до 3.x.

Следующая крупная итерация Gambas, версии 3.x, была выпущена 31 декабря 2011 года. [5] Тест производительности 2015 года, опубликованный на сайте Gambas, показал, что скрипты Gambas 3.8.90 в разной степени быстрее, чем Perl 5.20.2 и последняя на тот момент версия Python 2.7.10 во многих тестах. [6]

Особенности [ править ]

Gambas 2.7.0 работает в Fedora Linux с Blackbox

Gambas разработан для создания графических программ с использованием Qt (в настоящее время Qt 4.x или 5.x) или инструментария GTK + (GTK 3.x также поддерживается с версии 3.6.0); Gambas IDE написана на Gambas. [7] Gambas включает конструктор графического интерфейса для помощи в создании пользовательских интерфейсов, но также может создавать приложения командной строки [8], а также текстовые пользовательские интерфейсы с использованием набора инструментов ncurses . [9] Среда выполнения Gambas необходима для запуска исполняемых файлов.

Функциональность обеспечивается множеством компонентов, каждый из которых можно выбрать для предоставления дополнительных функций. [10] Рисование может быть предоставлено с помощью наборов инструментов Qt и GTK + с дополнительным компонентом, предназначенным для переключения между ними. [11] Рисование также может быть предоставлено через простой слой DirectMedia (изначально версия 1.x, с добавлением 2.x начиная с версии 3.7.0) [12], который также может использоваться для воспроизведения звука через отдельный звуковой компонент ( компонент для спецификации OpenAL ). Поддержка ускорения графического процессора доступна через OpenGL.компонент, а также другое оборудование, функционально обеспечиваемое различными другими компонентами. [11] Есть также компоненты для решения других специализированных задач. [10]

Один из примеров работы внутри Gambas 3 IDE
Игра: Звездная война в Gambas3

С помощью Gambas разработчики также могут использовать базы данных, такие как MySQL или PostgreSQL, создавать приложения KDE (Qt) и GNOME GTK + с помощью DCOP , переводить программы Visual Basic в Gambas и запускать их под Linux, создавать сетевые решения и создавать веб-приложения CGI. IDE также включает инструмент для создания установочных пакетов , поддерживающих GNU Autotools , slackpkg , pacman , RPM и debs (последние два затем адаптированы для определенных дистрибутивов, таких как Fedora / RHEL / CentOS , Mageia , Mandriva, OpenSUSE и Debian , Ubuntu / Mint ).

Gambas, начиная с версии 3.2 IDE имеет интегрированный профилировщик и начал использовать технологию компиляции Just-in-time .

Отличия от Visual Basic [ править ]

Gambas предназначен для обеспечения того же опыта, что и при разработке в Microsoft Visual Basic , но это не бесплатный клон популярной проприетарной программы. Автор Gambas дает понять, что есть сходство с Visual Basic, например, синтаксис для программ BASIC и интегрированная среда разработки; Gambas с самого начала был написан как отдельная среда разработки и стремится улучшить формулу. [13] [14] [15]

Его объектная модель , каждый класс, представленный в файле, а также архиватор для упаковки программы - все это вдохновлено языком программирования Java . Gambas задуман как альтернатива для бывших разработчиков Visual Basic, которые решили перейти на Linux. Есть и другие важные различия между Gambas и Visual Basic. Одним из примечательных примеров является то, что в Gambas индексы массивов всегда начинаются с 0, тогда как индексы Visual Basic могут начинаться с 0 или 1. [16] Gambas также поддерживает сокращения + = и - =, которых нет в классическом Visual Basic. Однако обе эти функции являются особенностями Visual Basic .NET .

Принятие [ править ]

DONKEY.GB

Несколько программ и многие формы примеров кода были написаны с использованием Gambas и для него. По состоянию на 28 октября 2012 года Freecode (ранее Freshmeat) перечислил 23 приложения, разработанных с использованием Gambas [17], а в вики Gambas - 82; [18] несколько других специализированных сайтов перечисляют приложения и код Gambas. [19] [20] [21] [22] Приложение, написанное на Gambas, под названием Gambas3 ShowCase, действовало как программный центр для загрузки или установки приложений Gambas 3. [23] С тех пор он был прекращен после запуска первой партии Gambas Software Farm, интегрированной в IDE, которая содержит около 500 приложений и демонстраций. [24]Несколько сайтов сообщества, включая форумы сообщества и списки рассылки, также существуют для Gambas. [25] Известным приложением, написанным на Gambas, является Xt7-player-mpv, интерфейс GUI для mpv- плеера, содержащийся в ряде репозиториев программного обеспечения Linux. [26] [27] [28]

Доступность [ править ]

Gambas включен в репозитории ряда дистрибутивов Linux , таких как Debian , Fedora , Mandriva Linux и Ubuntu . Microsoft Windows версия Gambas была запущена под Cygwin среды, хотя эта версия была значительно меньше тестировалась , чем его коллега Linux и только из командной строки; Также использовались кооперативный Linux и его производные [29], а также специализированные виртуальные машины Linux . [30] Независимый участник, Франсуа Галло, также работал над переносом Gambas 3.x на Mac OS X и FreeBSD., основанный на использовании локальных версий системы X11 . [31] Gambas версии 3.2 может работать на Raspberry Pi и предлагает своевременную компиляцию, начиная с версии 3.12.

В ноябре 2013 года обсуждалась будущая переносимость Gambas, перечисляя основные проблемы, связанные с функциями ядра Linux, используемыми в интерпретаторе, компонентами, использующими специальное программное обеспечение и библиотеки Linux, и, прежде всего, привязкой к X11 в компонентах интеграции Qt, GTK + и рабочего стола. Однако отчасти из-за необходимости обновления до более новых наборов инструментов, таких как GTK 3 (добавлено в 3.6.0) и Qt 5 (начиная с 3.8.0), будущие версии будут менее привязаны к X11, что сделает такие проекты, как Cygwin, или полностью родными. версии на других платформах более возможны. Бенуа Минисини заявил, что он намеревался «инкапсулировать» код, специфичный для X11, чтобы помочь в любой попытке заменить его [32], при этом поддержка X11 в компоненте рабочего стола перенесена в его собственный компонент с версии 3.6.0.

27 октября 2016 года с главной страницы был выпущен снимок экрана и руководство по установке для полного запуска Gambas через Cygwin, включая большинство компонентов, графические инструменты и полную среду IDE. [33] [34] Соответствующие исправления поддерживаются начиная с версии 3.9.2. Это заменяет ранее рекомендованный метод использования пересылки freenx с сервера Linux . [35] Он также был успешно запущен с использованием подсистемы Windows для Linux . [36] обычно это делается с помощью эмулятора Xterminal, такого как Mobaxterm в Windows, поскольку WSL не поддерживает графику X11 напрямую.

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

"Привет, мир!" программа с графическим пользовательским интерфейсом.

Public  Sub  Main ()  Сообщение ( «Hello, World!» ) Конец

Программа, которая вычисляет 100-членный полином 500000 раз и повторяет его десять раз (используется для тестирования ).

Private  Sub  Test ( X  Как  Float )  Как  Float Dim  Mu  As  Float  =  10.0  Dim  Pu ,  Su  As  Float  Dim  I ,  J ,  N  As  Integer  Dim  aPoly  As  New  Float [ 100 ] N  =  500000 Для  I  = от  0  до  N  -  1  Для  J  = от  0  до  99  Mu  =  ( Mu  +  2,0 )  /  2,0  aPoly [ J ]  =  Mu  Далее  Su  =  0,0  Для  J  = от  0  до  99  Su  =  X  *  Su  +  aPoly [ J ]  Далее  Pu  + =  Su  Далее Возврат  ПуКонецPublic  Sub  Main () Dim  I  as  Integer Для  I  = от  1  до  10  Print  Test ( 0.2 )  ДалееКонец

См. Также [ править ]

  • Список ОСНОВНЫХ диалектов
  • Сравнение интегрированных сред разработки # BASIC
  • GNAVI
  • Лазарь

Ссылки [ править ]

  1. ^ "Гамбас - Гамбас почти означает основные" . Проверено 19 мая 2018 .
  2. ^ a b «Введение в документацию Gambas» . Веб-сайт Gambas . Проверено 9 октября 2017 .
  3. ^ Upfold, Питер (2008-09-08). «Гамбас - почти Visual Basic для Linux» . FOSSwire . Проверено 7 мая 2011 .
  4. ^ «Гамбас: быстрый Visual Basic для Linux» . CodeFez. Архивировано из оригинала на 2009-09-09 . Проверено 4 апреля 2007 .
  5. ^ «Gambas 3.0 для BASIC с исправлениями ошибок и безопасности» . Н . Проверено 5 января 2012 .
  6. ^ «Бенчмаркинг» . Веб-сайт Gambas . Проверено 11 февраля 2018 .
  7. ^ «Часто задаваемые вопросы» . Документация Gambas . Проверено 17 ноября 2014 .
  8. ^ Алфавит компьютерных языков: BASIC ,журнал PCLinuxOS
  9. ^ Программирование Gambas cli: текстовый пользовательский интерфейс ncurses
  10. ^ a b Фернандес, Даниэль (2004-11-11). «По поводу Гамбаса» . OSNews . Проверено 7 мая 2011 .
  11. ^ а б "Гамбас РАД" . Linux.co.uk. Архивировано из оригинала на 2011-05-25 . Проверено 7 мая 2011 .
  12. ^ "Зачем нужен новый компонент SDL?" . Список рассылки Gambas. Архивировано из оригинала на 2015-02-09 . Проверено 9 февраля 2015 .
  13. ^ Марк Александр Бейн (2008-08-28). «Гамбас - почти Visual Basic для Linux» . Suite101.
  14. ^ Фрэнк Видувилт (октябрь 2008 г.). «Программирование с помощью Gambas Basic IDE» . Журнал Linux Pro . Проверено 10 декабря 2011 .
  15. ^ AWC Electronics. «Физические вычисления с Linux: быстрый подход с использованием Gambas» . Проверено 18 февраля 2012 .
  16. ^ «Отличия от Visual Basic» . Веб-сайт Gambas . Проверено 1 мая 2020 .
  17. ^ "23 проекта с тегом" Gambas " " . Свежее мясо . Проверено 28 октября 2012 .
  18. ^ "Репозиторий приложений" . Гамбас. Архивировано из оригинала на 2019-10-26 . Проверено 1 мая 2020 .
  19. ^ "Веб-сайт GAMBAS BASIC" . ГАМБАС БАЗОВЫЙ. Архивировано из оригинала на 2011-05-12 . Проверено 7 мая 2011 .
  20. ^ "Категория Гамбаса" . Код Россеты . Проверено 18 ноября 2011 .
  21. ^ "Примеры Гамбаса" . Программное обеспечение Piga . Проверено 7 мая 2011 .
  22. ^ "Программы Гамбаса" . Программное обеспечение Piga . Проверено 7 мая 2011 .2010 г.
  23. ^ "Gambas3 ShowCase" . gbWilly. Архивировано из оригинала на 2016-01-10 . Проверено 22 сентября 2013 .
  24. ^ Протокол сервера Gambas Farm - Документация Gambas
  25. ^ «Списки рассылки и форумы» . Веб-сайт Гамбаса. Архивировано из оригинала на 2020-04-26 . Проверено 7 мая 2011 .
  26. ^ xt7-player-mpv - linux-APPS.com
  27. ^ XT7-Player - лучший видеоплеер для Kubuntu / KDE - Справочник Ubuntu
  28. ^ Xt7-Player - это полнофункциональный графический интерфейс Mplayer - Web Upd8
  29. ^ Гамбас в Windows - Альтернатива
  30. ^ Запуск программ Gambas в Windows - PigaLore, Piga Software Wiki
  31. ^ "Шаг вперед в Гамбасе!" . Франсуа Галло . Проверено 2 августа 2014 .
  32. ^ Gambas Future или какие Gambas мы хотим , Список рассылки Gambas
  33. ^ Руководство по установке Cygwin - Gambas Wiki
  34. ^ Пакет gambas3 - сайт Cygwin
  35. ^ Как запустить Gambas в Windows - Gambas Wiki
  36. ^ Gambas для Windows , Gambas-One

Дальнейшее чтение [ править ]

  • Марк Александр Бейн (28 апреля 2006 г.) An Introduction to Gambas , Linux Journal , выпуск 146, июнь 2006 г. (в печати)
  • Марк Александр Бейн (3 декабря 2004 г.) Гамбас ускоряет разработку баз данных , Linux.com
  • Марк Александр Бейн (12 декабря 2007 г.) Создание простых диаграмм с помощью Gambas 2.0 , Linux.com
  • Фабиан Флорес Вадель (ноябрь 2010 г.) Как программировать с помощью Гамбаса

Внешние ссылки [ править ]

  • Гамбас на SourceForge.net
  • Документация Gambas
  • Список рассылки Gambas
  • Гамбас почти означает базовый
  • Журнал Gambas  - Разработка программного обеспечения для Linux с Gambas