Gambas este numele unui dialect orientat pe obiect al limbajului de programare BASIC. A fost creat de rula pe Linux și alte sisteme de operare de genul Unix,[3] numele său este un acronim recursiv pentru Gambas Almost Means Basic. Totodată Gambas este numele în limba spaniolă pentru crevete, de unde derivă și logo-ul proiectului.

Gambas
Gambas Logo
Gambas Logo
Gambas 3 Logo
Gambas 3 Logo
Gambas 2 Logo
Gambas 2 Logo

Gambas 3.3.4 rulând pe Fedora 16 cu Xfce
Apărut în1999; acum 25 ani (1999)
Proiectat deBenoît Minisini
DezvoltatorBenoît Minisini[*][[Benoît Minisini (French computer programmer)|​]]  Modificați la Wikidata
Ultima versiune3.18.3/ iulie 7, 2023; acum 1 an, 4 luni și 25 zile (2023-07-07)[1]
Influențat deVisual Basic, Java[2]
Sistem de operareLinux, FreeBSD; version for
Mac OS X and Haiku in progress; Microsoft Windows through Cygwin
LicențăGNU GPLv2+
Prezență onlinehttp://gambas.sourceforge.net
 
Gambas 1.0.15 rulând de pe KDE

Gambas a fost dezvoltat de programatorul francez Benoît Minisini, lansând prima versiune în anul 1999. Benoît a crescut cu limbajul BASIC, și a decis să creeze un mediu de dezvoltare a programelor gratis, care să poate să facă rapid și ușor programe cu interfețe pentru utilizatori.

Versiunile Gambas 1.x aveau o interfață compusă din mai multe ferestre separate și dialoguri IDE asemănător programului GIMP. De asemenea, putea să dezvolte aplicații care utilizează [[Qt] și a fost mai orientat spre dezvoltarea aplicațiilor pentru KDE.[4] Ultima lansare pentru versiunile 1.x a fost Gambas 1.0.19.

 
Gambas 2.7 cu interfață în Rusă

Prima lansare a versiunii 2.x a fost făcută pe 2 ianuarie 2008, după trei sau patru ani de dezvoltare. Această versiune a adus o mare schimbarea a interfeței pe care o aveam. Acum toate ferestrele și funcțiile sunt încorporate într-o singură fereastră. Această lansare a adus și câteva modificări în sintaxa Gambas, dar totuși o mare parte din cod a fost păstrat. Totodată această nouă versiune a lui Gambas a inclus actualizări majore ale componentelor Gambas existent, precum și adăugarea unora noi, cum ar fi componentele care pot utiliza GTK+ sau SDL pentru a desena sau a utiliza OpenGL. Versiunile Gambas 2.x pot încărca și executa proiecte Gambas 1.x, cu incompatibilități ocazionale.

Următoarea actualizare majoră a lui Gambas, versiunile 3.x, a fost lansată pe 31 decembrie 2011.[5] În 2015 un benchmark publicat pe website-ul a arătat că scripturile în Gambas 3.8.90 sunt mai rapide decât cele create în Perl 5.20.2 și versiunea 2.7.10 a lui Python.[6]

Caracteristici

modificare
 
Gambas 2.7.0 rulând pe Fedora cuBlackbox

Gambas este conceput pentru a dezvolta programe grafice utilizând Qt (în prezent Qt 4.x sau 5.x) sau GTK+ toolkit (GTK 3.x de asemeni și versiunea 3.6.0); IDE-ul Gambas este scris în Gambas.[7] Gambas include un design GUI care ajută la crearea interfețelor utilizatorului, dar poate și să creeze aplicații care ruleaza pe Linia de comandă.[8].

Funcționalitatea este asigurată de variatatea de componente pe care le deține, fiecare dintre acestea putând fi alese pentru a oferi caracteristici suplimentare.[9] Desenul poate fi creat prin seturi de intrumente Qt și GTK+, cu o componentă suplimentară care este proiectată pentru a comuta între ele.[10] Desenul poate fi de asemeni furnizat prin Simple Direct Media Layer [11]), de asemeni poate fi utilizat pentru redarea audio printr-o componentă de superat separată OpenAL. Suportul de accelerare GPU este disponibi cu ajutorul unei componente OpenGL

 
Un exemplu folosind Gambas 3 IDE
 
Game: Stars War creat în Gambas3

