stringtranslate.com

Гамбас

Гамбас — название объектно-ориентированного диалекта языка программирования BASIC , а также сопровождающей его интегрированной среды разработки . [4] Разработанный для работы в Linux и других Unix-подобных компьютерных операционных системах , [ 5] его название представляет собой рекурсивную аббревиатуру от G ambas « Почти означает базовый » . Гамбас — это также слово, обозначающее креветки на испанском , французском и португальском языках, от которого произошли логотипы проекта.

История

Gambas 1.0.15 работает из KDE

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

Версии Gambas 1.x имели интерфейс, состоящий из нескольких отдельных окон для форм и диалогов IDE, аналогичный интерфейсу более ранних версий GIMP . Он также мог разрабатывать приложения только с использованием Qt и был больше ориентирован на разработку приложений для KDE . [6] Последней версией версий 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 года. [7] Тест 2015 года, опубликованный на веб-сайте Gambas, показал, что сценарии Gambas 3.8.90 в разной степени быстрее, чем Perl 5.20.2 и последняя на тот момент версия Python 2.7.10 во многих тестах. [8] Версия 3.16.0, выпущенная 20 апреля 2021 г., имела полную поддержку Wayland с использованием графических компонентов, а также паритет между компонентами Qt 5 и GTK 3. [9]

Функции

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

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

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

Один из примеров, работающих в Gambas 3 IDE.
Игра: Stars War, сделанная в 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 , Убунту / Минт ).

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

Отличия от Visual Basic

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

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

Гамбас также преуспел в двух предыдущих попытках реализовать интерфейс в стиле Visual Basic для Qt и GTK в Linux, [21] [22] это HBasic [23] [24] и GNOME Basic, [25] [26] , а также платформу независимый KBasic/ Basic для Qt . [27] Подобные IDE с тех пор были разработаны и для FreeBASIC , а именно VisualFBEditor, [28] и QB64 , а именно InForm. [29]

Принятие

ОСЛ.ГБ

Несколько программ и множество примеров кода были написаны с использованием Gambas и для него. Freecode (ранее Freshmeat) перечислила 23 приложения, разработанных с использованием Gambas, [30] в то время как вики Gambas перечислила 82; [31] на нескольких других специализированных сайтах перечислены приложения и код Gambas. [32] [33] [34] Приложение, написанное Gambas, под названием Gambas3 ShowCase, выступало в качестве программного центра для загрузки или установки приложений Gambas 3. [35] С тех пор его выпуск был прекращен после запуска первой партии программного обеспечения Gambas Software Farm, интегрированной в IDE с версии 3.7.1, которая содержит около 500 приложений и демонстрационных версий. [36] [37] Для Gambas также существует несколько общественных сайтов, включая общественные форумы и списки рассылки. [38] Известное приложение, написанное на Gambas, — это Xt7-player-mpv, интерфейс с графическим интерфейсом для проигрывателя mpv , содержащийся в ряде репозиториев программного обеспечения Linux. [39] [40] [41] Коллекция игр comisat представляет собой ранние примеры видеоигр, написанных на языке гамбас. [42]

Доступность

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

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

27 октября 2016 г. на главной странице был опубликован снимок экрана и руководство по настройке для полного запуска Gambas через Cygwin, включая большинство компонентов, графические наборы инструментов и полную среду IDE. [49] [50] Соответствующие патчи были добавлены начиная с версии 3.9.2. [51] Это заменяет предыдущий рекомендуемый метод использования пересылки freenx с сервера Linux . [52] Он также был успешно запущен с использованием подсистемы Windows для Linux . [53] Обычно это делалось с использованием эмулятора X-терминала , такого как Mobaxterm в Windows, [54] поскольку WSL не поддерживала графику X11 напрямую до Windows 11 . [55]

Пример кода

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

Публичное подглавное () сообщение ( «Hello, World! » ) Конец   

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

