Vala est un langage de programmation compilé, dont l'objectif est de fournir les bénéfices des langages de programmation modernes (comme la POO) aux développeurs de la plateforme GNOME qui utilisent GLib et son système GObject[3],[4].
Vala | ||
Date de première version | ||
---|---|---|
Paradigme | Structuré, imperatif, orienté objet | |
Auteur | Jürg Billeter | |
Développeur | Jürg Billeter, Raffaele Sandrini, Rico Tzschichholz | |
Dernière version | 0.52.3[1] () | |
Version en développement | 0.41.91 ()[2] 0.45.3 () |
|
Typage | statique, fort, nominatif | |
Influencé par | C#, C++, C, Java | |
Écrit en | Vala, sauf pour la première version qui était écrite en C | |
Système d'exploitation | Windows, Linux, macOS | |
Licence | Licence publique générale limitée GNU version 2.1 ou ultérieure (d) | |
Site web | wiki.gnome.org/Projects/Vala | |
Extension de fichier | .vala | |
modifier |
Sa syntaxe est basée sur celle de C# mais il ne nécessite pas d'environnement d'exécution. Vala est transformé en code C, lui-même compilé en code machine natif. Les avantages d'une telle chaîne de compilation sont de produire des logiciels qui requièrent moins de mémoire vive et qui s'exécutent plus rapidement. De plus, ce passage par l'étape C rend possible l'utilisation des bibliothèques C au moyen d'interfaces définies dans les fichiers Vapi. Des fichiers Vapi sont fournis avec Vala pour une grande partie de la plateforme GNOME, ainsi que pour d'autres bibliothèques.
Par exemple, les logiciels Shotwell, Geary, GNOME Contacts[5] ou le greffon Arte+7 pour Totem[6] sont écrits en Vala.
Exemple de code
Le programme « Hello World » :
void main () {
print ("Hello World\n");
}
Le programme « Hello World » programmation orientée objet :
public class Main {
public static int main (string[] args) {
stdout.printf("Hello, World\n");
return 0;
}
}
Éditeurs de texte et EDI
Il existe plusieurs éditeurs de texte ou EDIs qui supportent le langage Vala[7]. On a notamment :
- Atom (éditeur de texte), avec le paquet
language-vala-modern
[9] pour la coloration syntaxique et éventuellementvalhalla
[10] pour des outils supplémentaires - GNOME Builder[11]
- Eclipse (projet), avec le plugin
Valable
[12] - Emacs[13]
- Geany[14]
- Gedit, avec le paquet
Vala Toys for Gedit
[15] ouValencia
[16],[17] - MonoDevelop, avec le paquet
monodevelop-vala
. Cependant, ce paquet n'est plus maintenu[7]. - NetBeans, avec le paquet
netbeans-valaproject
[18] - Redcar
- Code, l'éditeur de texte fourni avec elementary OS
- Sublime Text, avec le paquet
Vala
[19] - TextMate, avec le paquet
Vala-TMBundle
[20] - Val(a)IDE, lui-même écrit en Vala[21],[22]
- Valama, lui-même écrit en Vala[23]
- Vim, avec un plugin[24] et éventuellement le paquet
syntastic
pour des outils supplémentaires[25] - Visual Studio Code, avec le paquet
vala
[26]
Voir aussi
- Quine en Vala
- Shotwell, un gestionnaire d'images écrit en Vala
- elementary OS, une distribution GNU/Linux qui recommande Vala[27]
Notes et références
Liens externes
Wikiwand in your browser!
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.