Domanda

Sono confuso su quale sia la differenza tra il Progressive Enhancement e Degradazione Graceful . A me sembrano come la stessa cosa.

Si può spiegare a me le differenze tra i due e in quale situazione avrei usato uno sopra l'altro?

È stato utile?

Soluzione

Sono quasi esattamente la stessa cosa, ma differiscono nel contesto.

C'è una classe di browser definito "un Browser Grade". Questi sono i membri del tipico pubblico che (probabilmente) costituiscono la maggior parte dei visitatori. Inizierete con una linea di base di questi utenti. Chiamare questo migliori pratiche moderne .

Se si desidera migliorare l'esperienza per chiunque succede a usare FF3.6 o Safari 4 o qualche altro sviluppatore whizbang notte webkit whathaveyou, ti consigliamo di fare cose impressionanti come

  • angoli arrotondati tramite CSS
  • testo ombreggiato (ma per favore Dio, non troppo)
  • ombre (vedi sopra parentesi)

Questi fanno il vostro sito kick-ass cercando, ma non romperlo. Questo è progressive enhancement . Abbracciando il futuro dal punto di best practice .

D'altra parte, la tua nicchia sito Nintendo attrae un discreto numero di utenti IE5. Poveri voi, ma anche voi volete fare in modo che continuano a tornare. Si potrebbe fornire un'alternativa al vostro comportamento ajax includendo lo script ajax in un file esterno e se la loro JS non è acceso, forse i vostri link aggiornare l'intera pagina. Ecc Dal punto di vista di migliori pratiche moderne , si sta facendo in modo che alcuni mercati storici vengono soddisfatti da una qualche parvenza di un sito funzionale . Questo è graceful degradation .

Sono per lo più identici, ma differiscono in termini di priorità per molti team di sviluppo: PE è molto bello se avete il tempo, ma è spesso GD necessario

Altri suggerimenti

Se il tuo sito sembra altrettanto bene su tutti i browser, ma alcuni browser ottenere, per esempio, ballare pony perché supportano pony ballare, allora questo è Progressive Enhancement. Funziona in tutti i browser, ma alcuni browser ottenere qualcosa in più. Di solito questo termine viene applicato ad alcune funzioni Javascript che possono migliorare l'usabilità di là "raw HTML".

Se il tuo sito appare solo il modo in cui si intende il browser che completamente il supporto, per esempio, CSS3, e IE8- visualizzerà la stessa pagina senza, diciamo, angoli arrotondati, allora questo è degradazione scalabile. Il sito è davvero significava per i browser state-of-the-art, ma è ancora utilizzabile nei browser meno recenti, non solo come fantasia.

Alla fine, sono davvero la stessa cosa, hanno esaminato da due prospettive diverse.

La direzione da un riferimento scelto per ogni concetto è differente.

La degradazione Graceful inizia ad un livello di esperienza utente ideale e diminuisce a seconda delle capacità user agent fino a un livello minimo, il catering per gli agenti che non supportano alcune funzioni utilizzate dal basale.

Progressive Enhancement dalle ore una vasta esperienza degli utenti e aumenta a seconda della capacità di user agent fino ad un livello più capace minima, il catering per gli agenti che supportano le funzionalità più avanzate rispetto alla linea di base.

Credo che si potrebbe impiegare entrambi i concetti se permesso di tempo / budget. Se poi non graceful degradation sarebbe preferibile.

Siamo spiacenti di resuscitare qualcosa che è così più di un anno, ma sentivo di poter contribuire, in qualche modo, la mia opinione sulla questione.

Anche se sono d'accordo sia con Alex MCP e deceze in un certo senso, i termini "graceful degradation" e "progressive enhancement" hanno significati leggermente diversi da dove mi trovo.

degrado Graceful , un sacco di tempo (a mio parere), sembra essere più di un bastone per battere un app alla sottomissione dopo che è stato costruito male, in primo luogo nella mia esperienza. Come qualcuno costruzione di alcuni vasto oggetto JavaScript che fornisce all'utente qualcosa di veramente cool con cui giocare, fino a quando un manager arriva, test la cosa e tutti corrono urlando gettando le braccia in giro quando si tratta di loro l'attenzione che la loro applicazione non funziona nel 35% dei browser. "Qualcuno meglio fornire un ripiego per questo."

Progressive Enhancement se (ed è un tale termine più bello di dire troppo) mi sembrerebbe di essere più di costruire qualcosa che funziona solo, su un livello di entrata, in tutto il mondo, attraverso i metodi più elementari a disposizione, per fornire tutte le funzionalità che l'utente ha bisogno. Questo può quindi essere aggiunto a poco pulito aiutanti discreti, styling ecc che in realtà migliorare l'esperienza utente dell'applicazione in questione, piuttosto che lo rendono poco utilizzabile. "Questo sembra freddo. Funziona in IE6. Oh sì. Lo fa"

