Gambas (langage)
Gambas est un langage de programmation interprété orienté objet utilisant la syntaxe du BASIC, disponible pour GNU/Linux et autres systèmes Unix ou assimilés. Il est accompagné d'un interpréteur et d'un IDE, lui-même écrit en Gambas.
Gambas | ||
Capture d'écran. | ||
Date de première version | 1999 | |
---|---|---|
Paradigme | Programmation orientée objet, structurée et impérative | |
Auteur | Benoît Minisini (en) | |
Dernière version | 3.19.0 ()[1],[2] | |
Typage | Statique, fort, sûr, nominatif | |
Influencé par | Visual Basic | |
Écrit en | C et C++/Qt | |
Système d'exploitation | Linux, Unix | |
Licence | Licence publique générale GNU version 2[3] | |
Site web | gambas.sf.net | |
modifier |
Gambas se donne pour objectif de reproduire la facilité d'utilisation de Visual Basic en améliorant ses fonctionnalités. Bien que son interpréteur ne soit pas compatible avec les programmes dont le code source est écrit en Visual Basic, Gambas est lui aussi dérivé du BASIC et orienté objet. Il n'est pas un clone de Visual Basic, son auteur insiste sur ce point, mais constitue une solution pertinente pour les utilisateurs du Visual Basic souhaitant créer des applications pour Linux/Unix sans passer à un environnement totalement différent.
Gambas est un logiciel libre diffusé sous la licence GNU GPL, développé principalement à Paris depuis 1999 par Benoît Minisini.
Gambas est l'acronyme récursif de Gambas almost means Basic (en français, « Gambas veut presque dire Basic »). C'est aussi le nom espagnol d'une crevette de mer, l'Aristeidae, dont provient le logo du projet.
Gambas est amélioré continuellement et peut être conseillé à tous les utilisateurs de Linux/Unix qui souhaitent mettre à profit leurs connaissances BASIC sous licence GNU.
Gambas est disponible sous forme de paquets RPM ou Deb pour de nombreuses distributions Linux, notamment Debian, Ubuntu, SuSE ou encore Mandriva.
Fonctionnalités
modifierAvec Gambas, il est notamment possible de :
- développer une application en ligne de commande,
- développer une interface graphique utilisant indifféremment Qt ou GTK+,
- utiliser des bases de données MySQL, PostgreSQL, SQLite, Firebird ou toute base de données utilisant ODBC,
- piloter des applications KDE avec DCOP,
- internationaliser les applications,
- adapter (il ne suffit pas de les copier, même si un module aide la transposition) des programmes Visual Basic sous Linux,
- créer des applications réseaux, et utiliser directement les protocoles HTTP, FTP, DNS, SMTP,
- réaliser des programmes utilisant SDL ou OpenGL (ce qui permet par exemple de réaliser des jeux),
- créer des applications Web avec gestion de sessions.
Particularités
modifier- Gambas possède un faible nombre de classes et de symboles comparativement au nombre de fonctionnalités, ce qui facilite son apprentissage,
- L'interface graphique est presque complètement indépendante du toolkit (QT ou GTK+) utilisé.
Exemple de programme en Gambas
modifierSimple programme Hello world écrit en Gambas.
Public Sub Main()
Message("Hello, World!")
End
Programme qui calcule un polynôme de 100 termes 500 000 fois et le répète dix fois (utilisé pour les tests de performance).
Private Sub Test(X As Float) As Float
Dim Mu As Float = 10.0
Dim Pu, Su As Float
Dim I, J, N As Integer
Dim aPoly As New Float[100]
N = 500000
For I = 0 To N - 1
For J = 0 To 99
Mu = (Mu + 2.0) / 2.0
aPoly[J] = Mu
Next
Su = 0.0
For J = 0 To 99
Su = X * Su + aPoly[J]
Next
Pu += Su
Next
Return Pu
End
Public Sub Main()
Dim I as Integer
For I = 1 To 10
Print Test(0.2)
Next
End
Alternatives
modifier- Liste des dialectes Basic
- Visual Basic pour Windows
Portage vers d'autres plates-formes/architectures
modifierGambas est théoriquement portable vers d'autres plates-formes. Son auteur principal, Benoît Minisini, a déclaré : « En pratique, le portage vers Windows est relativement compliqué, il ne m'intéresse pas, mais je suis prêt à aider quiconque veut se lancer là-dedans »[4]. Les applications Gambas en ligne de commande fonctionnent sous Windows avec Cygwin.
Gambas fonctionne sous FreeBSD et Mac OS X.
Gambas fonctionne sur les architectures 64 bits[pas clair].
Notes et références
modifier- « Release of Gambas 3.19.0 » (consulté le )
- « Tag for 3.18.4 » (consulté le )
- SourceForge.net (forge logicielle), consulté le .
- DLFP: Première 'Release Candidate' de Gambas 2
Voir aussi
modifierLiens externes
modifier- (en) Site officiel
- (en) « Accueil du projet Gambas », sur SourceForge.net.
- Dépôt sur GitLab :
- (de) Le tutoriel en allemand