Apprenez à programmer en Vala

a marqué ce sujet comme résolu.

Pour une grosse application, quand le main est dans une classe, ça peut être bien (et même nécessaire), mais sinon je ne vois pas trop l'utilité : Vala mets automatiquement les méthodes hors des classes/interfaces en static et le public ne sert à rien, puisque cette méthode n'est censée être appelée qu'au lancement du programme, et pas par d'autres méthodes. Et puis pour un tuto qui se veut accessible aux débutants, c'est bien je pense de ne pas balancer 42 mot-clés dès le début, sans vraiment comprendre à quoi ils servent.

Et pour les commentaires Valadoc, il ont la forme suivante (je suis allé vérifier :p ).

1
2
3
4
5
6
/**
 * Le point d'entrée du programme
 */
void main () {
    // blabla
}

Mais les commentaires multilignes ne servent pas que pour la doc, on peut en mettre où on veut. Par contre je ferai sûrement une annexe sur comment bien documenter son coder, en suivant le format de Valadoc.

+0 -0

En tout cas, beau travail sur ce tutoriel, j'avais commencé à écrire un ebook sur le sujet aussi. Mais c'était sur la version 0.16 de vala, qui date beaucoup, et depuis pas mal de trucs ont changés. x)

Est-ce que parler de comment utiliser CMake/automake pour compiler son app serait intéressant dans ce guide ou vaudrait-il avoir d'autres tutoriaux à ce propos ? x)

+0 -0

En tout cas, beau travail sur ce tutoriel, j'avais commencé à écrire un ebook sur le sujet aussi. Mais c'était sur la version 0.16 de vala, qui date beaucoup, et depuis pas mal de trucs ont changés. x)

D'ailleurs si tu veux contribuer, je peux t'ajouter comme auteur.

Est-ce que parler de comment utiliser CMake/automake pour compiler son app serait intéressant dans ce guide ou vaudrait-il avoir d'autres tutoriaux à ce propos ? x)

skyzohkey

Peut-être en annexe ou dans un autre tutoriel, mais c'est un sujet que je ne maîtrise pas très bien, donc pas pour tout de suite en tout cas. Mais sinon ça peut être intéressant.

D'ailleurs si tu veux contribuer, je peux t'ajouter comme auteur.

À voir, pour le moment j'ai pas trop de temps pour écrire, j'ai du refactoring de masse (genre 10k LOC) en cours. x)

Peut-être en annexe ou dans un autre tutoriel, mais c'est un sujet que je ne maîtrise pas très bien, donc pas pour tout de suite en tout cas. Mais sinon ça peut être intéressant.

J'ferais probablement un tutoriel pour CMake et un autre pour automake, histoire de remplir la catégorie Vala! :p

+1 -0

Hello tout le monde !

La première partie est en cours de validation par Taurre. Seulement on a pensé que quelqu'un pour m'aider serait vraiment bénéfique pour le tutoriel. Donc si l'un d'entre vous qui connaît un peu Vala et qui sait bien expliquer (c'est surtout ça le problème, j'ai souvent du mal à bien expliquer :p ) voudrais contribuer, ça serait avec plaisir que je collaborerait. :)

Hello tout le monde !

La première partie est en cours de validation par Taurre. Seulement on a pensé que quelqu'un pour m'aider serait vraiment bénéfique pour le tutoriel. Donc si l'un d'entre vous qui connaît un peu Vala et qui sait bien expliquer (c'est surtout ça le problème, j'ai souvent du mal à bien expliquer :p ) voudrais contribuer, ça serait avec plaisir que je collaborerait. :)

Bat'

Salut ! De quoi tu as besoin au juste ?

J'arrête le Vala. En réfléchissant bien, je me dit que ce langage n'est qu'une perte de temps. Il va doucement mourir, dans son coin, parce qu'il n'a pas de vrai intérêt. Les outils ne conviennent pas : Valadoc.org a de nombreux défauts, déboguer du code est une horreur, il n'y a pas de vrai IDE, et installer des dépendances est trop complexe. On aurait pu créer ou améliorer les outils nécessaires, mais il aurait fallu le faire il y a dix ans. Aujourd'hui on a des langages comme Rust ou Crystal qui sont tout autant efficaces que Vala sur les quelques points qui rendait le langage intéressant (à savoir la vitesse et la légèreté tout en gardant un certain haut niveau, et la possibilité d'être réutilisé dans d'autres langages facilement). J'abandonne donc le Vala, Valse, poulp, Valhalla, le tuto sur Vala et tous mes projets liés au langage. Voilà. Cependant si quelqu'un veut reprendre le tuto, qu'il me fasse signe. :)

Si t'arrête le tuto et que personne ne veut le reprendre, essai au moins de le faire valider. Même si il est pas complet, il se suffi en temps que bonne introduction au langage, et ce serai dommage de le perdre dans les profondeur de la béta !

+2 -0

