Question

Un autre chapitre des « arguments entre moi-même et l'autre développeur senior » série: P

Ma position est que lorsque vous faites le développement web, le code de navigateur doit être écrit d'abord et avant tout d'adhérer aux normes Web du W3C, même si Internet Exploder a la plus grande part de marché (où entre 51% et 79% en fonction de qui fait le suivi). Mon raisonnement est le suivant:

  • Les normes sont verrouillées et tous les développeurs de navigateurs se dirigent vers à un support libre d'au moins 100% bug pour toutes les normes établies. Code devrait donc être écrit et testé dans Firefox / Chrome / Safari, qui sont beaucoup plus proches de soutien des normes appropriées que IE8, alors les balises conditionnelles devraient être utilisées dans IE pour contourner ses bugs. Ceci est particulièrement le cas car vous pouvez utiliser des balises conditionnelles pour contourner les bugs d'IE, mais si vous essayez de coder en sens inverse, il est beaucoup plus difficile d'écrire hacks pour forcer Firefox / Safari / etc pour afficher correctement le HTML / CSS code-cassé .

  • Vous êtes futur épreuvage vos applications Web si vous concevez des normes car tous les navigateurs sont visant à la même place, les normes-sages, ce qui signifie que vous ne serez pas parmi la foule qui alors doit réparer leur application chaque fois qu'une nouvelle version du navigateur sort qui est plus proche de standards du Web, ce qui rend certains de vos hacks initiales briser maintenant la mise en page.

  • Coding quelque chose de cassé pour soutenir la plus grande part de marché puis « unbreaking » pour la plus petite part de marché, si vous avez le temps, semble être une manière négligente d'approcher un emploi et suggère que vous pensez que 20% des parts de marché est insignifiant, que je pense est très loin de la vérité.

Mon co-développeur affirme:

  • Les différentes compagnies de navigateur aiment partir sur leurs propres tangentes et ne se soucient pas vraiment sur les normes de toute façon, en essayant de code de normes est une perte de temps.

  • Coding pour soutenir une minorité ~ 20% de parts de marché ne vaut pas l'effort aussi longtemps que la page affiche à peu près dans ces navigateurs d'une manière qui est encore utilisable.

  • Un navigateur est un navigateur est un navigateur. Il est juste une fenêtre pour le rendu du texte et je ne devrais pas être inquiétant tant de choses à la recherche exactement à droite.

  • Il est une douleur d'avoir à se développer dans Firefox quand il préfère IE8 de toute façon.

Je suis le responsable et bien sûr, je peux dire « ceci est la façon dont il va », mais je déteste être un Nazie et en disant « mon chemin ou la route »; Je pense qu'il est préférable d'avoir les autres à comprendre pourquoi nous faisons quelque chose d'une certaine façon pour que nous sommes d'accord que nous procédons et par conséquent les conventions suivantes nous sommes coincés parce que la raison derrière eux est apprécié à contrecœur plutôt que suivi.

Puis-je obtenir des commentaires dans cet argument?

Était-ce utile?

La solution

Élaborer des normes du W3C, et le faire bien paraître dans IE. Ils ne sont pas mutuellement exclusifs.

Autres conseils

Connaissez votre public : Est-ce qu'ils se soucient si votre site est conforme aux normes? Probablement pas, sauf si vous écrivez un site pour zélotes développeur web. Il est plus probable qu'ils ne sauront pas prendre soin ou ne même pas ce que W3C est.

Votre public ont plus tendance à choisir un navigateur spécifique? Gardez à l'esprit que tous les sites reçoivent la même diffusion des navigateurs. sites Tech obtient moins IE frappe que les sites généraux.

Être pratique : La plupart des sites obtiennent la plupart de leurs plus grands succès de l'IE. Plus précisément, IE 6 et 7. Il ignore la réalité d'ignorer les bizarreries de IE. Vous obtiendrez de nombreux utilisateurs se plaindre de la façon dont votre site ne fonctionne pas si vous ne passez pas le temps de le faire fonctionner dans IE 6 et 7. IE 6 est encore un grand navigateur, utilisé par la plupart des entreprises Microsoft-centrique.

Soyez réaliste : conformes aux standards HTML est pas vraiment pratique, autre que de faire appel à zélotes. Idéalement, tous les navigateurs mettent en œuvre la norme. Mais ils ne le font pas. Il est irréaliste de mettre en œuvre une norme ne met en œuvre complètement.

La ligne de fond est un site qui la mise en œuvre fonctionne dans tous les navigateurs IE6 et plus. Si vous avez à l'échec grâce aux anciens navigateurs, faites-le. Mais ne les ignorez pas . Ils existent et les utilisateurs ne seront pas utiliser des sites qui ne fonctionnent pas. Souvent, ils sont mandatés par leurs entreprises de ne pas utiliser les différents navigateurs, donc ce qui suggère qu'ils mise à jour est pas une option.

J'adore les normes autant que le gars à côté, mais honnêtement cela est devenu quelque chose d'une guerre de religion / garçon fouettant.

Le problème majeur que j'ai vu est ce Patern:

  • Browser Company 'X' fait des navigateurs Tolérant aux pannes et aux tentatives pages d'affichage qui sont mal formés. Ils dévient également des normes le long de la Quoi qu'il en soit par accident ou pour tenter de créer leur propre nouvelle norme.
  • inexpérimentée Web utilise Developer navigateur « X » pour tester leur conception comme ils vont le long, ce qui permet des défauts dans leur balisage pour passer inaperçue.
  • Browser Company 'X' est maintenant pris au piège dans la position de rupture soit les sites existants ou de maintenir connue défauts dans les nouvelles versions de leur navigateur.

