Computer >> Hướng Dẫn Máy Tính >  >> Phần Mềm >> Các Trình Duyệt

Tiện Ích Mở Rộng vs Plugin vs Add-on: Làm Rõ Sự Khác Biệt Và Những Sự Nhầm Lẫn Phổ Biến

Ở đâu đó giữa việc cài trình kiểm tra ngữ pháp và lấy hiệu ứng reverb cho DAW của tôi, tôi nhận ra mình đang ném qua ném lại các từ extension (tiện ích mở rộng), plugin, và add-on như thể chúng có thể thay thế nhau. Giống như ba tên khác nhau cho cùng một thứ. Gần đúng thôi? Không thực sự.

Sự khác biệt tinh tế, đó có lẽ là lý do hầu hết mọi người không bao giờ đào sâu vào chúng. Và để công bằng, thế giới công nghệ không giúp đỡ nhiều, vì rất nhiều ứng dụng lớn làm mờ những đường線 đó. Đơn giản đó làm cho việc giải nén chúng đáng giá.

Tiện Ích Mở Rộng (Extensions) Được Thiết Kế Để Ở Trong Làn Của Chúng

Chúng mượn ngôn ngữ của trình duyệt bạn và chạy với nó

Nếu bạn hỏi tôi một lúc trước, tôi sẽ nói tiện ích mở rộng chỉ là "plugin cho trình duyệt." Đó không hoàn toàn đúng.

Một tiện ích mở rộng thường là phần mềm nhẹ được viết cụ thể để sửa đổi hoặc nâng cao một ứng dụng hiện có, thường là trình duyệt, sử dụng cùng ngôn ngữ mà ứng dụng host đã hiểu. Tiện ích mở rộng Chrome, ví dụ, được xây dựng với HTML, CSS, và JavaScript, về cơ bản là ngôn ngữ bản địa của chính web.

Lựa chọn thiết kế đó định hình cách tiện ích mở rộng hành xử. Trong kỷ nguyên chuyển đổi của Google sang Manifest V3, chúng đã chuyển sang Service Workers hướng sự kiện (event-driven) thay vì background pages luôn chạy, giúp chúng hiệu quả về tài nguyên và ít xâm lấn hơn. Quan trọng hơn, chúng sống trong một sandbox (hộp cát). Tôi từng lướt qua thuật ngữ đó, nhưng nếu bạn tìm hiểu sandboxing là gì và nó bảo vệ bạn online như thế nào, bạn sẽ thấy nó đang làm việc thực sự ở đây. Tiện ích mở rộng được giữ trên dây dây chun chặt, với quyền hạn được định nghĩa rõ ràng. Chúng chỉ có thể truy cập những gì bạn cho phép rõ ràng, và chúng không được tự do lang thang qua hệ thống của bạn. Tuy nhiên, việc kiểm tra quyền tiện ích mở rộng Chrome để đảm bảo công cụ không yêu cầu truy cập rộng hơn những gì nó cần hợp lý là至关重要的 (vital).

Cách ly kiến trúc này là lý do lớn khiến chúng được coi là tương đối an toàn. Chúng không đào sâu vào hệ thống của bạn hay lang thang tự do; chúng ngồi trên trình duyệt, định hình lại trải nghiệm của bạn mà không quá xâm lấn.

Plugin Luôn Được Xây Dựng Để Đi Sâu Hơn

Mã bản địa (Native code) với nhiều "dây thần kinh"

"Plugin" là từ tôi dùng cho hầu hết mọi thứ tại một thời điểm, đặc biệt là bất cứ thứ gì cảm thấy mạnh mẽ hơn một chút. Theo một cách, bản năng đó không hoàn toàn sai, nhưng nó chỉ không chính xác.

Truyền thống, plugin là file thực thi nhị phân (binary executables), đoạn mã đã biên dịch trước, thường viết bằng C++, chạy qua tiêu chuẩn NPAPI (Netscape Plugin API). Khác với tiện ích mở rộng, chúng sống bên ngoài sandbox của trình duyệt, thường với đặc quyền truy cập khớp với quyền cấp hệ thống của trình duyệt.

Ví dụ kinh điển ở đây là Adobe Flash Player. Nó không được xây dựng vào trình duyệt mà là phần mềm riêng bạn cài đặt riêng, và trình duyệt sẽ gọi nó bất cứ khi nào gặp nội dung nó không thể xử lý tự thân. Quyền lực đó đi kèm chi phí; lỗ hổng và khai thác phổ biến làm cho nó trở thành mục tiêu chính cho mã độc. Chạy mã bản địa với mức truy cập đó mở cửa cho vấn đề bảo mật nghiêm trọng, đó là lý do Flash cần chết để nhường chỗ cho các tiêu chuẩn web an toàn hơn. Đến 2020, hỗ trợ thực chất đã biến mất, và mô hình an toàn, bị giới hạn hơn đã tiếp quản.

Tiện Ích Mở Rộng vs Plugin vs Add-on: Làm Rõ Sự Khác Biệt Và Những Sự Nhầm Lẫn Phổ Biến

Liên quan

8 Chương Trình Windows Xưa Đâu Cũng Có, Giờ Không Ai Dùng Nữa

Nhớ những app ngày xưa? Hãy đi xuống ngõ ký ức với những ứng dụng Windows được yêu thích nhưng đã bị lãng quên.

