Pembuat pelayar web sekali lagi cuba membuang sokongan XSLT (Extensible Stylesheet Language Transformations) daripada pelayar web, mencetuskan perdebatan dalam komuniti pembangun mengenai masa depan teknologi transformasi XML ini. Desakan terkini datang daripada Mason Freed dari Google , berikutan percubaan terdahulu oleh Mozilla dan vendor pelayar lain untuk menyusutkan ciri tersebut.
Kempen Pembuangan Pelayar
Usaha untuk menghapuskan XSLT daripada pelayar bukanlah perkara baharu. Chrome sebelum ini cuba menyusutkan dan membuang sokongan XSLT pada tahun 2013 dan 2015, tetapi kedua-dua percubaan gagal akibat tentangan hebat daripada komuniti pembangun. Cadangan terkini Mozilla di mesyuarat WHATWG telah mencetuskan semula perbincangan, dengan vendor pelayar menyebut beban penyelenggaraan dan penggunaan terhad sebagai alasan pembuangan.
Walau bagaimanapun, respons komuniti mendedahkan perspektif yang berbeza. Ramai pembangun masih bergantung kepada XSLT untuk kes penggunaan tertentu, terutamanya dalam persekitaran perusahaan dan saluran transformasi data. Kegagalan berulang percubaan pembuangan menunjukkan bahawa XSLT mengekalkan pangkalan pengguna khusus yang tidak boleh diabaikan oleh vendor pelayar.
Garis Masa Penyingkiran XSLT Pelayar
- 2013: Chrome mula-mula cuba untuk menyusutkan sokongan XSLT (gagal)
- 2015: Chrome membuat percubaan kedua untuk menyingkirkan XSLT (gagal)
- 2024: Mozilla mengemukakan cadangan penyingkiran di mesyuarat WHATWG
- 2024: Mason Freed dari Google mempelopori usaha penyingkiran baharu
Cabaran Pengalaman Pembangun
Salah satu kritikan utama terhadap XSLT tertumpu pada pengalaman pembangunnya. Sintaks berasaskan XML bahasa ini mewujudkan cabaran kebolehbacaan yang ketara, terutamanya untuk transformasi kompleks. Transformasi JSON mudah yang mungkin mengambil satu atau dua baris kod JavaScript memerlukan kod XSLT yang ekstensif dengan pelbagai import ruang nama dan sintaks yang bertele-tele.
Seseorang menulis semula XSLT saya dalam Python, dan saya menyokong mereka, kerana hasilnya jauh lebih mudah dibaca, bukan sahaja kerana langkah-langkah prosedur asas boleh ditulis dalam bahasa prosedur dengan sintaks yang baik, berbanding bahasa fungsional tulen XSLT yang mengalami masalah kerana tertanam dalam XML.
Pengalaman nyahpepijat memberikan halangan utama yang lain. Tidak seperti bahasa pengaturcaraan moden dengan alat nyahpepijat yang canggih, XSLT menawarkan keupayaan nyahpepijat yang terhad, menjadikan penyelesaian masalah sebagai pengalaman yang mengecewakan bagi pembangun.
Ciri Moden XSLT 3.0
Walaupun terdapat kritikan, XSLT 3.0 memperkenalkan beberapa ciri moden yang menangani beberapa batasan bersejarah. Versi baharu termasuk sokongan JSON asli, membenarkan transformasi langsung antara format JSON dan XML tanpa penyelesaian kompleks. Templat nilai teks memudahkan interpolasi rentetan, mengurangkan keperluan untuk fungsi concat() yang bertele-tele.
Penambahan fungsi yang ditentukan pengguna dan pengetaipan yang betul membawa XSLT lebih hampir kepada bahasa pengaturcaraan moden. Fungsi-fungsi ini boleh diatur ke dalam pakej dengan kawalan versi, membolehkan penggunaan semula kod dan penyelenggaraan yang lebih baik. Sokongan streaming menangani kebimbangan prestasi untuk set data besar, manakala konstruk try-catch menyediakan keupayaan pengendalian ralat asas.
Ciri-ciri Utama XSLT 3.0
- Sokongan transformasi JSON secara asli
- Templat nilai teks untuk interpolasi rentetan yang dipermudahkan
- Fungsi yang ditentukan pengguna dengan penaipan yang betul
- Pakej fungsi dengan kawalan versi
- Sokongan streaming untuk set data yang besar
- Konstruk pengendalian ralat try-catch
Corak Penggunaan Industri
Penggunaan dunia sebenar mendedahkan kekuatan dan kelemahan XSLT dalam persekitaran pengeluaran. Dalam industri streaming muzik, syarikat yang memproses berjuta-juta fail XML mendapati XSLT bermasalah untuk mengendalikan perubahan skema antara versi berbeza standard industri seperti DDEX . Sifat tegar transformasi XSLT menjadikannya rapuh apabila berurusan dengan format data yang berkembang.
Walau bagaimanapun, XSLT terus menemui kejayaan dalam niche tertentu di mana pemprosesan XML kekal dominan. Sistem perusahaan, saluran penerbitan, dan senario integrasi data masih mendapat manfaat daripada pendekatan deklaratif XSLT terhadap transformasi.
Masa Depan Teknologi XML
Usaha pembuangan pelayar mencerminkan trend industri yang lebih luas menjauhi teknologi berasaskan XML ke arah JSON dan format data yang lebih mudah. Pembangunan web moden mengutamakan pendekatan ringan dan mesra JavaScript berbanding ekosistem XML berat yang mendominasi awal tahun 2000-an.
Namun kegigihan penggunaan XSLT menunjukkan bahawa domain masalah tertentu masih mendapat manfaat daripada keupayaan khususnya. Cabaran terletak pada mengimbangi beban penyelenggaraan pada vendor pelayar dengan keperluan pengguna sedia ada yang bergantung pada pemprosesan XSLT sebelah klien.
Semasa perdebatan berterusan, hasilnya berkemungkinan bergantung pada sama ada komuniti XSLT boleh menunjukkan penggunaan yang mencukupi untuk membenarkan sokongan pelayar berterusan, atau sama ada penyelesaian alternatif akhirnya akan menjadikan pemprosesan XSLT sebelah klien usang.
Rujukan: Why You Should Be Using XSLT 3.0