Gambas
Gambas - об'єктно-орієнтований діалект мови BASIC, доповнений інтегрованим середовищем розробки, працює на GNU/Linux та інших UNIX-подібних операційних системах. Він є засобом, аналогічним Visual Basic в плані розробки програм мовою Basic. Gambas створювався як альтернатива Microsoft Visual Basic для розробників, що вирішили перейти на GNU/Linux.
Gambas | |
---|---|
Парадигма | Об'єктно-орієнтоване програмування, подійно-орієнтоване програмування, компонентно-орієнтоване програмування |
Дата появи | 1999 |
Творці | Benoît Minisinid |
Розробник | Бенуа Мінісіні |
Останній реліз | 3.8.4 (21 грудня 2015 ) |
Система типізації | статична, строга |
Діалекти | BASIC |
Під впливом від | Visual Basic |
Операційна система | Linux, FreeBSD, MacOS |
Ліцензія | GNU General Public Licence |
Репозиторій вихідного коду | sourceforge.net/p/gambas/code/HEAD/tree/ |
Вебсайт | gambas.sourceforge.net |
Gambas у Вікісховищі |
Компоненти
Gambas містить багато компонентів, що розширюють функціональні можливості мови. Більшість компонентів написані автором, але є також надані спільнотою.
- gb.db - Рідний клас 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 і Visual Basic
Один з прикладів : як Gambas нумерує масиви що починаються з 0. При визначенні масиву з n елементів, Gambas створює масив що починається з 0, , і закінчується n - 1. Тоді як масив на Visual Basic може починатися з 0 або 1, і закінчується завжди n елементом.
Розробка
Нині GUI працює стабільно незалежно використання компонентів Qt3 або GTK. Для запуску виконуваних файлів вимагається середовище виконання Gambas.
Gambas включений в багато репозиторіїв операційних систем. Повноцінної версії Gambas для Windows не існує. Стабільну версію компілятора і інтерпретатора Gambas вдалося скомпілювати за допомогою cygwin, але компіляція компонент не вдалася внаслідок чого в Windows можуть запускатися тільки консольні (працюючі в текстовому режимі) Gambas-програми.
Література
- John W Rittinghouse. A Begginners Guide for Gambas. — 364 с.(англ.)
Джерела
- Сторінка проекта Gambas на Source Forge
- Відмінності від Visual Basic (англ.)
- Відмінності від Visual Basic (рос.)
- Блог про Gambas — Блог про програмування на Gambas c прикладами. (рос.)