Credo che forse dando stile come un esempio di entrambi i termini nelle prime due risposte qui tipo di affaccia il vero problema di usabilità di fondo che progressive enhancement , spesso risolve per sua stessa natura, in cui aggraziato degradazione ignora fino a quando le cose vanno male.

Rant over ...

degrado Graceful è la pratica di costruire la vostra funzionalità web in modo che esso fornisce un certo livello di esperienza degli utenti nei browser più moderni, ma sarà anche degrada con grazia ad un livello inferiore di utenti in esperienza nel browser più vecchi. Questo livello più basso non è così piacevole da usare per i visitatori del sito, ma non ancora fornire loro le funzionalità di base che sono venuti al tuo sito da usare; Le cose non si rompono per loro.

Il progressive enhancement è simile, ma fa le cose il contrario. Si inizia stabilendo un livello base di user experience che tutti i browser saranno in grado di fornire durante il rendering tuo sito web, ma è anche costruire a funzionalità più avanzate che saranno automaticamente disponibili per i browser in grado di usarlo.

In altre parole, il degrado grazioso inizia dallo status quo di complessità e cerca di risolvere per l'esperienza minore, mentre il progressive enhancement parte da una, esempio di lavoro molto semplice e permette una costante estensione per gli ambienti futuri. Degradando significa guardare indietro con grazia mentre migliorando progressivamente significa guardare avanti pur mantenendo i piedi su un terreno solido.

Degrado Graceful

  

degrado Graceful è la capacità di un computer, macchina, elettronica   sistema o rete per mantenere funzionalità limitate anche quando una grande   parte di esso è stato distrutto o reso inoperativo. La proposta   di graceful degradation è quello di impedire danni gravi.

degrado Graceful è una soluzione. E 'la pratica di costruzione di un sito web o applicazione in modo che fornisce un buon livello di esperienza utente nei browser moderni. Tuttavia, si degrada con grazia per coloro che utilizzano i browser più vecchi. Il sistema potrebbe non essere così piacevole o come bella, ma le funzionalità di base funziona su sistemi più vecchi.

Un semplice esempio è l'uso di 24 bit PNG alfa-trasparente. Quelle immagini possono essere visualizzate su browser moderni senza problemi. IE5.5 e IE6 sarebbe mostrare l'immagine, ma gli effetti di trasparenza fallirebbe (che può essere fatto funzionare, se necessario). I browser più vecchi che non supportano PNG avrebbe mostrato alt text o uno spazio vuoto.

Gli sviluppatori adottando graceful degradation spesso specificare il loro livello di supporto del browser, ad esempio, browser di livello 1 (migliore esperienza) e browser di livello 2 (esperienza degradato).

Progressive Enhancement

  

Il progressive enhancement è una strategia per il web design che enfatizza   l'accessibilità, semantica markup HTML e foglio di stile esterno e   tecnologie di scripting. Il progressive enhancement utilizza tecnologie web   in un modo più livelli che consente a tutti di accedere al contenuto di base   e la funzionalità di una pagina web, utilizzando qualsiasi browser o Internet   collegamento, fornendo anche una versione migliorata della pagina per   quelli con più browser avanzato o maggiore larghezza di banda.

Il progressive enhancement è simile concetto a degradazione elegante ma in senso inverso. Il sito web o l'applicazione sarebbe stabilire un livello base di esperienza utente per la maggior parte dei browser. Più funzionalità avanzate sarebbe poi aggiunto quando un browser lo supporta.

Il progressive enhancement non ci richiede di selezionare browser supportati o ripristinare i layout basati su tabelle. Abbiamo scelto un livello di tecnologia; vale a dire il browser deve supportare HTML 4.01 e pagina standard di richiesta / risposta.

Tornando al nostro esempio un'immagine, potremmo decidere che la nostra applicazione deve essere funzionale in tutti i browser grafici. Potremmo usare una GIF di qualità inferiore di default, ma sostituirli con PNG a 24 bit quando il browser li supporta.


Link

Wikipedia: Progressive Enhancement e degradazione Graceful (Fault_tolerance)

  

Fonte: Sitepoint Blog

Trovo tende ad essere attitudinale - stai dicendo "va bene, il mio sito funziona con Lynx, gli utenti possono fare tutto quello che voglio loro di essere in grado di fare, ora aggiungiamo un po 'di brio", o stai dicendo "va bene, il mio sito funziona in Firefox, ora proviamo a risolvere il problema per le persone che non vogliono utilizzare tale / che di spegnere JavaScript / etc "

per rendere più facile, basta impostare la barra a destra in alto, allora si può ignorare progressive enhancement. in caso di nuove funzionalità esce alzare la barra;)

o, in alternativa impostare la vostra barra al livello più basso (lynx forse?) E basta usare progressive enhancement.

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