posted by Daniel Campos Fernández on Thu 11th Nov 2004 20:44 UTC

"Gambas, Page 3/3"
Gambas can do more!
This was just a very little example. However, Gambas allows you to write complex programs. The RAD environment is written in Gambas itself. You can write multi language programs. To help you doing that, the RAD offers a wizard to translate your programs to a lot of languages. All translations are compiled with the main executable, and according with the user language, the program will automatically show the texts in a language or another. All form texts are automatically added to the translation wizard, and you can select if any of the texts written in the code must be translated or not. A usual string (between the " symbols), is not translated, but if you round it with the "(" and ")" symbols, it will be available for translating:

Text1.Text="This string will be not translated"

Text2.Text=("This string will be translated")

Gambas offers database access. Cvurrently you can manage MySQL, PostgreSQL and Sqlite. You can write code to read and alter table contents, and even to create and delete databases and tables. Gambas RAD also provides a database manager, that allows you to graphically connect with a database server, create and destroy databases, tables and records in a table. It also offers interesting features, like translating table structure to Gambas code, so you can create the table in any new installation without having to write the "CREATE TABLE" statements by hand, or database users management.

A complete documentation system can help you when you are in trouble. That documentation is being updated all the time, as it is placed in a wiki at Binara. There's a Spanish translation in progress at Linex.

There are wizards to distribute your program as source code (tar.gz format) and to create binary packages for the main GNU/Linux distributions. You can create a rpm or deb package without knowing the build tools for these package systems.

You can write network applications using Gambas; there's a low level network component that allows to write TCP, Unix and UDP socket clients and servers, and to work with serial port devices. A beta component, based on the curl library, allows to directly perform querys to HTTP servers and work as an FTP client.

XML is work in progress, soon you'll be able to read and write XML files, perform XML-RPC calls and make conversions to XHTML using XSLT.

The components model
Gambas is designed to be extensible. There's a base language, and all the rest of the features are provided by components. Currently, components are written in C or C++, and in the future you'll be able to write your own components in Gambas! Even the graphical toolkit is just a component. By default, Gambas can just be use for console programs, but adding the qt component, the program becomes a graphical application. This qt component is as agnostic as possible, so in the future there will be a GTK+ component, that will work absolutely the same as the qt component, allowing you to decide what low-level toolkit to use.

The future...
Gambas is just 1.0. In the next year there will be a lot of advances: finishing the network and XML component, writing components in Gambas, serialization, persistence, sound and graphics with SDL, a GTK+ toolkit, a report designer, data widgets (grids, combo-boxes...)...

So, if you plan to write the applications for your home financials, or have to write programs for big customers, think of Gambas, it can make you productive, fast, smart, and all the kind of things that big companies marketing campaigns say, with the freedom of GNU/Linux or FreeBSD, and the support of a big team of volunteers!

About the author:
Daniel Campos Fernández Programmer and System Administrator. Working for Gambas since 2003, writing the network, XML/XSLT, and compression components.

If you would like to see your thoughts or experiences with technology published, please consider writing an article for OSNews.
Table of contents
  1. "Gambas, Page 1/3"
  2. "Gambas, Page 2/3"
  3. "Gambas, Page 3/3"
e p (0)    48 Comment(s)

Technology White Papers

See More