Domanda

Un altro capitolo dagli "argomenti tra me e l'altro anziano sviluppatore" serie: P

La mia posizione è che quando si fa lo sviluppo del web, codice del browser dovrebbe essere scritto in primo luogo a rispettare gli standard web W3C, anche se Internet Exploder ha la maggiore quota di mercato (in qualsiasi punto tra il 51% e il 79% a seconda di chi sta facendo il tracking). Il mio ragionamento è:

  • Gli standard sono bloccati e tutti gli sviluppatori di browser si stanno muovendo verso al minimo, 100% supporto gratuito bug per tutti gli standard stabiliti. Pertanto il codice dovrebbe essere scritto e testato in giro per Firefox / Chrome / Safari, che sono molto più vicini a supporto adeguato standard di IE8, quindi i tag condizionali devono essere utilizzati in Internet Explorer per aggirare i suoi errori. Questo è particolarmente il caso visto che è possibile utilizzare i tag condizionali per aggirare i bug di IE, ma se si tenta di codificare in senso inverso, è molto più difficile scrivere hack per forzare Firefox / Safari / etc per visualizzare correttamente il codice HTML / CSS codificati-broken .

  • Stai a prova di futuro le applicazioni web, se si progetta per gli standard visto che tutti i browser mirano allo stesso posto, standard-saggio, il che significa che non sarà tra la folla che ha poi riparare la loro applicazione ogni volta che una nuova versione del browser viene fuori che è più vicino agli standard web, rendendo così alcune delle vostre hack iniziali ora rompere il layout.

  • Codifica qualcosa di rotto per sostenere la quota di mercato più grande allora "unbreaking" per la quota di mercato più piccolo, se avete tempo, sembra un modo incurante di affrontare un lavoro e suggerisce che si pensa che la quota di mercato del 20% è insignificante, che credo sia molto lontano dalla verità.

Il mio co-sviluppatore afferma:

  • Le diverse aziende del browser piace andare per conto loro tangenti e in realtà non si preoccupano gli standard in ogni caso, in modo da cercare di codice per gli standard è una perdita di tempo.

  • Codifica per sostenere una quota di mercato di minoranza ~ 20% non vale la pena fino a quando la pagina viene visualizzata circa in quei browser in un modo che è ancora utilizzabile.

  • Un browser è un browser è un browser. E 'solo una finestra per il rendering del testo e non dovrebbe essere preoccupante tanto di cose cercando esattamente a destra.

  • E 'un dolore di dover sviluppare in Firefox quando si preferisce IE8 in ogni caso.

Io sono quello in carica e, naturalmente, posso dire "questo è il modo in cui va", ma io odio solo di essere un nazista e dicendo "il mio modo o l'autostrada"; Penso che sia meglio avere gli altri a capire il motivo per cui stiamo facendo qualcosa in un certo modo in modo che siamo d'accordo mentre procediamo e quindi le convenzioni stiamo seguenti si blocca al perché la ragione dietro di loro è apprezzato piuttosto che a malincuore seguita.

Posso ottenere qualche input in questa argomentazione?

È stato utile?

Soluzione

Sviluppare gli standard W3C, e farlo sembrare buono in IE. Essi non si escludono a vicenda.

Altri suggerimenti

Conosci il tuo pubblico : fare si preoccupano se il tuo sito è conforme agli standard? Probabilmente no, a meno che non si sta scrivendo un sito per fanatici web developer. E 'più probabile che non si cura o non sa nemmeno cosa W3C è.

Il tuo pubblico hanno una maggiore tendenza a scegliere un browser specifico? Tenete a mente che non tutti i siti ottenere la stessa diffusione dei browser. siti Tech ottiene meno IE colpisce di siti generali.

Essere pratico : La maggior parte dei siti di ottenere la maggior parte dei loro successi da IE. In particolare, IE 6 e 7. Si sta ignorando la realtà di ignorare capricci di IE. Otterrete molti utenti lamentano come il vostro sito non funziona se non si spende il tempo per farlo funzionare in IE 6 e 7. IE 6 è ancora un grande navigatore, utilizzato dalla maggior parte delle aziende Microsoft-centric.

Essere realistici : HTML conforme agli standard non è molto pratica, se non per appello ai fanatici. Idealmente, tutti i browser implementano lo standard. Ma non lo fanno. E 'irrealistico per attuare una norma che nessuno implementa completamente.

La linea di fondo è realizzare un sito che funziona in tutti i browser IE6 in su. Se si dispone di fallire con grazia al browser più vecchi, farlo. Ma non ignorarli . Essi esistono e gli utenti non potranno utilizzare i siti che non funzionano. Spesso essi sono incaricati dalla loro imprese di non usare diversi browser, in modo che suggerisce che l'aggiornamento non è un'opzione.

Amo standard tanto quanto il prossimo ragazzo, ma onestamente questo è diventato una sorta di religiosa di guerra / capro espiatorio.

Il problema principale che ho visto è questo patern:

  • Browser Company 'X' rende i browser fault-tolerant e tentativi di pagine di visualizzazione che sono mal formate. Essi si discosta anche da norme lungo la In entrambi i casi per caso o nel tentativo di creare il proprio nuovo standard.
  • usi sviluppatori inesperto web Browser 'X' per testare la loro design come vanno avanti, permettendo guasti il loro margine di profitto per passare inosservato.
  • Browser Company 'X' è ora intrappolato in la posizione di una delle ultime siti esistenti o mantenere nota difetti di nuove release del proprio browser.

