it-swarm.asia

Apa perbedaan antara Peningkatan Progresif dan Degradasi Anggun?

Apa itu Peningkatan Progresif? Saya tidak dapat memahami konsep ini. Bagaimana cara kerjanya, dan bagaimana modelnya berbeda/lebih baik (?) Dari Graceful Degradation?

7
pramodc84

Jawaban Motolix sangat luas, jadi izinkan saya menambahkan jawaban yang spesifik untuk pengembangan web.

Peningkatan Progresif adalah ketika Anda membuat situs web yang tersedia untuk semua orang, tetapi kemudian menambahkan fungsionalitas tingkat lanjut dalam lapisan yang meningkatkan pengalaman bagi mereka yang dapat mengaksesnya . Misalnya, situs web teks dasar dapat ditingkatkan untuk menyertakan desain (stylesheet), fungsi interaktif (javascript), dan video (flash). Namun situs web terus berfungsi hanya sebagai situs web berbasis teks. Baca lebih lanjut di definisi wikipedia tentang peningkatan progresif .

Degradasi anggun adalah aspek dari sistem toleran kesalahan di mana desain Anda terus berfungsi bahkan jika titik-titik tertentu dari desain dapat ' t bekerja. Artikel wikipedia mencantumkan HTML sebagai contoh yang baik: HTML5 berfungsi di semua browser karena parser HTML sendiri tidak rusak jika ada tag yang tidak dikenal. Tetapi karena browser lama tidak mengenali tag itu, mereka juga tidak dapat memberikan fungsionalitas yang terkait dengannya (seperti berbagai jenis input baru seperti rentang, jumlah, tanggal, waktu, warna, dll.). Contoh lain adalah pengaturan warna dan warna latar belakang bersama-sama dalam CSS, tetapi mungkin menimpa warna dengan gambar. Jika gambar tidak dimuat, Anda ingin teks tetap terbaca, tetapi itu mungkin tidak menjadi masalah jika Anda tidak memastikan bahwa warna latar belakang adalah salah satu yang memungkinkan teks dapat terbaca.

Perbedaan antara keduanya adalah di mana Anda memulai. Peningkatan progresif melibatkan mulai dengan dasar yang kuat dan memperbaikinya dari sana, sambil memastikan operasi yang berkelanjutan jika perbaikan tidak didukung. Degradasi anggun melibatkan dimulai dengan aplikasi yang canggih, tetapi memastikan bahwa jika elemen-elemen tertentu tidak didukung, itu terus bekerja. Jelas, ini berarti ada titik silang antara dua konsep di beberapa titik.

9
Rahul

Progressive Enhancement adalah proses memulai dengan produk dasar yang solid dan berkembang dari sana. Misalnya, Anda mulai dengan pemutar video yang sangat bagus, lalu Anda menambahkan daftar putar, lalu Anda menambahkan video converter. Pada dasarnya, mulai dari satu titik dan berkembang ke luar sesuai kebutuhan (biasanya dengan umpan balik pengguna)

Graceful Degradation adalah kebalikannya, misalnya, katakan Anda membuat situs web dengan fitur yang terlalu banyak - Anda bisa menggunakan proses degradasi yang anggun untuk perlahan-lahan menghapus fitur yang tidak perlu dan memperkuat yang penting. sunting: anggap saja seperti jaring ... Anda mulai ingin menangkap sebanyak mungkin, kemudian Anda mengontrak apa yang sebenarnya Anda tangkap.

Saya percaya peningkatan progresif biasanya merupakan "model" yang lebih baik untuk sebagian besar proyek - karena sangat mudah terjebak dalam proses ide yang tidak pernah berakhir atau "feature-creep". Dengan mengikuti model progresif, Anda dapat menghindari ini dengan langsung merespons umpan balik pengguna dan memperluas sesuai kebutuhan. Namun, itu memang membutuhkan pendekatan yang lebih fleksibel karena lebih sulit untuk memiliki visi tujuan akhir Anda ... (tetapi sangat sering, kedua model berakhir di tempat yang sama, jadi saya pikir lebih baik memulai dari yang kecil).

Semoga itu bisa membantu, maaf untuk panjangnya.

2
Motolix