Perbedaannya Browser Plugins vs Extensions

Istilah kelebihan beban Salah satu konsep yang paling tidak dipahami di dunia Plugin Browser adalah – plugin browser. Apa mereka, dan bahkan lebih: apa yang tidak. Mungkin setidaknya satu kali seminggu saya menjawab pertanyaan di suatu tempat di forum atau di komentar di blog ini dan berkata, “Anda tidak dapat melakukannya dengan plugin; Anda membutuhkan […]

Istilah kelebihan beban

Salah satu konsep yang paling tidak dipahami di dunia Plugin Browser adalah – plugin browser. Apa mereka, dan bahkan lebih: apa yang tidak. Mungkin setidaknya satu kali seminggu saya menjawab pertanyaan di suatu tempat di forum atau di komentar di blog ini dan berkata, “Anda tidak dapat melakukannya dengan plugin; Anda membutuhkan ekstensi ”.

Banyak orang yang mengacaukan plugin dan ekstensi di dunia browser. Mereka terdengar seperti mereka seharusnya sama, tetapi sebenarnya mereka sangat berbeda.

Apa yang bisa Anda lakukan dengan sebuah plugin

Sebuah plugin adalah, cukup sederhana, pustaka pihak ketiga yang “plug in” ke browser yang dapat disematkan di dalam halaman web menggunakan tag <embed> atau tag <object>. Banyak dari mereka kemudian menggambar gambar atau animasi yang cantik, meskipun itu tidak diperlukan. Banyak yang memungkinkan Anda untuk berbicara dengan mereka melalui javascript, meskipun itu tidak diperlukan. Singkatnya, sebuah plugin hanya mempengaruhi halaman tertentu di mana ia ditempatkan.

Contoh dari plugin umum meliputi:

  • Macromedia Flash
  • Microsoft Silverlight
  • Apple Quicktime
  • Adobe Reader (setidaknya ini termasuk plugin selain sisa aplikasi)

Beberapa plugin merespon jenis mime dan dapat berjalan di tempat halaman, seperti Adobe Reader, yang memungkinkan Anda untuk melihat file PDF di browser web Anda. Sekali lagi, bagaimanapun, itu hanya mempengaruhi halaman itu, dan tidak ada yang lain. Di Firefox, Chrome, Opera, dan Safari, plugin ini biasanya disebut “NPAPI plugins”, karena ditulis menggunakan NPAPI . Di Safari, Anda juga bisa menggunakan Plugin Webkit . Di Internet Explorer Anda akan melakukan ini dengan Kontrol ActiveX.

Apa yang tidak bisa dilakukan oleh plugin

Plugin harus menangani jenis mime atau disematkan ke halaman web. Mereka tidak ditempatkan di sana secara otomatis. Mereka tidak membuat bilah alat. Mereka tidak memengaruhi menu browser. Mereka tidak tahu tentang tab, atau bahkan tentang halaman lain dalam proses browser yang sama. Mereka tidak membuat kopi, teh, atau cokelat panas, meskipun mereka dapat ditulis untuk mengendalikan alat eksternal untuk melakukannya jika Anda benar-benar menginginkannya. Mereka tidak secara otomatis memproses konten dari setiap halaman web yang dimuat.

Ekstensi

Ekstensi, atau “add-on”, sering dapat melakukan hal-hal ajaib ini. Mereka dapat menambahkan ke UI browser, memproses halaman yang memuat browser. Mereka melakukan segala macam hal. Namun, mereka tidak sama dengan plugin; mereka mempengaruhi browser web itu sendiri, tidak benar-benar halaman. Mereka juga dapat memengaruhi suatu halaman, tentu saja. Bahkan, Anda bahkan dapat memasang plugin di dalam ekstensi, setidaknya di Firefox. Namun, jika Anda menulis ekstensi untuk Firefox, Anda mungkin harus menulisnya lagi untuk Chrome, Safari, dan IE … satu untuk masing-masing. Mungkin ada kerangka di luar sana untuk menulis ekstensi portabel. Ini bukan bidang keahlian saya, jadi saya tidak tahu.