Non essere parte di questo ciclo.

Non sono sicuro di quale versione di IE si sta davvero litigare, ma questo digg blog dopo dimostra che oltre la metà degli utenti di IE6 non utilizzano IE6 per scelta.

Avere un argomento religioso su browser non è destinato a cambiare il fatto che molti dei vostri utenti potrebbero non avere alcun controllo sul modo in cui visualizzare il tuo sito. Quindi si tratta di una decisione di business, e il costo rispetto al beneficio di ristorazione per coloro che potrebbero essere un po 'dietro la curva.

  

Sviluppare gli standard W3C, e farlo sembrare buono in IE. Essi non si escludono a vicenda.

A volte sono. Quando sono, sviluppando gli standard W3C è di solito la scelta sana. Un problema più grande, naturalmente, sta sviluppando per più versioni di IE; la fissazione di un limite rigido inferiore a 7 è probabilmente una buona idea, ma che è fino a l'editor in questione.

Con la costruzione di disegni fondamentalmente rotti ma in modo selettivo ininterrotta si sta facendo nulla, ma voi stessi l'impostazione fino a fallire.

In realtà un business deve soddisfare i suoi utenti. L'ideologia non è sufficiente. Sviluppare gli standard, ma poi farlo funzionare in IE. Commento codice e spiegare da dove vengono introdotti hack. Se si sta parlando di IE8, non è poi così male. Se è necessario supportare IE7 o addirittura 6, allora si avrà più lavoro.

Il codice per il browser che ha qualche quota di mercato e più strettamente aderisce alla prova del fuoco. Lavoro in giro per altri browser e decidere quale browser che non ti preoccupare.

Per me, in questo momento, questo significa che:

Il codice per firefox, aggirare per IE, assicurarsi che funziona allo stesso modo in Chrome e Safari e ignorare il resto.

Ci sono alcune affermazioni interessanti gli argomenti di cui sopra. I fornitori non si preoccupano gli standard. applicazioni future correzione aderendo alle norme. Non-IE rappresenta ~ 20% della quota di mercato. Se ci dovesse essere qualche evidenza empirica a favore o contro questi potrebbe aiutare.

La maggior parte importante ai miei occhi, si dispone di un credito che è ", è possibile utilizzare i tag condizionali per aggirare i bug di IE, ma se si tenta di codificare in senso inverso, è molto più difficile scrivere hack per forzare Firefox / Safari / etc a visualizzare il codice HTML / CSS codificati spezzato in modo corretto." Questa affermazione di una mancanza di simmetria non è intuitivo per i miei occhi, ma se è vero è piuttosto un argomento forte.

Personalmente, se qualcuno fosse davvero dicendo "grosso modo giusto è ok" e "non preoccuparti ... esattamente" allora avrei difficoltà a prendere sul serio questi argomenti.

Perché si sta sviluppando in / per Firefox un dolore?

non nutro alcun amore per il W3C, come gli "standard" che sono emerse da lì sono praticamente orribile e il motivo per cui ognuno rende tutto diverso, in un modo o in un altro.

dichiarazioni CSS condizionale , che permette di ottimizzare le peculiarità di IE CSS che funziona nella maggior parte dei browser.

Quindi penso che la cosa migliore da fare è quello di scrivere codice HTML che sembra buono e funziona come previsto (norme schmandards), e quando sei di fronte a dover fare qualcosa di brutto per farlo funzionare in IE quindi utilizzare condizionale CSS.


Chiarimento sulla mia cinica opinione W3C: Big. Palla. Di. Fango.

Ho sempre istruire la mia squadra per progettare con Firefox (leggi 'standard W3C') nella mente e solo più tardi colmare le lacune eccentrici in cui IE è interessato. Sono pienamente d'accordo con il punto di vista più perché questo rende così molto senso.

MS è stato presumibilmente cercando di rendere più compatibile IE da sempre, ma sono ancora un lungo tiro ... mentre gli altri browser come Firefox e Chrome hanno il vantaggio di imparare dagli errori di MS. Dal momento che una parte significativa di utenti di Internet usano ancora Internet Explorer 6, si sta andando sempre ad avere aggiungere particolari controlli condizionali di soddisfare tali "anelli mancanti".

Non vedo come è un dolore per lo sviluppo per Firefox, visti i componenti aggiuntivi impressionante come Firebug e Web Developer.

La sua tesi soffre di un grave difetto: Quale versione di IE stai rivolge?

Un sito può sembrare grande in IE6 e succhiare terribilmente in IE7 e 8. O grande in IE6 e 7, ma succhiare terribilmente in difetto di IE8 (più conforme agli standard) modalità di rendering.

supporto IE6 è caduta; utilizzo IE7 ha superato l'utilizzo IE6 un po 'indietro, e IE8 sta lentamente guadagnando trazione.

Sul web, la progettazione per un vecchio browser di 8 anni è un errore. Design per i browser più recenti, poi aggiungere quello che serve per i browser più vecchi.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top