Mmmh, nous n'avons pas eu les mêmes expériences de programmation Perl en entreprise alors. Il y a huit ans, lorsque je faisais du Perl pour la première fois « sérieusement », use strict et use warnings étaient obligatoires. Il n'y avait pas de « style » à suivre à proprement parler, si ce n'est de mettre des parenthèses aux appels de fonctions, et ne pas utiliser les variables implicites -- ou alors bien expliquer ce que faisait le code en commentaire et pourquoi faire ainsi, lorsque ça se justifiait, du genre :
use strict;
use warnings;
# code avant ...
my $content;
# $! n'est pas expliqué dans le code car on apprend très vite qu'il est équivalent à
# ce que renvoie perror() ...
open (my $fh, '<', $file) || die "Could not open $file: $!";
# "Slurps" the file into $content. Making $/ local undefines it for the local scope
# and stops it from separating the file into "lines" with the '\n' character.
{
local $/;
$content = <$fh>;
}
# code après ...
Ce code est idiomatique (on le trouve un peu partout dans pas mal de tutoriels/bouquins), et nécessaire (le fichier à lire était un fichier binaire -- une image). Évidemment, ce code a vite été mis dans une fonction slurp ... :)
Le code était maintenable, car il était de toute manière lu et partagé par d'autres qui pouvaient avoir besoin de jeter un œil. Et contrairement à ce que tu sembles dire, un débutant peut parfaitement avoir de bonnes bases : il suffit qu'il ait été bien formé -- en l'occurrence je sortais plus ou moins d'IUT, où l'on m'avait appris à correctement nommer mes variables, indenter mon code et le modulariser ... Bref, ce qu'il faut savoir faire en C, Java, ou autres langages.
[^] # Re: Perl 6
Posté par lasher . En réponse à la dépêche Apprendre un langage de programmation par an. Évalué à 3.
use strict;
use warnings;
# code avant ...
my $content;
# $! n'est pas expliqué dans le code car on apprend très vite qu'il est équivalent à
# ce que renvoie perror() ...
open (my $fh, '<', $file) || die "Could not open $file: $!";
# "Slurps" the file into $content. Making $/ local undefines it for the local scope
# and stops it from separating the file into "lines" with the '\n' character.
{
local $/;
$content = <$fh>;
}
# code après ...
Ce code est idiomatique (on le trouve un peu partout dans pas mal de tutoriels/bouquins), et nécessaire (le fichier à lire était un fichier binaire -- une image). Évidemment, ce code a vite été mis dans une fonction slurp ... :)
Le code était maintenable, car il était de toute manière lu et partagé par d'autres qui pouvaient avoir besoin de jeter un œil. Et contrairement à ce que tu sembles dire, un débutant peut parfaitement avoir de bonnes bases : il suffit qu'il ait été bien formé -- en l'occurrence je sortais plus ou moins d'IUT, où l'on m'avait appris à correctement nommer mes variables, indenter mon code et le modulariser ... Bref, ce qu'il faut savoir faire en C, Java, ou autres langages.