Ne pas faire partie de ce cycle.

Je ne sais pas quelle version de IE vous vraiment disputaient, mais cette digg Blog après montre que plus de la moitié des utilisateurs d'IE6 n'utilisent pas IE6 par choix.

Avoir un argument religieux sur les navigateurs ne va pas changer le fait que beaucoup de vos utilisateurs ne peuvent pas avoir de contrôle sur la façon dont ils voient votre site. Ainsi, il se résume à une décision d'affaires et le coût de la restauration par rapport bénéfice à ceux qui pourraient être un peu derrière la courbe.

  

Élaborer des normes du W3C, et le faire bien paraître dans IE. Ils ne sont pas mutuellement exclusifs.

Parfois, ils sont. Quand ils sont, en développement de normes W3C est généralement le choix sain d'esprit. Un problème plus important, bien sûr, se développe pour plusieurs versions de IE; fixer une limite inférieure dure à 7 est probablement une bonne idée, mais qui est à l'éditeur en question.

En construisant fondamentalement brisé, mais de manière sélective des conceptions ininterrompues vous ne faites rien, mais vous la mise en place à l'échec.

En réalité, une entreprise doit satisfaire à ses utilisateurs. Idéologie ne suffit pas. Développer des normes mais le faire fonctionner dans IE. Commentaire code et expliquer où hacks sont introduits. Si vous parlez IE8, ce n'est pas si mal. Si vous avez besoin pour soutenir IE7 ou même 6, alors vous aurez plus de travail.

Code pour le navigateur qui a une certaine part de marché et le plus étroitement adhère à l'épreuve. Travail autour pour les autres navigateurs et de décider quels navigateurs vous inquiétez pas au sujet.

Pour moi, à ce moment, cela signifie:

Code pour firefox, IE pour contourner, assurez-vous qu'il fonctionne de la même façon dans Chrome et Safari et ignorer le reste.

Il y a des affirmations intéressantes dans les arguments ci-dessus. Les vendeurs ne se soucient pas de normes. les applications d'épreuvage futures en respectant les normes. représente non IE ~ 20% de parts de marché. S'il devait y avoir des preuves empiriques pour ou contre eux, il pourrait aider.

Le plus important à mes yeux, vous avez une affirmation selon laquelle il est « vous pouvez utiliser des balises conditionnelles pour contourner les bugs d'IE, mais si vous essayez de coder en sens inverse, il est beaucoup plus difficile d'écrire hacks pour forcer Firefox / Safari / etc à afficher correctement le HTML / CSS code-cassé « . Cette affirmation d'un manque de symétrie est non-intuitive à mes yeux, mais si vrai est tout à fait un argument fort.

Personnellement, si quelqu'un dit vraiment « est à peu près juste ok » et « ne vous inquiétez pas ... exactement » alors j'aurais du mal à prendre au sérieux ces arguments.

Pourquoi développer dans / pour Firefox une douleur?

Je ne détiens aucun amour pour le W3C, comme les « normes » qui ont émergé il y a à peu près horrible et la raison pour laquelle tout le monde rend tout différent d'une manière ou d'une autre.

déclarations CSS conditionnelles , qui vous permet d'ajuster sur IE CSS bizarreries qui fonctionne dans la plupart des navigateurs.

Je pense que la meilleure chose à faire est d'écrire HTML qui semble bon et fonctionne comme prévu (normes schmandards), et quand vous êtes confronté à avoir à faire quelque chose de laid pour le faire fonctionner dans IE puis utilisez CSS conditionnel.


Précisions sur mon opinion cynique W3C: Big. Balle. De. La boue.

J'instruis toujours mon équipe pour concevoir avec Firefox (lire « normes W3C ») à l'esprit et ne remplissez plus tard dans les espaces excentriques où IE est concerné. Je ne pouvais pas d'accord avec votre point de vue plus parce que cela fait tellement de sens.

MS a été supposément essayé de faire IE plus dociles depuis toujours, mais ils sont encore un long shot ... alors que d'autres navigateurs tels que Firefox et Chrome ont l'avantage d'apprendre des erreurs de MS. Étant donné qu'une partie importante des utilisateurs du Web utilisent encore IE 6, vous allez toujours devoir ajouter des contrôles conditionnels spéciaux pour répondre à ces « chaînons manquants ».

Je ne vois pas comment il est une douleur à développer pour Firefox, compte tenu des addins impressionnants tels que Firebug et Web Developer.

Son argument souffre d'un défaut majeur: Quelle version de IE ciblez-vous?

Un site peut sembler grande dans IE6 et sucer terriblement dans IE7 et 8. Ou regarder grand dans IE6 et 7, mais terriblement sucer dans le défaut de IE8 (plus conforme aux normes) le mode de rendu.

support IE6 diminue; l'utilisation IE7 a dépassé l'utilisation IE6 un certain temps, et IE8 gagne lentement traction.

Sur le web, la conception d'un navigateur de 8 ans est une erreur. Conception pour les navigateurs les plus récents d'abord, puis ajouter ce que vous avez besoin pour les anciens navigateurs.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top