กรณีศึกษาในวิชาเลือกโมดูล
เมื่อเร็ว ๆ นี้ลูกค้าได้ขอให้ฉันเพิ่มคุณลักษณะใหม่ลงในไซต์ Drupal ของ บริษัท : แสดงไฟล์ PDF ในเบราเซอร์ ขณะที่ฉันเรียกดูตัวเลือกใน drupal.org ฉันตระหนักว่านี่เป็นโอกาสที่ดีในการจัดทำเอกสารกระบวนการตัดสินใจของฉันขณะที่ฉันเลือก โมดูล ใหม่ ฉันมักจะบอกว่าจะ เลือกโมดูลอย่างชาญฉลาด แต่ตอนนี้คุณสามารถดูว่าฉันคิดอย่างไรกับสิ่งนี้ในชีวิตจริง
กำหนดสิ่งที่คุณต้องการ
ขั้นตอนแรกคือการกำหนดสิ่งที่คุณต้องการ ในกรณีของฉันฉันต้องการ:
- ความสามารถในการดูไฟล์ PDF ในเว็บเบราเซอร์ซึ่งคล้ายกับตัวอย่างนี้ ลูกค้าจะอัปโหลดไฟล์ PDF ของจดหมายข่าวของ บริษัท และผู้เข้าชมจะสามารถอ่านได้ง่าย
- ไซต์นี้เป็น Drupal 7 ดังนั้นโมดูลจะต้องตรงกับ เวอร์ชันหลัก นั้น (Drupal 7 ได้รับการออกสักครู่ตอนนี้ดังนั้นหากผู้พัฒนาโมดูลไม่ได้ออกมาพร้อมกับ Drupal 7 รุ่นยังพวกเขาอาจจะไม่.)
- แม้ว่าไคลเอ็นต์ไม่ได้ระบุสิ่งนี้ แต่ฉันก็อยากหลีกเลี่ยงการพึ่งพาบริการของบุคคลที่สาม สำหรับวิดีโอฉันยินดีที่จะโพสต์เนื้อหาลงใน YouTube หรือ Vimeo แล้วฝังลงในไซต์ Drupal แต่สำหรับไฟล์ PDF ฉันไม่คิดว่าการเปิดรับภาพที่เป็นไปได้อาจเกินดุลถึงปัญหาเรื่องความยุ่งยากและค่าใช้จ่ายที่อาจเกิดขึ้น อย่างไรก็ตามฉันเปิดให้บริการของบุคคลที่สามหากเป็นทางเลือกเดียว
- แม้ว่าฉันต้องการหลีกเลี่ยงการบริการของบุคคลที่สาม แต่ฉันก็รู้ว่าทางเลือกของฉันอาจต้องการ ไลบรารี Javascript ของบุคคลที่สาม แม้ว่าจะเป็นการเพิ่มขั้นตอนเพิ่มเติมในการอัปเกรดในอนาคต แต่โดยทั่วไปแล้วฉันรู้สึกดีขึ้นในการใช้สำเนาห้องสมุดของตัวเองแทนที่จะใช้บริการของบุคคลที่สาม
- ฉันต้องการให้โมดูลมีน้ำหนักเบาและเจาะจงมากที่สุด ฉันไม่ต้องการมีส่วนเกี่ยวข้องกับวิธีการใหม่ ๆ อย่างสิ้นเชิงในการจัดการหรือจัดระเบียบไฟล์มีเดีย ฉันต้องการบางอย่างมากขึ้นเช่น Colorbox ซึ่งจะขยายภาพเพื่อการรับชมที่ดีขึ้น แต่ยังคงเป็นอิสระอย่างสมบูรณ์ต่อวิธีที่คุณเลือกที่จะจัดการไฟล์ภาพ ฉันมีลางสังหรณ์ที่ห้องสมุดนี้จะเป็น pdf.js แต่ฉันก็เปิดกว้างสำหรับความเป็นไปได้อื่น ๆ
- ตามปกติฉันต้องการทำตามหลักเกณฑ์ทั่วไปสำหรับการเลือกโมดูล Drupal โดยทั่วไปเลือกโมดูลที่มีอยู่แล้วในการใช้งานโดยไม่กี่พันคน (ถ้าเป็นไปได้) สักระยะหนึ่งโดยมีการพึ่งพาอย่างน้อยที่สุดซึ่งดูเหมือนว่าจะได้รับการดูแลโดยนักพัฒนาที่ใช้งานซึ่งวางแผนที่จะสนับสนุนโครงการต่อไปในอนาคตและไม่ได้เป็น ' t ต้องมีค่าธรรมเนียมใบอนุญาต
ค้นหาใน Drupal.org
ขั้นตอนต่อไปคือการค้นหาง่ายๆใน Drupal.org เวลาที่จะกระโดดลงไปในหลุมบอลของโมดูลดี
& # 34; เปรียบเทียบ & # 34; หน้าสำหรับโมดูล PDF
จุดแรกของฉันคือ (หรือควรจะเป็น) หน้านี้: การเปรียบเทียบโมดูล PDF viewer Drupal.org มีประเพณีที่ดีเยี่ยมในหน้าเอกสารซึ่งแสดงถึงข้อดีและข้อเสียของโมดูลต่างๆในพื้นที่เดียวกัน มีรายการเปรียบเทียบของหน้าเว็บกลาง แต่มีการโรยหน้าทั่วทั้งไซต์
หน้าการเปรียบเทียบ PDF รวมโมดูลผู้อ่าน PDF สี่รูปแบบ ฉันจะครอบคลุมพวกเขาที่นี่เช่นเดียวกับคนอื่น ๆ ที่ฉันพบจากการค้นหา ฉันจะเริ่มต้นกับผู้สมัครที่ฉันตัดสินใจที่จะข้ามไป
ตอนนี้ขอเจาะลึกรายละเอียดของเหตุผลที่โมดูลเหล่านี้ทำ (หรือส่วนใหญ่ไม่ได้) ทำงานในโครงการนี้
File Viewer
File Viewer ใช้ Internet Archive BookReader ซึ่งทำให้ฉันรู้สึกทึ่งเพราะฉันเป็นคนขยันขันแข็งใน Internet Archive ทุกครั้งที่ฉันไปที่นั่นฉันรู้สึกเกรี้ยวกราดของความกลัวและครอบงำที่ภูเขาของหนังสือที่ฉันสามารถดึงออกมาจากอีเทอร์
ที่ถูกกล่าวว่าเว็บไซต์สาธิตดูเล็กน้อยน่าเกลียดกับฉัน ฉันอาจจะอยู่กับมัน แต่ฉันสงสัยว่าลูกค้าของฉันจะเมื่อ pdf.js ดูทันสมัยมากขึ้น
นอกจากนี้ในการดูหน้าโครงการครั้งที่สองผมเห็นการประกาศตัวหนาที่ด้านบนสุด: โมดูลนี้ถูกย้ายไปยังโมดูล PDF อย่างเป็นทางการ พอใช้ได้ ด้วยการติดตั้งน้อยกว่า 400 ครั้งการควบรวมกับโมดูล PDF ที่เป็นที่นิยมมากขึ้น (ซึ่งเราจะกล่าวถึงในช่วงเวลาหนึ่ง) ดูเหมือนจะเป็นการเคลื่อนไหวที่ดี อย่าดาวน์โหลดโมดูลที่ถูกผสาน / ย้าย / ละทิ้ง
ตัวจัดรูปแบบไฟล์ Google Viewer
Google Viewer File Formatter คือสิ่งที่ดูเหมือน: วิธีใช้ Google เอกสารเพื่อฝังการแสดงไฟล์ในหน้าเว็บของคุณ แม้ว่าฉันจะชอบความเก่งกาจของ Google เอกสารเป้าหมายหนึ่งของฉันก็คือการคงความเป็นอิสระจากบริการของบุคคลที่สาม
นอกจากนี้โมดูลนี้มีการติดตั้งไม่ถึง 100 รายการ
โปรแกรมดูเอกสาร Ajax
แม้ว่า "AJAX" เป็นคำจาวาสคริปต์ทั่วไป Ajax Document Viewer จึงหันมาพึ่งพาบริการของบุคคลที่สาม มีการติดตั้งเพียงประมาณ 100 รายการ กำลังเดินทางไป...
Scald PDF
Scald PDF มีการติดตั้งเพียง 40 ครั้ง แต่ต้องดูเพราะเป็นส่วนหนึ่งของโครงการขนาดใหญ่ที่ชื่อว่า Scald (ใช่) ในฐานะที่เป็นหน้าโครงการ Scald อธิบาย: " Scald เป็นนวัตกรรมในการจัดการกับ อะตอมของสื่อ ใน Drupal"
ประโยคนั้นยกธงสีแดงขนาดใหญ่ 2 อัน ได้แก่ "นวัตกรรมใหม่" และคำว่า "Media" จับคู่กับ "Atom" "อะตอม" เป็นคำที่ใช้สำหรับ "สิ่งของ" ซึ่งทำให้เป็นธงสีแดงทั้งหมดด้วยตัวเอง Drupal มีใจชอบสำหรับคำที่ว่างเปล่าชนิดนี้: โหนด เอนทิตี้ ลักษณะ ... ยิ่งคำพูดกว้างขึ้นการเปลี่ยนแปลงอาจมีมากขึ้น
ขณะที่ฉันเลื่อนลงสงสัยของฉันได้รับการยืนยัน ฉันอ่านการกล่าวอ้างที่น่าตื่นเต้นว่า Scald จะปรับปรุงวิธีจัดการสื่อในไซต์ของฉันอย่างไร
ตอนนี้ความจริงก็คือการจัดการสื่อของ Drupal อาจใช้การปรับปรุงใหม่ Scald ไม่ใช่โครงการที่มีความทะเยอทะยานเพียงอย่างเดียวในพื้นที่นี้ อย่างไรก็ตามด้วยการติดตั้งน้อยกว่า 1000 ครั้งฉันไม่ต้องการเข้าชั้นล่าง
แน่นอนว่าในปีหน้า Scald อาจเป็น Views ถัดไป ที่จะหิน แต่อาจเป็นซอฟต์แวร์ที่ละทิ้งไปด้วยเส้นทางเล็ก ๆ ของเว็บไซต์ที่ไม่ได้รับอนุญาตให้ทิ้งไว้
ตอนนี้ผมอยากจะใช้วิธีแก้ปัญหาที่เต็มไปด้วยความทะเยอทะยานและเสี่ยงมาก เพียงแค่แสดงไฟล์ PDF โปรด นั่นคือทั้งหมดที่ฉันต้องการ
Shadowbox
Shadowbox ทำให้ฉันประหลาดใจ: อ้างว่าเป็นโซลูชันเดียวในการแสดงสื่อทุกประเภทตั้งแต่ไฟล์ PDF ไปจนถึงภาพวิดีโอ เรื่องนี้ไม่ได้กวาดไปเป็น Scald เพราะมันจะมุ่งเน้นไปที่การ แสดง สื่อโดยไม่ต้องนำเสนอแนวคิดใหม่ ๆ เช่น "อะตอมของสื่อ" แต่ฉันชอบ Colorbox เหมือนที่ได้กล่าวมาแล้ว ฉันไม่ได้ต้องการคิดทบทวนเรื่องนี้
อย่างไรก็ตามผมทราบ (ด้วยความคร่ำครวญภายใน) ว่ามีการติดตั้งมากกว่า 16,000 ครั้ง Shadowbox อาจเป็นทางเลือกที่มีประสิทธิภาพมากขึ้นในพื้นที่เดียวกัน ฉัน ต้อง ดู.
โมดูล Drupal ของ Shadowbox นั้นเป็นสะพานที่ห้องสมุด Javascript, Shadowbox.js ดังนั้นฉันจึงตรวจสอบจากเว็บไซต์ของห้องสมุด ที่นั่นฉันค้นพบเหตุผลสองประการที่จะต้องดำเนินการต่อไป
- ไลบรารีต้องมีค่าธรรมเนียมใบอนุญาตสำหรับการใช้งานเชิงพาณิชย์ ค่าธรรมเนียมนี้มีเหตุผลพอสมควร แต่ฉัน พยายามหลีกเลี่ยงซอฟต์แวร์โอเพ่นซอร์สที่ไม่เสียค่าใช้จ่าย
- การค้นหาอย่างละเอียดของคำถามที่พบบ่อยพบว่าตรงกันข้ามกับรายละเอียดในหน้าโมดูล Drupal ไฟล์ PDF จะ ไม่ได้ รับการสนับสนุนจากห้องสมุด Shadowbox 100% อุ่ย สิ่งที่ดีที่ฉันได้ตรวจสอบ
Two Contenders: & # 34; PDF & # 34; และ & # 34; PDF Reader & # 34;
หลังจากกำจัดส่วนที่เหลือตอนนี้ฉันมาถึงสอง contenders ชัดเจน: PDF และ PDF Reader
ทั้งสองโครงการมีความคล้ายคลึงกันที่สำคัญ:
- ทั้งสองมีการติดตั้งเกือบ 3,000 ครั้งมากกว่าทางเลือกอื่น ๆ (ยกเว้น Shadowbox)
- ทั้งสองใช้ห้องสมุด Javascript ภายนอกแบบเดียวกันนี้ pdf.js
สิ่งที่เกี่ยวกับความแตกต่าง?
เครื่องอ่าน PDF ยังมีตัวเลือกสำหรับการผสานรวม Google เอกสาร ในกรณีนี้ฉันคิดว่าลูกค้าของฉันอาจชอบที่ฉันจึงชอบมีตัวเลือก
ในขณะเดียวกัน PDF ได้รับการทำเครื่องหมายว่าเป็นผู้ดูแลร่วม (Coekerer) นั่นอาจเป็นสัญญาณว่านักพัฒนาซอฟต์แวร์จะละทิ้งโครงการ แต่ในทางกลับกันการกระทำครั้งล่าสุดเมื่อสัปดาห์ที่แล้วดังนั้นอย่างน้อยนักพัฒนาซอฟต์แวร์ก็ยังคงใช้งานอยู่
ในทางกลับกัน PDF Reader ถูกทำเครื่องหมายว่าได้รับการบำรุงรักษาอย่างจริงจัง แต่การกระทำล่าสุดเป็นเวลาหนึ่งปีที่ผ่านมา
หากไม่มีผู้ชนะที่ชัดเจนฉันตัดสินใจที่จะทดสอบทั้งสองอย่าง
ทดสอบคู่แข่ง
ฉันทดสอบทั้งสองโมดูลในสำเนาเว็บไซต์ที่ใช้งานจริงของฉัน (ไม่ว่าหน่วยของแข็งและไม่มีอันตรายจะปรากฏขึ้นอย่าลองใช้ไซต์ออนไลน์เป็นครั้งแรกคุณสามารถทำลายไซต์ทั้งหมดของคุณได้)
ฉันมีความลำเอียงต่อ PDF Reader เนื่องจากดูเหมือนว่าจะมีตัวเลือกอื่น ๆ (เช่น Google เอกสาร) มากกว่า PDF ดังนั้นฉันจึงตัดสินใจที่จะลอง PDF ก่อนเพื่อให้มันออกไป
PDF Fail: ต้องการการคอมไพล์หรือไม่?
อย่างไรก็ตามเมื่อติดตั้ง PDF และอ่าน README.txt ฉันค้นพบปัญหาที่ฉันเห็น แต่ไม่สนใจในหน้าโครงการ ด้วยเหตุผลบางประการโมดูลนี้ดูเหมือนว่าต้องการให้คุณรวบรวมไฟล์ pdf.js ด้วยตนเอง แม้ว่าหน้าโครงการแนะนำว่านี่ไม่จำเป็นต้อง README.txt แนะนำให้เป็น
เนื่องจาก PDF Reader จะใช้ไลบรารีเดียวกันแน่นอนโดยไม่ต้องใช้ขั้นตอนนี้ฉันจึงตัดสินใจลองใช้งานก่อน หากไม่ได้ผลฉันสามารถกลับไปที่ PDF ได้ตลอดเวลาและพยายามรวบรวมไฟล์ pdf.js ด้วยตนเอง
PDF Reader: ความสำเร็จ! เรียง
ดังนั้นในที่สุดฉันก็ลอง PDF Reader โมดูลนี้มีวิดเจ็ตใหม่สำหรับการแสดงฟิลด์ไฟล์ คุณเพิ่มฟิลด์ไฟล์ลงใน ชนิดเนื้อหา ที่คุณต้องการและตั้งค่าประเภทเครื่องมือเป็น PDF Reader จากนั้นให้คุณสร้างโหนดประเภทนี้และอัปโหลดไฟล์ PDF ของคุณ PDF ปรากฏอยู่ใน "ช่อง" ในหน้าเว็บ
คุณสามารถลองใช้ตัวเลือกการแสดงผลแบบต่างๆได้โดยการแก้ไขประเภทเนื้อหาอีกครั้งและเปลี่ยนการตั้งค่าการแสดงผลสำหรับฟิลด์
ฉันพบว่าตัวเลือกการแสดงผลแต่ละข้อมีข้อดีและข้อเสีย:
- โปรแกรมอ่าน เอกสารของ Google ทำงานได้ดีเหมือนการฝัง แต่เมื่อฉันคลิกไปที่หน้าจอแบบเต็มหน้าจอฉันก็พบหน้า Google เอกสารซึ่งขอโทษว่าเกินขีด จำกัด ของอัตรา อุ่ย บางทีนี่อาจจะน่าเชื่อถือมากขึ้นถ้าฉันติดตั้่งโมดูลกับบัญชี Google Apps ที่จ่ายเงิน แต่ฉันไม่ได้สนใจในการค้นหาเนื่องจากฉันแน่ใจว่าลูกค้าของฉันไม่ต้องการแสดงผล
- ตัวเลือก pdf.js ทำงานได้อย่างเยี่ยมยอด ... ใน Firefox และ Chrome แต่เมื่อฉันยิง Internet Explorer กล่องปรากฏว่างเปล่า เห็นได้ชัดว่านี่เป็นปัญหากับ pdf.js ไม่ใช่โมดูล PDF Reader ฉันคิดว่าฉันควรได้คาดหวังนี้ให้ที่ pdf.js พัฒนาโดย Mozilla และ Internet Explorer คือ ... ตัวเอง ยังคงฉันรู้สึกผิดหวังที่ฉันไม่ได้คิดที่จะยืนยันว่า pdf.js ทำงานได้อย่างน่าเชื่อถือในเบราว์เซอร์ทั้งหมดในสถานที่แรก
- ตัวเลือกการ ฝัง มีความน่าเชื่อถือมากที่สุด นี้จริงวิ่ง Adobe Reader ในช่องบนหน้าเว็บ Firefox ของฉันยังต้องการใช้ pdf.js แต่ฉันคิดว่านี่เป็นการตั้งค่าเบราเซอร์ ทั้งสองวิธีตราบเท่าที่ผู้เข้าชมมี Firefox หรือโปรแกรมดู PDF เช่น Adobe Reader PDF จะแสดงขึ้น
ดังนั้นในท้ายที่สุดการแก้ปัญหาของฉันคือการใช้ PDF Reader กับตัวเลือกการแสดงผล ฝัง ตัวเลือกนี้จะช่วยให้ฉันสามารถแนบ PDF กับโหนด Drupal และแสดงหน้าเว็บ Drupal ได้อย่างเชื่อถือได้
แต่น่าเสียดายที่บางครั้ง "เชื่อถือได้" ไม่เพียงพอ หลังจากการค้นหาทั้งหมดนี้ฉันต้องพิจารณาบริการของบุคคลที่สามหลังจากทั้งหมด