Contoh ekstensi / add-on:

  • DownThemAll for Firefox
  • Firebug untuk Firefox
  • Ekstensi Google Voice untuk Chrome
  • Biarlah ada Comic Sans untuk Safari

Dan banyak, banyak, banyak lagi. Ekstensi dapat ditulis dalam bahasa yang berbeda tergantung pada browser. Di Firefox Anda dapat menulisnya dalam C ++ atau javascript, dan di Internet Explorer Anda menulisnya sebagai kontrol ActiveX khusus yang disebut Browser Helper Objects , atau BHOs.

 

Ekstensi dapat berisi plugin, tetapi plugin tidak dapat memuat ekstensi

Salah satu cara paling umum untuk menginstal plugin di Firefox adalah menggunakan file .xpi.  Ini adalah perpanjangan . Mungkin ada plugin NPAPI di dalamnya, tetapi masih merupakan perpanjangan. Ini tidak akan berfungsi pada peramban web lain, meskipun plugin NPAPI Anda dapat berfungsi dengan baik di Chrome dan Safari jika dipasang dengan cara lain.

Sebaliknya, plugin oleh alam tidak menyertakan ekstensi.

Nafas api

Hampir setahun yang lalu sekarang saya memulai sebuah proyek bernama FireBreath, yang merupakan arsitektur plugin browser lintas platform. FireBreath, sejujurnya, mengagumkan. Anda benar-benar bisa mendapatkan plugin dan masuk dalam waktu kurang dari 10 menit jika Anda sudah menginstal semuanya. Itu berarti Anda dapat menghabiskan waktu Anda untuk melakukan hal-hal lain yang lebih penting, seperti benar-benar mengembangkan fungsi Anda, daripada menghabiskan seluruh waktu Anda mencari tahu bagaimana menangani API plugin.

Yang mengatakan, FireBreath adalah kerangka PLUGIN browser lintas platform . Itu tidak membuat ekstensi. Ini tidak akan pernah dapat membuat ekstensi. Jika Anda membutuhkan ekstensi, Anda membutuhkan yang lain.

Saat tidak menggunakan plugin

Akhirnya, dan ini adalah topik yang tampaknya orang-orang agak aneh datang dari saya, ada banyak kasus ketika itu bukan ide yang baik untuk menggunakan plugin browser. Sebenarnya, aturan praktis yang baik adalah bahwa jika Anda dapat melakukan apa yang perlu Anda lakukan tanpa satu, jangan gunakan salah satunya.

Mengapa?

  1. Tidak ada cara yang bagus untuk menginstal plugin browser yang akan bekerja 100% dari waktu
  • Instalasi XPI hanya berfungsi pada satu profil di firefox
  • Instalasi CAB hanya berfungsi di Internet Explorer dan terkadang sedikit tidak dapat diandalkan
  • ClickOnce hanya berfungsi di Windows dan hanya jika .Net diinstal
  • Penginstal Java hanya bekerja dengan andal dan konsisten di Mac OS
  • Pemasang MSI atau EXE saat menjadi metode terbaik IMHO membutuhkan sedikit lebih banyak pekerjaan dari pengguna, dan rata-rata pengguna … kurang cerdas daripada Anda, haruskah kita katakan.
  1. Plugin harus mempertimbangkan berbagai jenis perangkat keras
  • Jika Anda menggunakan pustaka grafis seperti OpenGL atau DirectX, ingatlah bahwa setiap kartu grafis bekerja sedikit berbeda dengan teknologi ini. Anda akan mengalami kasus-kasus aneh di mana plugin Anda tidak berfungsi di komputer seseorang. Jika keberuntungan Anda seperti milik saya, komputer itu akan menjadi milik seorang eksekutif di perusahaan kekayaan 500 (ya, itu terjadi pada saya. Tidak, itu tidak menyenangkan)
  1. Plugin tidak berfungsi sampai terpasang
  • Ini adalah faktor pembatas utama untuk mengambil alih situs Anda. Banyak pengguna yang tidak ingin menginstal plugin lain di komputer mereka, dan banyak yang tersesat dalam tugas yang sangat rumit untuk mengunduh dan menjalankan penginstal.