Bên ngoài thế giới trình duyệt, tuy nhiên, "plugin" vẫn rất sống động và phát triển. Trong phần mềm sáng tạo, đặc biệt, đó là ngôn ngữ mặc định. Nếu bạn đã dùng DAW như Ableton hoặc FL Studio, bạn có thể đã làm việc với plugin VST mà mọi nhạc sĩ nên có, những thứ làm những gì host không thể làm đơn độc. Chúng có thể mô phỏng synthesizer phần cứng, xử lý âm thanh qua thuật toán reverb phức tạp, hoặc nén mix theo thời gian thực. Chúng chạy trực tiếp trên CPU của bạn, đó là cách chúng giữ độ trễ thấp và hiệu suất chặt chẽ.

Tiêu chuẩn VST bản thân nó quay lại xa; Steinberg giới thiệu nó năm 1996, và nó vẫn mạnh mẽ đến ngày nay dưới dạng VST3. Ý tưởng tương tự áp dụng cho công cụ như Photoshop, nơi plugin bên thứ ba có thể nâng cao kỹ năng chỉnh sửa ảnh của bạn.

Vì vậy trong ngữ cảnh này, "plugin" tend to imply (có xu hướng ngụ ý) thứ gì đó nặng hơn, tích hợp hơn, và hướng hiệu suất hơn. Nó là phần mềm làm việc sâu trong pipeline, xử lý dữ liệu thô ở tốc độ. Thế giới trình duyệt đã chuyển từ mô hình đó ủng hộ an toàn. Công cụ sáng tạo, mặt khác, vẫn dựa vào nó vì quyền lực và độ chính xác quan trọng hơn cách ly.

'Add-on' Là Từ Tắt Yêu Thích Của Mọi Người

Mozilla bắt đầu, và chúng ta chạy theo

Tiện Ích Mở Rộng vs Plugin vs Add-on: Làm Rõ Sự Khác Biệt Và Những Sự Nhầm Lẫn Phổ Biến

Bây giờ, "add-on" là nơi nó hơi lỏng lẻo. Nó không phải là thuật ngữ kỹ thuật nghiêm ngặt như một catch-all (chiếc ô chứa tất cả). Cơ bản, nó chỉ có nghĩa là "một mảnh thêm bạn có thể gắn vào ứng dụng chính." Mozilla giúp phổ biến nó như một nhãn bao, nhóm tiện ích mở rộng, plugin, theme, và thậm chí công cụ tìm kiếm vào một menu đơn giản, gọn gàng. Google Workspace áp dụng thuật ngữ tương tự, gọi tích hợp bên thứ ba trong Docs và Sheets là "Add-ons."

Tiện Ích Mở Rộng vs Plugin vs Add-on: Làm Rõ Sự Khác Biệt Và Những Sự Nhầm Lẫn Phổ Biến

Liên quan

5 Google Drive Add-Ons Bạn Cần Dùng

Muốn tận dụng tối đa Google Drive để cải thiện năng suất và quy trình làm việc? Đây là một số add-on tốt nhất bạn có thể dùng.

Microsoft, là Microsoft, chọn "Add-in" (với 'i') thay vì. Ý tưởng chung giống nhau, nhấn mạnh hơi khác — và trong cài đặt doanh nghiệp, từ ngữ đó thực sự mang trọng lượng. Truyền thống, add-in đề cập đến tích hợp sâu hơn, sản phẩm được xây dựng với COM hoặc VSTO gắn trực tiếp vào mô hình đối tượng nội bộ của Office. Ngay cả bây giờ, khi Microsoft đã chuyển về add-on dựa trên web, cái tên đã dính chặt để tách chúng ra khỏi tiện ích mở rộng trình duyệt hoặc add-on cấp OS chung hơn. Trong khi đó, trong cộng đồng gaming, "add-on" trôi nổi xung quanh, thường dùng thay thế cho "mod" để mô tả nội dung thêm hoặc điều chỉnh UI. Nó là một thuật ngữ linh hoạt, gần như một lưới an toàn khi kiến trúc chính xác không phải là điểm.

Một cách đơn giản hơn để nghĩ về nó như sau: nếu ai đó nói "add-on", họ đang nói rộng, chỉ nói cho bạn biết có thứ gì đó mở rộng app. Nếu họ nói "extension", họ gợi ý thứ gì đó nhẹ, thường dựa trên trình duyệt, được xây dựng với công nghệ web. Và nếu họ nói "plugin", họ chỉ về cái nó làm, thường là thứ chuyên biệt, thường với tích hợp sâu hơn, nặng hiệu suất hơn.

Một ví dụ tốt về nơi này hơi rối là Grammarly. Bạn có thể cài tiện ích mở rộng Grammarly trong Chrome để kiểm tra viết trên web. Bạn cũng có thể cài add-on Grammarly trong Microsoft Word để kiểm tra chính tả tài liệu trực tiếp. Cùng công ty, cùng ý tưởng cốt lõi, nhưng thuật ngữ thay đổi tùy thuộc vào nơi nó chạy và cách nó móc nối vào phần mềm.

Một Ghi Chú Trước Khi Bạn Đi

Không có điều này có nghĩa bạn cần sửa người khác trong hội thoại thông thường. Ngôn ngữ phát triển qua việc sử dụng, và những từ này đã cross-pollinating (lai tạo chéo) nhau hàng thập kỷ. Tuy nhiên, lần sau ai đó đưa cho bạn khuyến nghị "plugin" cho trình duyệt của bạn, bạn sẽ biết có gì đó hơi sai. Và lần sau bạn cài synthesizer vintage vào DAW của bạn, bạn sẽ biết chính xác tại sao họ gọi nó là plugin chứ không phải extension.