Gambas

Gambas
Gambas LogoGambas 2 LogoGambas 3 Logo
Класс языка объектно-ориентированный,
компонентно-ориентированный
Тип исполнения компилируемый,
интерпретируемый
Появился в 1999
Автор Бенуа Минисини
Выпуск
Испытал влияние Visual Basic, Java[3]
Лицензия GNU GPL
Сайт gambas.sourceforge.net
ОС Linux, UNIX и Haiku
Логотип Викисклада Медиафайлы на Викискладе

Gambas — объектно-ориентированный диалект языка BASIC, дополненный интегрированной средой разработки и работающий на GNU/Linux и других UNIX-подобных операционных системах. Он представляет собой средство разработки программного обеспечения, аналогичное Visual Basic в плане разработки программ на Basic. Gambas задумывался как альтернатива для Visual Basic разработчиков, решивших перейти на Linux.

Gambas — рекурсивный акроним от англ. Gambas Almost Means BASic, что в дословном русском переводе выглядит как «Gambas Почти Означает Basic», а более привычно русскому уху: «Gambas — почти Basic». Само слово Gambas с испанского переводится как креветка, которая собственно и изображена на логотипе.

Разработка Gambas была начата в Париже Бенуа Минисини в 1999 году. Gambas является свободным программным обеспечением и выпущен под лицензией GNU General Public License. Один из основных компонентов Gambas, позволяющий создавать графические приложения gb.qt использует библиотеку Qt, распространяемую под лицензией LGPL.

Особенности

  • Работа с базами данных, такими как MySQL, PostgreSQL, Firebird, SQLite и ODBC.
  • Создание приложения KDE с DCOP.
  • Использование 3D API OpenGL.
  • Портирование программ с Visual Basic на Gambas.
  • Возможность создавать сетевые решения.
  • Создание инсталляционных пакетов для основных дистрибутивов — RPM, deb

Компоненты

Gambas содержит множество компонентов, расширяющих функциональные возможности языка. Большинство компонентов написаны автором, но есть также предоставленные сообществом.

  • gb — Родной класс Gambas, обеспечивающий базовые возможности
  • gb.chart — Позволяет применять в программах диаграммы и графики
  • gb.compress — функции сжатия и распаковки
  • gb.crypt — шифрование MD5/DES
  • gb.db — позволяет Gambas работать с различными СУБД
  • gb.db.mysql — использование специфических функций MySQL
  • gb.db.odbc — использование специфических функций ODBC
  • gb.db.postgresql — использование специфических функций PostgreSQL
  • gb.db.sqlite3 — использование специфических функций SQLite
  • gb.debug — функции отладки
  • gb.desktop — использование шаблонов проекта Portland
  • gb.gtk — инструменты для создания приложений GTK
  • gb.qt — инструменты для создания приложений qt
  • gb.image — функции обработки изображений
  • gb.net — сетевые функции
  • gb.net.curl — расширение сетевых функций, использование curl.
  • gb.smtp — SMTP-клиент
  • gb.qt.opengl — OpenGL посредством инструментария qt
  • gb.report — дизайнер отчетов
  • gb.sdl — функции SDL в Gambas
  • gb.sdl.sound — звуковые функции библиотек SDL
  • gb.settings — управление настройками приложений. Облегчает управление файлами конфигурации
  • gb.v4l — захват видео с различных устройств — ТВ-тюнеров и веб-камер.
  • gb.vb — совместимость с VisualBasic
  • gb.xml — поддержка XML
  • gb.xml.rpc — поддержка функций XML-RPC
  • gb.xslt — возможность использования функций libxslt
  • gb.web — Позволяет использовать Gambas как серверный язык.

Gambas предназначен для создания графических приложений с помощью инструментария Qt3, GTK а также кросс-проекта Portland. Возможно использование Gambas для создания CGI приложений. Среда разработки Gambas IDE написана с использованием Gambas. Gambas включает в себя GUI дизайнер для оказания помощи в создании пользовательских интерфейсов и Менеджер БД, упрощающий работу с базами данных.

Пример программы на языке Gambas

Простая программа Hello World на Gambas

PUBLIC SUB Main()
  PRINT "Hello world !"
END

Различия Gambas и Visual Basic

Gambas создали для лёгкого перехода с Visual Basic’а, однако есть важные различия между этими двумя языками.

Один из примеров: как Gambas нумерует массивы, которые начинаются с 0. Если определить массив из n элементов, то на Gambas он начинается с 0 и оканчивается n-1, тогда как массив на Visual Basic может начинаться с 0 или 1, и оканчивается всегда n-ым элементом.

Разработка

Сейчас[когда?] GUI и на GTK, и на Qt3 работает стабильно. Для запуска исполняемых файлов нужна среда выполнения Gambas.

Примечания

  1. Release of Gambas 3.19.0
  2. Tag for 3.18.4
  3. См. файл README в архиве с исходными кодами Gambas.

Литература

  • John W Rittinghouse. A Begginners Guide for Gambas. — 2005. — 364 с. (англ.)

Ссылки

Официальные ресурсы Gambas
Русскоязычные ресурсы Gambas