Cu Gambas, dezvoltatorii pot folosi baze de date cum ar fi MySQL sau PostgreSQL, construi aplicații în KDE (Qt) și GNOME GTK+ cu DCOP, traduc programele din Visual Basic la Gambas și le execută sub Linux, construiesc soluții de rețea și crează aplicații web CGI. IDE-ul include, se asemenea, un instrument pentru a creea pachetele de instalare, care suportă GNU Autotools, slackpkg, pacman, RPM, and debs (utimele două adaptate pentru distribuții specifice cum ar fi Fedora/RHEL/CentOS, Mageia, Mandriva, OpenSUSE și Debian, Ubuntu/Mint).

Diferențe față de Visual Basic

modificare

Gambas are rolul de a oferi o experiență similară dezvoltării în Microsoft Visual Basic, care nu este un program gratuit. Autorul lui Gambas precizează că există similtudini cu Visual Basic, cum ar fi sintaxa pentru programele BASIC și mediul de dezvoltare integrat;Gambas a fost scris de la bun început ca fiind un mediu de dezvoltare propriu și încearcă să îmbunătățească formula.[12][13][14]

Adopție

modificare
 
DONKEY.GB

Mai multe programe și multe exemple de cod au fost scrise cu și pentru Gambas. Format:Începând cu, Freecode (fostul Freshmeat) a afișat o listă cu 23 de aplicații care au fost dezvoltate folosind Gambas,[15] în timp de Wiki Gambas afișează 70;[16] mai multe site-uri specializate au enumerat aplicații și exemple în Gambas.[17][18][19][20] Există chiar și o aplicație scrisă în Gambass, numită Gambas3 ShowCase, care funcționează ca un centru software pentru a descărca sau a instala aplicații Gambas 3.[21]

Cod exemplu

modificare

Hello world - Exemplul principal în toate limbajele

Public Sub Main()

  Message("Hello World!")

End

Program care calculează un polinom 100 de termeni de 500000 de ori și o repetă de zece ori (utilizat pentru benchmarking ).

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

Referințe

modificare
  1. ^ „Gambas - Gambas Almost Means Basic”. Accesat în . 
  2. ^ „Gambas Documentation Introduction”. Gambas Website. Accesat în . 
  3. ^ Upfold, Peter (). „Gambas — Almost Visual Basic for Linux”. FOSSwire. Accesat în . 
  4. ^ „Gambas: A Fast Visual Basic for Linux”. CodeFez. Arhivat din original la . Accesat în . 
  5. ^ „Gambas 3.0 for BASIC with bug and security fixes”. The H. Accesat în . 
  6. ^ „Benchmarking”. Gambas Website. Accesat în . 
  7. ^ „Frequently Asked Questions”. Gambas Documentation. Accesat în . 
  8. ^ An Alphabet of Computer Languages: BASIC, PCLinuxOS Magazine
  9. ^ Fernandez, Daniel (). „Regarding Gambas”. OSNews. Accesat în . 
  10. ^ „Gambas RAD”. Linux.co.uk. Arhivat din original la . Accesat în . 
  11. ^ „Why a new SDL component?”. Gambas Mailing List. Arhivat din original la . Accesat în . 
  12. ^ Mark Alexander Bain (). „Gambas -- Almost Visual Basic on Linux”. Suite101. 
  13. ^ Frank Wieduwilt (octombrie 2008). „Programming with the Gambas Basic IDE”. Linux Pro Magazine. Accesat în . 
  14. ^ AWC Electronics. „Physical Computing with Linux: A Rapid Approach using Gambas”. Accesat în . 
  15. ^ „23 projects tagged "Gambas". Freshmeat. Accesat în . 
  16. ^ „Application Repository”. Gambas. Accesat în . 
  17. ^ „GAMBAS BASIC Web site”. GAMBAS BASIC. Arhivat din original la . Accesat în . 
  18. ^ „Gambas Category”. Rosseta Code. Accesat în . 
  19. ^ „Gambas Examples”. Piga Software. Accesat în . 
  20. ^ „Gambas Programs”. Piga Software. Accesat în . 2010
  21. ^ „Gambas3 ShowCase”. gbWilly. Arhivat din original la . Accesat în . 

Lectură suplimentară

modificare

Legături externe

modificare
 
Commons
Wikimedia Commons conține materiale multimedia legate de Gambas