Журнал LinuxFormat - перейти на главную

LXF122:Review2

Материал из Linuxformat
Перейти к: навигация, поиск

KBasic 1.89f

Александр Бикмеев склоняется к мнению, что у Gambas пока что нет серьезных поводов для беспокойства.


Язык программирования Basic был создан специально для целей обучения программированию. В настоящее время его позиционируют как идеальное средство быстрой разработки. Нельзя сказать, что это ложь – важно лишь определиться с масштабами и назначением приложения.

Поскольку многие пользователи Windows по всему миру пишут небольшие программки для своих нужд на Visual Basic, то переход на другую систему кажется им нецелесообразным. Теперь можно сказать, что и этот барьер сломан!

Знакомьтесь: KBasic – кросс-платформенная интегрированная среда разработки (IDE) для Linux/Windows/Mac OS X, созданная на базе Qt4 и использующая свой диалект языка Basic. Однако компилятор/интерпретатор языка имеет три режима работы: KBasic (свой собственный диалект, частично совместимый с VB.NET), Old Basic (совместим с VB6) и Very Old Basic (совместим с QBasic).

Как видно по иллюстрации, IDE напоминает Microsoft Visual Studio .NET. Имеется окно содержимого проекта [Project Window], обозреватель коллекции объектов [Browser], окно свойств, палитра компонентов и т. д. В режиме редактирования кода в окне свойств отображается полный список объектов и переменных, а в режиме дизайнера формы – свойства выделенного компонента. Следует отметить, что Windows-версия уже русифицирована, а вот в Linux-версию русскую локализацию пока что не добавили.

С официального сайта можно скачать двоичные сборки KBasic для трех указанных операционных систем, а также исходные тексты чуть более старой версии. Также на сайте содержится пусть не всеобъемлющая, но все-таки достаточная для освоения системы документация. Кроме того, в самой IDE имеется множество готовых примеров, которые можно открыть и запустить на выполнение (см. меню Examples)

Гладко было на бумаге

Если внимательно присмотреться к приведенному экранному снимку, то становится ясно, что KBasic имеет средства для работы с базами данных – так оно и есть. KBasic имеет прекрасную поддержку встроенной СУБД (SQLite) и MySQL, а также мастера для создания форм и отчетов. Простую оболочку для ввода данных в таблицу MySQL и отчет мы изготовили за несколько минут. Вследствие своих Qt-корней, KBasic поддерживает разработку локализуемых приложений. Имеются и средства отладки.

Но если даже на Солнце есть пятна, то и у KBasic их немало. Во-первых, заявленная совместимость обеспечивается только на уровне синтаксиса, да и то с оговорками. При импорте проекта VB 6.0, KBasic автоматически заменяет названия событий и типов на собственные, но при этом опускает неизвестные ему конструкции и абсолютно не понимает кодировки win-1251. Запуск полученного проекта приводит к многочисленным ошибкам. Если же писать программу с нуля, то все работает.

Во-вторых, общение с самой IDE доставляет немало хлопот. Если щелкнуть на иконке в палитре компонентов, а затем на форме, то соответствующий компонент появится на форме; однако если вы захотите изменить размер созданного компонента или переместить его, то придется вновь перейти на палитру компонентов и нажимать на иконку с изображением стрелки [Select]. В противном случае каждый щелчок в любом месте формы будет приводить к добавлению нового визуального компонента. Кроме того, система автодополнения кода срабатывает редко и не имеет горячей клавиши.

В-третьих, быстродействие... оно заставляет задуматься о целесообразности применения данной среды. Выполнение тестового примера (генерация двух матриц случайных чисел размерности 300 × 300 с последующим их перемножением) заняло в KBasic около 270 секунд, тогда как его ближайший Linux-конкурент, Gambas, управляется примерно за 25. Набор виджетов также небогат: прежде всего, нет табличного компонента, что странно при наличии средств для работы с базами данных.

В целом, как среда разработки для простых проектов или оболочек баз данных, KBasic заслуживает внимания. Кроме того, переделка имеющихся обучающих материалов по VB не займет много времени. А это, согласитесь, тоже плюс.

Персональные инструменты
купить
подписаться
Яндекс.Метрика