Частный подтест ( X с плавающей запятой ) Как с плавающей запятой       Dim Mu As Float = 10.0 Dim Pu , Su As Float Dim I , J , N As Integer Dim aPoly As New Float [ 100 ]                      Н = 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 ] Далее Пу += Вс Далее                                              Возврат Пу КонецПубличная подглавная страница ()   Тусклый I как целое число    Для I = от 1 до 10 Тест печати ( 0,2 ) Далее        Конец

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

Рекомендации

  1. ^ «Релизы · Гамбас / gambas · GitLab» . Проверено 15 ноября 2023 г.
  2. ^ Галло, Франсуа (16 июня 2011 г.). «Гамбас 3 OS X». ВсеБЕЙСИК . Проверено 28 сентября 2023 г.
  3. ^ ab «Введение в документацию Gambas». Сайт Гамбас . Проверено 9 октября 2017 г.
  4. ^ Хьюз, Мэтью (3 марта 2015 г.). «БАЗОВОЕ руководство по GAMBAS: все, что вам нужно знать». СделатьUseOf . Проверено 11 февраля 2023 г.
  5. ^ Апфолд, Питер (8 сентября 2008 г.). «Гамбас — почти Visual Basic для Linux». ФОССвайр . Проверено 7 мая 2011 г.
  6. ^ «Gambas: быстрый Visual Basic для Linux». КодФез. Архивировано из оригинала 9 сентября 2009 г. Проверено 4 апреля 2007 г.
  7. ^ «Gambas 3.0 для BASIC с исправлениями ошибок и безопасности» . Х. _ Проверено 5 января 2012 г.
  8. ^ «Бенчмаркинг». Сайт Гамбас . Проверено 11 февраля 2018 г.
  9. ^ «Примечания к выпуску 3.16.0» . Сайт Гамбас . Проверено 11 февраля 2021 г.
  10. ^ «Часто задаваемые вопросы» . Документация Гамбаса . Проверено 17 ноября 2014 г.
  11. ^ Алфавит компьютерных языков: BASIC, журнал PCLinuxOS
  12. ^ Ди, Стив (27 марта 2017 г.). «Программирование Gambas cli: текстовый пользовательский интерфейс ncurses». Капитан Богдит . Проверено 15 апреля 2023 г.
  13. ^ Аб Фернандес, Дэниел (11 ноября 2004 г.). «По поводу Гамбаса». ОСНовости . Проверено 7 мая 2011 г.
  14. ^ аб "Гамбас РАД". Linux.co.uk. Архивировано из оригинала 25 мая 2011 г. Проверено 7 мая 2011 г.
  15. ^ «Почему новый компонент SDL?». Список рассылки Гамбаса. Архивировано из оригинала 9 февраля 2015 г. Проверено 9 февраля 2015 г.
  16. ^ Аллен Холм, Джошуа (24 апреля 2014 г.). «Бейсик-программирование с помощью Gambas для начинающего программиста». Opensource.com . Проверено 5 апреля 2023 г.
  17. ^ Марк Александр Бейн (28 августа 2008 г.). «Гамбас — почти Visual Basic в Linux». Люкс 101.
  18. ^ Фрэнк Видувилт (октябрь 2008 г.). «Программирование с помощью Gambas Basic IDE». Журнал Linux Pro . Проверено 10 декабря 2011 г.
  19. ^ AWC Электроника. «Физические вычисления в Linux: быстрый подход с использованием Gambas» . Проверено 18 февраля 2012 г.
  20. ^ «Отличия от Visual Basic». Сайт Гамбас . Проверено 1 мая 2020 г.
  21. ^ "HBasic - Menghadirkan VB di Linux" . 06 декабря 2005 г. Проверено 26 сентября 2023 г.
  22. ^ «БЕЙСИК для Linux». Фредшак . Проверено 26 сентября 2023 г.
  23. ^ «HBasic IDE и язык» . СоурсФордж . 16 января 2007 г. Проверено 26 сентября 2023 г.
  24. ^ Макоратти, Хосе Карлос. «ВБ для Linux». Macoratti.net . Проверено 26 сентября 2023 г.
  25. ^ «GB — Базовый для GNOME» . ГНОМ . Архивировано из оригинала 5 февраля 2005 г. Проверено 26 сентября 2023 г.
  26. ^ Перр, Джон (1 января 2003 г.). «БАЗОВОЕ программирование в Unix». ЛинуксФокус . Проверено 26 сентября 2023 г.
  27. ^ «KBasic: VB-подобная Rad/IDE для KDE» . KDE.news . _ Проверено 27 сентября 2023 г.
  28. Скорость, Ричард (6 мая 2022 г.). «RAD Basic — Visual Basic 7, которого никогда не было — выпускает третью альфа-версию». Регистр . Проверено 26 марта 2023 г. FreeBASIC, который реализует многое из того, что было в Microsoft QuickBASIC (и имеет изящную IDE в виде VisualFBEditor).
  29. ^ Рогоз, Иван (07.04.2022). «Взрыв из прошлого — QBasic 4.5». Барн Лаборатория . Проверено 26 сентября 2023 г. QB64 поставляется с WYSIWYG-редактором IDE под названием InForm, который приближает его к повседневному использованию в качестве быстрого и изящного языка автоматизации для Windows.
  30. ^ «23 проекта с тегом «Гамбас»» . Свежее мясо . Архивировано из оригинала 28 сентября 2013 г. Проверено 28 октября 2012 г.
  31. ^ «Репозиторий приложений». Гамбас. Архивировано из оригинала 26 октября 2019 г. Проверено 1 мая 2020 г.
  32. ^ "Веб-сайт GAMBAS BASIC" . ГАМБАС БЕЙСИК. Архивировано из оригинала 12 мая 2011 г. Проверено 7 мая 2011 г.
  33. ^ "Примеры Гамбаса" . Программное обеспечение Пига . Проверено 7 мая 2011 г.
  34. ^ Игры Гамбас - Libregamewiki
  35. ^ "Витрина Gambas3" . ГБВилли. Архивировано из оригинала 10 января 2016 г. Проверено 22 сентября 2013 г.
  36. ^ Ферма Гамбас
  37. ^ Протокол сервера фермы Gambas - Документация Gambas
  38. ^ «Списки рассылки и форумы» . Веб-сайт Гамбаса. Архивировано из оригинала 01 марта 2021 г. Проверено 4 апреля 2021 г.
  39. ^ xt7-player-mpv - linux-APPS.com
  40. ^ XT7-Player — лучший видеоплеер для Kubuntu/KDE — Справочник по Ubuntu
  41. ^ Xt7-Player — полнофункциональный графический интерфейс Mplayer — Web Upd8
  42. ^ "Обзор Comisat Games Collection 0.5.2" . Никсбит . Проверено 8 февраля 2023 г.
  43. ^ Гамбас в Windows - Альтернатива
  44. ^ Морган, Р. (29 июня 2014 г.). «Как запустить Gambas в Windows». Журнал Гамбас . Архивировано из оригинала 10 декабря 2016 г.
  45. ^ Запуск программ Gambas в Windows - PigaLore, Piga Software Wiki
  46. ^ Галло, Франсуа. «Шаг вперед в Гамбасе!». gambas-пользователь . Архивировано из оригинала 10 февраля 2017 г. Проверено 7 апреля 2023 г.
  47. ^ Новая версия Gambas 3.15.2 уже доступна вrollApp.
  48. ^ Будущее Gambas или какие Gambas мы хотим. Архивировано 27 февраля 2014 г. в Wayback Machine , список рассылки Gambas.
  49. ^ Руководство по установке Cygwin — Gambas Wiki
  50. ^ Пакет gambas3 - веб-сайт Cygwin
  51. ^ Морган, Р. (29 июня 2014 г.). «Как запустить Gambas в Windows». Журнал Гамбас . Архивировано из оригинала 8 апреля 2016 г.
  52. ^ Как запустить Gambas в Windows — Gambas Wiki
  53. ^ Гамбас в Windows, Gambas-One
  54. ^ Васкес, Даниэль (9 января 2023 г.). «Как запустить Gambas в Ubuntu». Эльнесон-Сантафе . Проверено 11 февраля 2023 г.
  55. ^ Windows 11, Гамбас-Один

дальнейшее чтение

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