it-swarm-vi.tech

Sự khác biệt giữa tăng cường tiến bộ và suy thoái duyên dáng là gì?

Tăng cường tiến bộ là gì? Tôi không thể hiểu khái niệm này. Cách thức hoạt động và cách thức khởi động một mô hình khác/tốt hơn (?) So với Suy thoái duyên dáng?

7
pramodc84

Câu trả lời của Motolix rất rộng, vì vậy hãy để tôi thêm câu trả lời dành riêng cho phát triển web.

Tăng cường tiến bộ là khi bạn tạo một trang web có sẵn cho mọi người, nhưng sau đó thêm chức năng nâng cao trong các lớp giúp cải thiện trải nghiệm cho những người có thể truy cập nó . Chẳng hạn, một trang web văn bản cơ bản có thể được nâng cấp để bao gồm thiết kế (bảng định kiểu), chức năng tương tác (javascript) và video (flash). Nhưng trang web tiếp tục hoạt động như một trang web dựa trên văn bản. Đọc thêm tại định nghĩa của wikipedia về tăng cường tiến bộ .

Suy thoái duyên dáng là một khía cạnh của hệ thống chịu lỗi khi thiết kế của bạn tiếp tục hoạt động ngay cả khi một số điểm nhất định của thiết kế có thể ' t làm việc Bài viết trên wikipedia liệt kê HTML là một ví dụ hay: HTML5 hoạt động trong tất cả các trình duyệt vì bản thân trình phân tích cú pháp HTML không bị hỏng nếu có các thẻ không được nhận dạng. Nhưng vì các trình duyệt cũ không nhận ra các thẻ đó, nên chúng cũng không thể cung cấp chức năng được liên kết với chúng (chẳng hạn như các loại đầu vào mới khác nhau như phạm vi, số, ngày, thời gian, màu sắc, v.v.). Một ví dụ khác là thiết lập màu và màu nền với nhau trong CSS, nhưng có thể ghi đè màu bằng hình ảnh. Nếu hình ảnh không tải, bạn muốn văn bản vẫn rõ ràng, nhưng đó có thể không phải là trường hợp nếu bạn không đảm bảo rằng màu nền là màu cho phép văn bản dễ đọc.

Sự khác biệt giữa hai là nơi bạn bắt đầu. Tăng cường tiến bộ liên quan đến việc bắt đầu với một cơ sở vững chắc và cải thiện nó từ đó, trong khi vẫn đảm bảo hoạt động liên tục nếu các cải tiến không được hỗ trợ. Suy thoái duyên dáng liên quan đến việc bắt đầu với một ứng dụng nâng cao, nhưng đảm bảo rằng nếu một số yếu tố nhất định không được hỗ trợ, nó sẽ tiếp tục hoạt động. Rõ ràng, điều này có nghĩa là có một điểm giao nhau giữa hai khái niệm tại một số điểm.

9
Rahul

Tăng cường tiến bộ là quá trình bắt đầu với một sản phẩm cơ sở vững chắc và mở rộng từ đó. Ví dụ: bạn bắt đầu với một trình phát video thực sự tốt, sau đó bạn thêm danh sách phát, sau đó bạn thêm trình chuyển đổi video. Về cơ bản, bắt đầu từ một điểm duy nhất và mở rộng ra bên ngoài khi cần thiết (thường là do phản hồi của người dùng)

Ví dụ, Graceful Degradation ngược lại, nói rằng bạn đã xây dựng một trang web với quá nhiều tính năng - bạn có thể sử dụng quá trình xuống cấp duyên dáng để từ từ loại bỏ các tính năng không cần thiết và củng cố các tính năng quan trọng. chỉnh sửa: nghĩ về nó giống như một mạng lưới ... Bạn bắt đầu muốn bắt càng nhiều càng tốt, sau đó bạn ký hợp đồng xung quanh những gì bạn thực sự bắt được.

Tôi tin rằng cải tiến lũy tiến thường là một "mô hình" tốt hơn cho hầu hết các dự án - vì rất dễ bị cuốn vào một quá trình của những ý tưởng không bao giờ kết thúc hoặc "tính năng leo trèo". Bằng cách làm theo mô hình tiến bộ, bạn có thể tránh điều này bằng cách phản hồi trực tiếp phản hồi của người dùng và mở rộng khi cần. Tuy nhiên, nó đòi hỏi một cách tiếp cận linh hoạt hơn vì khó có tầm nhìn về mục tiêu cuối cùng của bạn ... (nhưng rất thường xuyên, cả hai mô hình kết thúc ở cùng một nơi, vì vậy tôi nghĩ tốt hơn là bắt đầu nhỏ).

Hy vọng rằng sẽ giúp, xin lỗi cho chiều dài.

2
Motolix