เป็นการยากที่จะประเมินเทคโนโลยีเมื่อคุณไม่มีประสบการณ์อย่างลึกซึ้งเกี่ยวกับเทคโนโลยีเหล่านั้น แต่แน่นอนว่าเมื่อคุณต้องทำการตัดสินใจดังนั้นจึงไม่มีคำตอบง่ายๆสำหรับภาวะที่กลืนไม่เข้าคายไม่ออก
คุณอ้างถึงสองข้อกังวล: ประสิทธิภาพและการใช้งาน ฉันจะพยายามระบุที่อยู่ทั้งสองด้านล่าง
ประการแรกประสิทธิภาพ ประสิทธิภาพของหลักสูตรไม่เพียง แต่ขึ้นอยู่กับภาษา แต่ยังรวมถึงการติดตั้งและความเชี่ยวชาญของผู้ใช้ ตัวประมวลผล XSLT ที่แตกต่างกันอาจแตกต่างกันอย่างมากในประสิทธิภาพและตัวประมวลผลเดียวกันอาจแตกต่างกันอย่างมากขึ้นอยู่กับวิธีการใช้งาน (กับชาวแซ็กซอนเช่นคนที่มีปัญหาด้านประสิทธิภาพมักพบว่าใช้ DOM กับตัวเอง และประสิทธิภาพอาจเพิ่มขึ้นสิบเท่าหากคุณใช้โมเดลต้นไม้พื้นเมืองของแซกซันแทน) ดังนั้นคำแนะนำแรกคืออย่าใช้คำบอกเล่าวัด; และคำแนะนำที่สองคือการทำให้แน่ใจว่าคนที่ทำการวัดนั้นมีประสบการณ์เพียงพอที่จะไม่ทำผิดพลาด พูดง่ายกว่าทำ
อย่างหยาบคุณสามารถแยกงานการแปลงออกเป็นสองประเภท: ง่ายและซับซ้อน สำหรับการแปลงอย่างง่ายด้วยโปรเซสเซอร์ XSLT ที่ดีเวลาที่ใช้ในการแยกวิเคราะห์และการทำให้เป็นอนุกรมและเวลาในการประมวลผลของ XSLT แทบจะไม่ปรากฏในภาพเลย เนื่องจากเทคโนโลยีอื่น ๆ จะมีค่าใช้จ่ายในการแยกวิเคราะห์และการเรียงลำดับเท่ากันตัวเลือกของเทคโนโลยีการแปลงจะไม่สร้างความแตกต่างใหญ่ (ยกเว้นบางทีสำหรับการเข้ารหัสระดับต่ำมากโดยใช้การสตรีม แต่ไม่มีคนจำนวนมากที่สามารถเขียนโปรแกรมได้ เวลาและทักษะที่จำเป็นสำหรับการดำเนินการนั้น) สำหรับการแปลงที่ซับซ้อนในเอกสารขนาดใหญ่คุณเริ่มได้รับปัญหาเช่นเดียวกับการเขียนโปรแกรม SQL: การบรรลุประสิทธิภาพที่ดีต้องมีปฏิสัมพันธ์ที่ดีระหว่างทักษะและความรู้ของโปรแกรมเมอร์และความสามารถของเครื่องมือเพิ่มประสิทธิภาพ เช่นเดียวกับ SQL มัน ' ง่ายมากในภาษาระดับสูงเพื่อเขียนข้อความง่ายๆสองสามข้อที่ทำให้โปรเซสเซอร์ต้องทำงานเป็นจำนวนมาก แต่เช่นเดียวกับ SQL โปรแกรมเมอร์ที่รู้ว่าพวกเขากำลังทำอะไรจะดีกว่ามือใหม่มาก
ประการที่สองการใช้งาน ไวยากรณ์ที่ใช้ XML สำหรับ XSLT เป็นสิ่งที่ทำให้ผู้คนจำนวนมากพบเจอกับภาษาเป็นครั้งแรก แต่มีเหตุผลที่ดีและประโยชน์ที่แท้จริงสำหรับการทำเช่นนี้: มีอาร์กิวเมนต์ "เทมเพลต" ซึ่งโค้ดจำนวนมากประกอบด้วย XML ที่จะเขียนลงในเอกสารผลลัพธ์และวิธีที่ดีที่สุดในการเขียน XML คือ XML และมีการโต้เถียง "สะท้อน"; ในระบบที่ซับซ้อนขนาดใหญ่มันเป็นเรื่องธรรมดามากที่จะหาสไตล์ชีทที่สร้างสไตล์ชีท จากนั้นมีอาร์กิวเมนต์ "เครื่องมือ" หากคุณอยู่ในร้านค้า XML คุณอาจมีเครื่องมือ XML จำนวนมากเช่นเครื่องมือแก้ไขที่กำกับด้วยไวยากรณ์ ข้อเสียกลายเป็นเครื่องสำอางค่อนข้างเปรียบเทียบ: มี จำนวนการกดแป้นที่เกี่ยวข้องกับการแก้ไข (แก้ไขได้ง่ายด้วยเครื่องมือแก้ไขที่ดี) และมีรหัสที่ละเอียด (ลดความสามารถในการอ่าน) การใช้คำฟุ่มเฟือยลดลงอย่างมากใน XSLT 2.0 ด้วยการแนะนำคุณสมบัติเช่นนิพจน์ทั่วไปและฟังก์ชั่นสไตล์ชีท: สไตล์ชีตจำนวนมากลดลงเหลือเพียงครึ่งหนึ่งหรือสามในขนาดเมื่อใช้ประโยชน์เต็มที่จาก XSLT 2.0
การที่คุณพูดถึง DSSSL ทำให้ฉันมีรอยยิ้มเบี้ยว ฉันไม่เคยใช้ DSSSL มาก่อน แต่เรื่องราวที่ฉันได้ยินมานั้นเป็นเรื่องที่ไม่สมควรเพราะไวยากรณ์ของมันนั้นมีความคลาดเคลื่อนและไม่เกี่ยวข้องกับไวยากรณ์ของข้อมูล (SGML) การใช้ไวยากรณ์ XML สำหรับ XSLT มีแรงจูงใจอย่างมากจากประสบการณ์กับ DSSSL
มีคนที่รัก XSLT และมีคนที่เกลียดชัง ไม่น่าแปลกใจที่คนที่ใช้มันมากมักจะตกอยู่ในประเภทแรก คนที่ไม่ชอบมันเป็นคนที่ไม่ได้เรียนรู้ที่จะ "คิดทาง XSLT" คุณสามารถยืนยันได้ว่าภาษาการเขียนโปรแกรมไม่ควรส่งผลกระทบต่อวิธีคิดของคุณ แต่มันก็คือการเขียนภาษาที่ใช้กฎเป็นแนวคิดที่แตกต่างจากการเขียนในภาษาที่จำเป็น ปฏิกิริยาแรกของโปรแกรมเมอร์หลายคนคือพวกเขารู้สึกควบคุมน้อยลง (อธิบายปัญหาแทนที่จะบอกคอมพิวเตอร์ว่าจะทำอย่างไรทีละขั้นตอน) มันคล้ายกับปฏิกิริยาที่คุณเคยเห็นเมื่อมีคนรู้จัก SQL ครั้งแรก ทุกวันนี้ผู้คนเรียนรู้ SQL ก่อนหน้านี้ในอาชีพของพวกเขาดังนั้นจึงจำเป็นต้องมีการปรับตัวทางจิตใจ
ในที่สุดคุณควรเลือกเทคโนโลยีตามเกณฑ์ที่วัดได้อย่างมีเป้าหมายไม่ใช่ในความรัก / ความเกลียดชัง เป็นการยากที่จะทำการวัดเหล่านั้น แต่มีคนจำนวนมากที่ใช้ XSLT อย่างเข้มข้นและประสบความสำเร็จอย่างมากดังนั้นจึงไม่ต้องสงสัยเลยว่ามันสามารถทำได้