Home » Blog » Programmation » Bonjour le monde Vala !

Bonjour le monde Vala !

Posté dans : Programmation 5

Petite nouveauté sur le site elementaryos-fr.org, nous inaugurons une série d’articles liés à la programmation, plus particulièrement au langage vala qui est utilisé sur votre OS favori nommé Elementary OS.. C’est Breizhodrome, nouvel arrivé dans l’équipe qui s’occupera de ces articles.

Avant de rentrer dans le vif du sujet, et pour ceux qui ne connaissent pas Vala, voici une courte introduction issue de Wikipedia.fr :

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.

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, le logiciel Shotwell, GNOME Contacts1 ou le greffon Arte+7 pour Totem2 sont écrits en Vala.


 

Néanmoins, avant de se lancer dans la compilation de programme Vala, il est important d’installer un compilateur en l’occurence valac. Pour cela, il faudra passer par votre terminal favori :

sudo apt-get install valac-0.22

Une fois cette courte étape réalisée, c’est parti pour les explications, bonne lecture !


Tout d’abord, qu’est ce que le langage Vala ? Si vous ne le savez pas encore c’est la base de la plupart des applications d’elementary OS. Sa syntaxe est proche du C#.
Valac, son compilateur, traduit tout d’abord votre code en langage C, interprétable par le compilateur gcc qui le traduira en binaire (01) pour la machine.
Tout programme Vala se doit d’avoir une fonction principale d’entrée « main », qui peut s’écrire sous plusieurs formes :

public static void main() {}
public static int main() { return 0; }
public static void main (string[] args) {}

par exemple :

static void main (string[] args) {
  print ("bonjour tout le monde !");
}

 

Pourquoi le paramètre ‘args’ ? ça permet à votre programme d’utiliser des arguments lors de son exécution. le premier élément étant le nom de programme, et les éventuels autres valeurs entrées dans votre terminal. Enregistrez ce code dans un fichier nommé « main.vala » :

static void main (string[] args) {
  if (args.length < 2) {
    print ("usage: main <argument>n");
    return;
  }
  print ("argument : " + args[1] + "n");
}

que vous compilerez par : valac main.vala -o main et exécuterez par : ./main toto .

Le résultat sera « argument : toto » 😉

Voilà, vous avez réussi à écrire votre premier programme vala :).
Dans un prochain article vous verrez la gestion des erreurs dans votre programme.

 

5 Responses

  1. MOREAU Flavien
    | Répondre

    Hoho ! la suite vite ! 😀

    • yannick inizan
      | Répondre

      ça arrive 🙂

  2. Mr.BlueSky
    | Répondre

    Hello.
    Une petite question, à quelle point le tuto sera complet ? Le seul tuto vala en fr est sur developez et je le trouve pas hyper accessible, ni très complet

    Thanks.

    • yannick inizan
      | Répondre

      oula, developpez et ses tutos poussiéreux..
      je vais essayer de détailler les erreurs, les objets, valeurs, …

  3. Un-Pigeon
    | Répondre

    Je suppose que ça se code au bloc note et au terminal 😀
    Il serait temps que je ressorte mon Emacs et mon matériel !

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. Découvrez comment les données de vos commentaires sont traitées.