J'ai l'impression que les commentaires que j'ai pu lire sont uniquement des « vu d'ici j'aime pas », et je trouve ça dommage. Pour avoir un peu joué avec, je dois dire que j'aime beaucoup coder en Go, et j'ai la même impression de liberté que quand je code en Ruby (je parle bien de l'impression hein ! ça reste un langage à typage statique, donc plus restrictif).
La fonctionnalités que je préfère, c'est... le mécanisme des interfaces. Je défini mon interface, et c'est tout, je peux l'utiliser. Tous les types qui implémentent les bonnes méthodes implémentent implicitement cette interface (typiquement, tout type implémente l'interface vide). C'est la fonctionnalité dont je rêvais quand je codais en Java).
Ensuite c'est vrai que sa syntaxe change de C, mais c'est pour moi une force de ce langage. Typiquement, je suis bien content de ne pas avoir à me retaper ces foutues parenthèses à chaque conditions, alors que, encore une fois, le compilo n'en a pas besoin ! (ok, en C on peut écrire « if (test) stmt; » mais je trouve ça moche et traitre. Ensuite le « ; » dans le if parait très étrange au début, mais il permet d'écrire « if my_var = my_val ; my_var { », un équivalent de « if (my_var = my_val) { » qui supprime une ambigüité (voulait-on écrire « if (my_var == my_val) { » ?). Au final, ça change mais ne perturbe pas (on s'y fait très vite) et ça supprime certaines ambigüités : j'adore.
Bref, je ne suis pas en train de vous dire que c'est le meilleur langage de l'univers, mais vous devriez éviter de vous fixer sur des détails (« il ne ressemble pas à ce que je connais, mais il n'est pas assez différent de ce que je connais ») et lui donner sa chance.
# Testez-le, ensuite vous pourrez critiquer
Posté par dohzya . En réponse à la dépêche Quelques nouvelles rapides du langage Go. Évalué à 8.
J'ai l'impression que les commentaires que j'ai pu lire sont uniquement des « vu d'ici j'aime pas », et je trouve ça dommage. Pour avoir un peu joué avec, je dois dire que j'aime beaucoup coder en Go, et j'ai la même impression de liberté que quand je code en Ruby (je parle bien de l'impression hein ! ça reste un langage à typage statique, donc plus restrictif).
La fonctionnalités que je préfère, c'est... le mécanisme des interfaces. Je défini mon interface, et c'est tout, je peux l'utiliser. Tous les types qui implémentent les bonnes méthodes implémentent implicitement cette interface (typiquement, tout type implémente l'interface vide). C'est la fonctionnalité dont je rêvais quand je codais en Java).
Ensuite c'est vrai que sa syntaxe change de C, mais c'est pour moi une force de ce langage. Typiquement, je suis bien content de ne pas avoir à me retaper ces foutues parenthèses à chaque conditions, alors que, encore une fois, le compilo n'en a pas besoin ! (ok, en C on peut écrire « if (test) stmt; » mais je trouve ça moche et traitre. Ensuite le « ; » dans le if parait très étrange au début, mais il permet d'écrire « if my_var = my_val ; my_var { », un équivalent de « if (my_var = my_val) { » qui supprime une ambigüité (voulait-on écrire « if (my_var == my_val) { » ?). Au final, ça change mais ne perturbe pas (on s'y fait très vite) et ça supprime certaines ambigüités : j'adore.
Bref, je ne suis pas en train de vous dire que c'est le meilleur langage de l'univers, mais vous devriez éviter de vous fixer sur des détails (« il ne ressemble pas à ce que je connais, mais il n'est pas assez différent de ce que je connais ») et lui donner sa chance.