Il y a quelques années, je me considérais comme un développeur web, connaissant les 3 langages de base (HTML, CSS, JS) et beaucoup de PHP. Passer d'un simple texte à de véritables sites Web a été pénible à cause des soi-disant «normes» qui, à l'époque, étaient ridiculement compliquées pour moi. Cela se résumait à peu près à cela (moins les trucs liés à IE):
Les normes sont là pour remplacer les anciennes façons de faire les choses de manière plus simple. Cependant, lorsque j'essayais d'implémenter certaines des choses (mise en page entièrement basée sur CSS par exemple), il m'a fallu 10 fois plus de temps pour le faire si je faisais la solution la plus simple et qui fonctionne toujours. Si le rendu est le même, alors pourquoi devrais-je utiliser l'exemple plus compliqué qui prend 10 fois plus de temps et se casse une fois que vous changez de navigateur? Cela a déclenché de nombreux longs débats religieux dans ## php, ## css et ## js dans Freenode IRC et m'a en fait banni de ## css parce que j'ai foiré avec leur petit monde là-bas.
Ma question: devrais-je suivre toutes les normes et conventions de codage, même si elles me prennent 10 fois plus longtemps mais m'obtiennent le même résultat que le simple?
Pour le sondage, ceux d'entre vous qui ont des sites Web de toute taille (grands ou petits), suivez- vous toutes les normes?
la source
Réponses:
Produit d'abord, puis polissez.
Faites en sorte que votre site / application / jeu fasse ce qu'il est censé faire. Soyez opérationnel et suscitez l'intérêt des gens.
Ensuite, lorsque vous avez le temps, revenez en arrière et polissez-le. Mais seulement parce que vous vous souciez, pas parce que quelqu'un d'autre le fait.
Bien sûr, si les problèmes de non-conformité signifient que les gens ne peuvent pas le voir, ou qu'il est incroyablement laid, ou qu'il faut un mois pour le charger, ou qu'il est difficile à maintenir, ou qu'il bloque le navigateur, c'est un problème majeur. Mais ce serait toujours un problème majeur même si vous étiez conforme aux normes.
Les utilisateurs ordinaires ne regardent pas la source d'un site Web qui ne se charge pas et disent: "Eh bien, il n'affiche pas les images, mais il est entièrement conforme au W3C". Ils naviguent simplement vers un autre site Web et ne reviennent jamais.
En fin de compte, les normes sont là pour faciliter l'écriture des navigateurs et pour combler les failles de sécurité potentielles. Amazon, Penny-Arcade et Stack Overflow ne gagnent pas d'argent en exécutant un site Web conforme aux normes. Et à moins que vous ne participiez à un concours de rédaction de sites Web, vous non plus.
la source
Les rédacteurs de normes ont pensé à des choses qui ne vous sont pas venues à l'esprit, comme les problèmes d'accessibilité. Les normes existent pour une raison. Et, avec HTML5, les normes sont assez faciles à suivre.
Il peut parfois y avoir des raisons de ne pas suivre la norme, mais la suivre devrait être votre comportement par défaut.
la source
La paresse n'est pas une excuse pour ne pas suivre la norme. Parfois, si la norme est stupide, c'est une raison pour ne pas la suivre. Comment savez-vous que la norme est stupide? Lorsque vous avez fait un effort de bonne foi pendant une longue période pour suivre toutes les normes pertinentes dans la lettre et dans l'esprit et que vous êtes parvenu à une conclusion raisonnable et bien étayée que la norme dans certains cas de niche est en fait en défaut, pas tu.
La plupart du temps, cela ne sera cependant pas applicable.
la source
Je dirais `` adhérer '' aux normes du mieux que vous pouvez - mais ne perdez pas trop de temps à tergiverser, parfois vous pouvez trop concevoir un HTML / CSS standard dans la poursuite de la perfection des normes et être laissé dans le pire état.
Par exemple, dans l'une de nos applications Web, nous avons une page de facturation. La page répertorie une longue liste d'articles à facturer et contient plusieurs colonnes. Le développeur d'origine est allé tellement par dessus bord avec le syndrome "Les tables sont mauvaises" qu'il a conçu toute la structure "table" en CSS.
Assez impressionnant, jusqu'à ce que vous soyez celui qui a maintenant besoin d'ajouter quelques colonnes supplémentaires au rapport, regardez ces colonnes aller partout car vous devez réajuster les paramètres CSS, la largeur, etc ..... cauchemar.
Si le développeur n'était pas aussi anxieux de suivre les soi-disant normes jusqu'au départ, il se serait rendu compte qu'en réalité, un tableau html normal aurait tellement plus de sens, la date de facturation est après tout tabulaire.
Cela m'amène au HTML sémantique. Je pense que votre code HTML ne doit contenir que des éléments décrivant votre page. Les styles doivent être stockés en CSS et au pire, saisis dans l'attribut 'Style' de la balise HTML le cas échéant.
Je ne vois pas non plus de raison valable pour laquelle on ne devrait pas mettre leur HTML à travers un validateur - à condition que vous obteniez du HTML valide, vous y êtes à peu près.
la source
Votre première considération devrait être de prendre en charge les navigateurs que vos clients utilisent. Deuxièmement, vous devez respecter les normes le cas échéant.
Par exemple, dans un projet récent, le seul navigateur que nous devions prendre en charge était Firefox 3.5. Cela signifiait que nous pouvions utiliser les propriétés -moz css sans se soucier de l'apparence de la page dans un autre navigateur. Cela aurait-il vraiment valu la peine de faire des coins arrondis à long terme, juste pour que nous utilisions des CSS standard?
Cela dit, lors de la création de sites pour plusieurs navigateurs, les normes vous aideront généralement, plutôt que de vous gêner. J'essaierais d'adhérer à la plupart des normes, mais je ne perdrais pas de sommeil si je devais dévier pour la compatibilité du navigateur.
Pour le sondage, la réponse de moi est non.
la source
Ne suivez pas aveuglément les stanards. Certaines normes sont bonnes, d'autres sont mauvaises. Ils servent à diverses fins et certains, comme les ébauches de HTML5, servent à pousser une collection des grands fabricants de navigateurs et développeurs Web dans une direction particulière qui semble la plupart du temps bonne. Mais rappelez-vous toujours qu'il y a des tas de choses terribles qui ont été normalisées ...
COBOL était également un standard.
la source