Juste par curiosité, quel langage vas-tu utiliser pour remplacer Vala ?

tleb

Pour le moment je ne sais pas trop. Je vais tester différents trucs jusqu'à trouver quelque chose qui me convienne. Je pense à Rust, mais faut voir.

Si t'arrête le tuto et que personne ne veut le reprendre, essai au moins de le faire valider. Même si il est pas complet, il se suffi en temps que bonne introduction au langage, et ce serai dommage de le perdre dans les profondeur de la béta !

mrBen

Yep, j'essaierai de terminer la première partie. ;)

Bon, comme je l'ai dit sur d'autres sujets où j'avais déjà annoncé un peu plus tôt que j'arrêtais Vala…1

Bon, j'ai réfléchi à ma décision d'arrêter Vala, et je suis revenu dessus. Même si Vala a des problèmes, sa syntaxe est l'une des seules que je supporte (je suis assez exigeant de ce côté là, et les seules syntaxes que j'aime sont celle de Vala et de Ruby). Les autres langages que j'ai pu essayer (Rust, Crystal, Ruby) ont eux aussi des problèmes (et parfois ça va plus loin que juste la syntaxe que je n'aime pas.

Je me dis donc qu'essayer de résoudre les problèmes de Vala est une meilleure solution que chercher une alternative, qui de toute façon risque elle aussi d'avoir des problèmes. De toute façon, je développe pour le fun, donc ce qui est important c'est que je prenne du plaisir. Et il n'y a qu'avec Vala que je m'amuse. Parce que c'est quand même drôle de passer deux heures à chercher d'où vient cette segfault.

La rédaction du tuto va donc finalement continuer.


  1. Il faudra que je réfléchisse un peu plus avant de dire certaines choses des fois. :p 

Même si Vala a des problèmes, sa syntaxe est l'une des seules que je supporte.

Bat'

T'as qu'à faire du C#, la syntaxe de Vala en est fortement inspirée. Et question debug et propension à avoir un code qui fonctionne du premier coup, j'ai jamais vu mieux qu'IntelliSense. Je suis pas pro Micro$oft, mais maintenant que .NET Core et VSCode sont libre et disponible sur linux… C'est vrai que c'est bien Vala ;)

+0 -0

T'as qu'à faire du C#, la syntaxe de Vala en est fortement inspirée. Et question debug et propension à avoir un code qui fonctionne du premier coup, j'ai jamais vu mieux qu'IntelliSense. Je suis pas pro Micro$oft, mais maintenant que .NET Core et VSCode sont libre et disponible sur linux… C'est vrai que c'est bien Vala ;)

mrBen

J'ai (re)fait un peu de C# récemment et c'est vrai que c'est sympa (sauf les { tous seuls sur une ligne, j'ai l'impression de perdre une place folle). Mais après ce qui est vraiment drôle avec c'est l'UWP et ça par contre c'est que sous Windows…

En réfléchissant bien, je me dit que ce langage n'est qu'une perte de temps. Il va doucement mourir, dans son coin, parce qu'il n'a pas de vrai intérêt. Les outils ne conviennent pas : Valadoc.org a de nombreux défauts, déboguer du code est une horreur, il n'y a pas de vrai IDE, et installer des dépendances est trop complexe. On aurait pu créer ou améliorer les outils nécessaires, mais il aurait fallu le faire il y a dix ans. Aujourd'hui on a des langages comme Rust ou Crystal qui sont tout autant efficaces que Vala sur les quelques points qui rendait le langage intéressant (à savoir la vitesse et la légèreté tout en gardant un certain haut niveau, et la possibilité d'être réutilisé dans d'autres langages facilement).

Bat'

J'ai un ressenti un peu similaire au tien (sans tout à fait perdre espoir ;) ) : Vala est arrivé un peu tard, a mis beaucoup de temps à atteindre la maturité, est peu mis en avant (on aurait aimé que GNOME soutienne le langage de façon plus active, plutôt que d'encourager l'utilisation de JavaScript par exemple) et paraît moins intéressant qu'un certain nombre de langages plus récents (Crystal, Rust, Nim…). L'éco-système Vala est à mon avis trop chaotique pour rencontrer une adoption franche, et manque un peu de centralisation/direction. Je ne sais pas comment ça va évoluer (il a été question de déplacer le compilateur vers Github je crois ?).

Cela étant dit, ça n'empêche pas d'utiliser le langage. Par exemple, la distribution Elementary OS soutient activement le langage, et vient d'ailleurs d'annoncer qu'elle hébergerait désormais valadoc.org, dont tu parlais au-dessus. Globalement, ce sont probablement les bibliothèques qui vont faire la différence (je ne pense pas qu'il soit aussi facile d'utiliser des bibliothèques comme GStreamer dans les autres langages dont on parlait…), ça serait simplement plus confortable si le développement du compilateur était un peu plus actif, et le langage mieux mis en avant.

Du coup je t'ajoutes comme auteur ?

Ok !

+1 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte