เหตุใดจึงเลือก CMS ที่จัดตั้งขึ้นแทนที่จะสร้างจากศูนย์?


13

งานวิจัยของฉันมากมายในอีกไม่กี่สัปดาห์ข้างหน้าจะเป็น CMS ที่แตกต่างกัน ฉันได้ดูบทสรุปสั้น ๆ เกี่ยวกับ episerver และ umbraco แล้ว ในขณะที่อ่านระบบเหล่านี้ฉันไม่สามารถช่วยได้ แต่คิดว่าการให้คุณสมบัติการจัดการเนื้อหาทำได้โดยไม่ต้องเรียนรู้รายละเอียดและโครงสร้างของแพลตฟอร์ม CMS เหล่านี้ (ค่อนข้างใหญ่)

ในอดีตที่ผ่านมาฉันได้รับโปรเจ็กต์ที่บทบาทของฉันในฐานะนักพัฒนาจะต้องถูกแยกออกจากตัวแก้ไข (เหมาะสม) ie มันเป็นหน้าที่ของฉันในการพัฒนาการออกแบบและฟังก์ชั่นการทำงานของไซต์และงานของลูกค้าของฉันเพื่อปรับปรุงเนื้อหา ฉันทำได้โดยใช้ 'พอร์ทัล' ซึ่งมีสองหน้าที่จะยอมรับการป้อนข้อความและการอัปโหลดรูปภาพเป็นต้น (โดยทั่วไปเนื้อหาที่พวกเขาต้องการ) บันทึกเนื้อหาใหม่นี้ลงในฐานข้อมูลแล้ว โดยการออกแบบ code-behind จะอ่านทั้งหมดนี้จากฐานข้อมูลไปยังตัวควบคุมที่เกี่ยวข้อง (เช่นตัวทำซ้ำ)

สำหรับฉันนี่เป็นวิธีที่มีประสิทธิภาพเพียงพอสำหรับลูกค้าของฉันในการจัดการเนื้อหาเพื่อปรับใช้กับโซลูชันของฉัน ฉันรู้ว่าฉันผิด - และ CMS นั้นดีกว่าผู้ที่สร้างขึ้นจากพื้นดิน - แต่นอกเหนือจากเรื่องของค่าใช้จ่ายแล้วทำไม?


1
ทำไมคุณต้องการที่จะผ่านความเจ็บปวดทั้งหมดของการพัฒนา (การออกแบบการเข้ารหัสการดีบักการทดสอบ) ตัวคุณเองเมื่อมีคนอื่นทำสิ่งนั้นเพื่อคุณ
PhilPursglove

5
มีเอกสารตามเอกสารและเว็บไซต์บนเว็บไซต์ของคำแนะนำและแบบฝึกหัดเกี่ยวกับวิธีการเรียนรู้เกี่ยวกับ CMS ขององค์กรเหล่านี้ เหตุใดฉันจึงต้องผ่านความเจ็บปวดจากการเรียนรู้และทำความคุ้นเคยกับการนำสิ่งเหล่านี้มาใช้จริง ๆ แล้วในความเป็นจริงฉันสามารถพัฒนาตัวเองจากพื้นดินด้วยการควบคุมที่สมบูรณ์?

1
เหตุผลที่ดีที่สุดที่คุณต้องเผชิญกับความเจ็บปวดจากการเรียนรู้คือเพราะคุณกำลังข้ามความเจ็บปวดจากการแก้ปัญหาด้วย (หวังว่าต่อไป) และถ้าคุณกำลังค้นหาเอกสารหวังว่านั่นหมายความว่าเมื่อคุณต้องฝึกคนให้มีเอกสารที่น้อยกว่าที่คุณต้องทำ
sclarson

มีเทคโนโลยีที่ใหม่กว่าจากวิธีการติดตั้ง CMS แบบเก่าที่คุณไม่ต้องเรียนรู้อะไรเลยและสามารถตั้งโปรแกรมในภาษาของคุณเองได้ ฉันสร้างตัวเองขึ้นมาเพราะฉันป่วยจากปัญหาการติดตั้งนี้หรือใช้สิ่งที่สบาย ๆ ที่เหมาะกับนักออกแบบ โปรไฟล์ของฉันมีลักษณะเป็นอย่างไร
Jason Sebring

@ ประกาย, การแก้ไขข้อบกพร่องของคนอื่นนั้นน่ารำคาญมากขึ้น 100 เท่าที่การแก้ไขข้อบกพร่องของคุณเอง
Pacerier

คำตอบ:


9

คุณใช้ CMS ที่มีอยู่เพื่อกำจัดน้ำหนักของคุณสมบัติที่อาจมีความสำคัญต่อผู้ใช้ที่คุณไม่ต้องการติดตาม

EPiServer, Umbraco, Orchard และอื่น ๆ ทั้งหมดมีอยู่ในตัวเลือกสำหรับการติดตามสิ่งต่าง ๆ เช่นรุ่นเนื้อหาใดที่เชื่อมโยงกับเนื้อหาอื่น ๆ วิธีสร้างฟอร์ม ฯลฯ และนอกเหนือจากนั้นพวกเขามีกิจกรรมที่คุณสามารถขอแก้ไขได้ คุณเห็นว่าเหมาะสม

โดยทั่วไปแล้วพวกเขามีการแก้ไขปัญหาหลายพันชั่วโมงแล้วเสร็จแล้วดังนั้นทำไมไม่ใช้ประโยชน์จากสิ่งเหล่านั้น โดยเฉพาะอย่างยิ่งในเวอร์ชันฟรีหรือโอเพ่นซอร์สที่ไม่มีค่าใช้จ่ายใด ๆ เลย แต่เวลาที่เรียนรู้ API ของพวกเขาซึ่งฉันสามารถรับประกันได้ว่าจะใช้เวลาน้อยกว่าที่คุณใช้ในการสร้างฟังก์ชั่นนั้นขึ้นมาใหม่

ดังนั้นหากคุณไม่จำเป็นต้องสร้างฟังก์ชันการทำงานที่พวกเขาให้มาทำไมไม่ใช้สิ่งที่รู้จักกันดีในการทำงานได้ดี

นี่เป็นเพียงรายการสั้น ๆ ของคุณสมบัติที่มีอยู่ซึ่งคุณไม่จำเป็นต้องดำเนินการด้วยตนเอง:

  • การกำหนดเวอร์ชันเนื้อหา
  • ขั้นตอนการทำงาน
  • รายงานสถานะลิงค์ของหน้า
  • การปรับแต่งโปรแกรมแก้ไข wysiwyg
  • การสร้างแบบจำลองเนื้อหา (ประเภทหน้า / ประเภทเอกสาร)
  • API การดึงเนื้อหา
  • เอกสาร / การฝึกอบรมสำหรับทั้งบรรณาธิการและนักพัฒนา
  • กลยุทธ์การแคชวัตถุ
  • ระบบการสืบค้นเนื้อหาสำหรับการค้นหา
  • โครงสร้างลำดับชั้นเนื้อหา (ใน CMS ที่เนื้อหาอยู่ในรูปแบบต้นไม้อยู่แล้ว)
  • มุมมองบรรณาธิการ
  • มุมมองผู้ดูแลระบบ
  • การควบคุมการเข้าถึง

ฉันทำเครื่องหมายว่านี่เป็นคำตอบเนื่องจากเป็นรายการผลประโยชน์ที่ครอบคลุมที่สุดที่ฉันจะได้รับจากการเลือกใช้หนึ่งใน CMS ที่กล่าวถึง ฉันคิดว่ามันอาจจะทำให้ฉันเอามือสกปรกไปกับพวกเขาเพื่อรับประโยชน์อย่างเต็มที่

การตั้งค่าระบบของคุณเป็นเพียง "สถานะเดิม" เหนือระบบคลาวด์หากคุณไม่ให้คุณค่ากับการควบคุมข้อมูลของคุณเองเป็นเจ้าของเซิร์ฟเวอร์ของคุณหรือไม่เข้าใจความแตกต่างระหว่างซอฟต์แวร์ที่คุณเป็นเจ้าของและซอฟต์แวร์ที่คุณเช่า โฆษณาล่องหนสำหรับธุรกิจของคุณเสียงดังมากสำหรับฉัน หากคุณคิดอย่างแท้จริงว่า SOS CMS บนคลาวด์เป็นตัวเลือกที่ดีสำหรับสถานการณ์ของ OP ให้ทำการตอบคำถามและให้ชุมชนลงคะแนน
CodexArcanum

@CodexArcanum - อย่าใช้สิ่งใดมรกตกล่าวอย่างจริงจัง พวกเขาเป็น CEO ของ บริษัท ที่ให้บริการเหล่านั้น โดยพื้นฐานแล้วบัญชีของพวกเขาคือโฆษณายักษ์
Ramhound

4

มีไม่มีคำตอบที่ชัดเจนซึ่งเป็นคนที่ดีกว่า ขึ้นอยู่กับความต้องการโครงสร้างต้นทุนกำลังคนและปัจจัยอื่น ๆ

CMS ที่สร้างไว้ล่วงหน้า / เป็นที่ยอมรับ

ข้อดี

  1. ประหยัดมากของเวลา CMS บางตัวที่มีมานานหลายปีมีชั่วโมงทำงานมากมาย คุณอาจไม่ต้องการคุณสมบัติ 10% ใน CMS ที่สร้างไว้ล่วงหน้า แต่ไม่ว่าจะช่วยประหยัดเวลาและเวลาไม่เสียค่าใช้จ่าย!
  2. ประหยัดเงินเป็นจำนวนมาก
  3. โดยทั่วไปจะมีขนาดใหญ่ปริมาณของคุณสมบัติที่จะอาจจะทำงานสำหรับความต้องการของคุณ

จุดด้อย

  1. การอนุญาต คุณต้องปฏิบัติตามใบอนุญาตของ CMS ที่คุณสร้างไว้ล่วงหน้า นี่อาจไม่ใช่เรื่องใหญ่ แต่คุณอาจต้องการเปลี่ยนแปลงสิ่งที่ต้องห้ามตามใบอนุญาตหรือคุณอาจถูกห้ามไม่ให้ใช้งานในสภาพแวดล้อมการผลิต
  2. หนัก เนื่องจาก CMS จะมีการปรับให้เข้าถึงผู้ชมได้มากที่สุด บางทีคุณอาจมีข้อ จำกัด ของเซิร์ฟเวอร์หรือไม่ต้องการโหลดสคริปต์ส่วนเกินสำหรับการจัดการเนื้อหาพื้นฐาน
  3. เขียนอาจจะเป็นในรูปแบบที่ไม่ใช่แบบแยกส่วน ช่วยบอกว่าคุณติดตั้ง CMS ที่ทำไว้ล่วงหน้าและเว็บไซต์ก็พร้อมให้ลูกค้าลงชื่อออกและบอกว่ามาปรับใช้กันเถอะ! จากนั้นคุณก็ส่งไปที่ลูกค้าของคุณและพวกเขาพูดว่า "โอ้ฉันต้องการเพิ่มคุณสมบัตินี้ใน CMS!" จากนั้นหากคุณเลือก CMS ที่มีความซับซ้อนมากหรือไม่ได้แยกส่วนมากคุณอาจมีปัญหาในการดำเนินการตามคำขอคุณลักษณะของพวกเขาหรืออาจใช้เวลานานเกินไป
  4. สืบทอดข้อบกพร่องของพวกเขา คุณจะรับช่วงข้อบกพร่องที่มีอยู่ทั้งหมดบน CMS ไม่ใช่ปัญหาเนื่องจากปกติแล้วพวกเขาจะอัปเดตได้ง่าย แต่จะเกิดอะไรขึ้นถ้าคุณดัดแปลงส่วนของมันอย่างหนักเพื่อเพิ่มฟีเจอร์?

CMS ที่ทำเองที่บ้าน / กำหนดเอง

ข้อดี

  1. ที่เหมาะกับความต้องการของคุณ คุณจะสามารถรวมเฉพาะสิ่งที่คุณต้องการและยังคงพกพาได้สูง
  2. เขียนในภาษาของคุณ บางทีคุณอาจมีเว็บไซต์ ASP.net MVC และ CMS ทั้งหมดนั้นเขียนด้วย PHP แต่คุณต้องการเว็บไซต์ที่เขียนใน C # โดยใช้ MVC และเครื่องมือดูมีดโกน (ตัวอย่างสุ่ม idk) มันง่ายกว่ามากในการดูแลเว็บเพจที่มีรูปแบบเหมือนกันและไม่มี PHP / JS / etc จำนวนมาก CMS ท่ามกลางรหัส C # ทั้งหมด
  3. ขอแสดงความนับถือคุณ / บริษัท ของคุณเป็นเจ้าของได้ 100% คุณสามารถใช้มันในการใช้งานมากที่สุดเท่าที่คุณต้องการ w / o ซื้อใบอนุญาตเพิ่มเติมอื่น ๆ

จุดด้อย

  1. ใช้เวลานานดังนั้นก็มีราคาแพง คุณสามารถใช้เวลา 1 ถึงสิบวันในการทำงานกับ CMS โดยขึ้นอยู่กับชั่วโมงการทำงานประสบการณ์ ฯลฯ

หากคุณมีเวลาและไม่มีระบบใดที่สร้างไว้แล้วพอดีกับบิลหรือซับซ้อนเกินไปฉันไม่เห็นเหตุผลที่จะไม่สร้างของคุณเองนอกเหนือจากปัจจัยที่ต้องใช้เวลาแน่นอน


2
เมื่อคุณลบเวลาและเงินเป็นข้อ จำกัด ไม่ค่อยมีเหตุผลที่จะไม่ทำอะไรเลย
sclarson

1
@sparks โครงการในโลกแห่งความเป็นจริงนั้นมักจะมีข้อ จำกัด ;)

1
เรียงลำดับสิ่งที่ฉันพูดด้วยความคิดเห็นของฉัน ข้อเสียของการพูดว่า "เสียเวลา" ประเภทของเสื้อโค้ทน้ำตาลปริมาณงานที่เกี่ยวข้องในการเขียนตั้งแต่เริ่มต้น คุณเขียนรหัสจากนั้นจะต้องจัดทำเอกสาร / ฝึกอบรมและมีเวลาในการดีบัก / แก้ไขปัญหาทั้งหมดสำหรับทุกคุณสมบัติที่คุณเขียน
sclarson

2

คุณอาจต้องการเพิ่มความปลอดภัยของเว็บในการสนทนาด้วย หากคุณสร้าง CMS ตั้งแต่เริ่มต้นโอกาสที่คุณจะมีช่องโหว่ต่อการโจมตีจำนวนมาก (ดูเช่นhttps://www.owasp.org/index.php/Top_10_2010-Main ) หากคุณใช้ CMS ที่มีอยู่โดยทั่วไปจะมีความปลอดภัยมากกว่า แต่ในทางกลับกันช่องโหว่จะแพร่หลายมากขึ้น

ดังนั้นมันเป็นบิตของการแลกเปลี่ยนความปลอดภัย แต่ฉันจะยืนยันว่า CMS "มาตรฐาน" ที่ได้รับการปรับปรุงเป็นอย่างดีมีความปลอดภัยมากกว่าโฮมเมดที่ทำเอง แต่มันขึ้นอยู่กับขอบเขตที่คุณเลือก

อย่างไรก็ตามหากคุณใช้ CMS "มาตรฐาน" และทำการปรับเปลี่ยนมากมายคุณอาจแบ่งเส้นทางการอัปเกรดและจบลงด้วยการไม่สามารถอัปเดต CMS ของคุณและทำให้คุณมีความเสี่ยง


1

สิ่งหนึ่งที่ต้องคำนึงถึงคือ CMS ของคุณอาจล้าสมัยไม่จำเป็นต้องเป็นภาษา แต่ควรใช้งานและการออกแบบ โปรแกรมเมอร์กลุ่มถัดไปอาจไม่ต้องการทำงานกับข้อ จำกัด ในการใช้งานและเท่าที่การออกแบบมันอาจทำลายภาพของพวกเขา!

หากเป็นเว็บไซต์ที่เรียบง่ายหรือคุณไม่มีเวลามากพอที่จะใช้ CMS ได้ฟังดูดี!


1

เหตุผลอันดับหนึ่งในการสร้าง CMS ของคุณเองคือการเพิ่มฟังก์ชันการทำงานของคุณเองเมื่อเวลาผ่านไป ด้วย CMS แบบ off-the-shelf คุณจะเชื่อมโยงกับสถาปัตยกรรมและเทคโนโลยีของบุคคลที่สามที่สร้างมันขึ้นมา

ตัวอย่าง:

  • Umbraco - พึ่งพา XSLT สำหรับโครงร่าง - #fail

  • Orchard - โค้งมากเกินไปและการเรียนรู้สำหรับ Web Forms devs

... ฯลฯ


1
Umbraco ไม่ต้องการ XSLT แต่เป็นตัวเลือก
sclarson

คุณหมายถึงคุณสามารถใช้ CSS เป็นพิเศษได้หรือไม่ Umbraco เป็นภาษาของเจ้าของมาร์กอัปหรือไม่? เช่นเดียวกับ SkonJeet ฉันต้องค้นคว้าเรื่องนี้ในขั้นตอนเดียว
IrishChieftain

2
Umbraco มี webforms และตัวเลือก mvc ไม่เคยต้องการให้คุณใช้ภาษาที่เป็นกรรมสิทธิ์ของตนเอง คุณอยู่ใน asp.net เสมอและมีตัวเลือกในการสอบถามแหล่งข้อมูลและการควบคุมการเขียนหากคุณต้องการ
sclarson

1
CMS อีกตัวที่ฉันใช้คือ N2 ซึ่งมีรหัสที่สง่างามมากจนคุณไม่เข้าใจ มุมมองของพวกเขาคือรหัสที่ควรเอกสารตัวเองซึ่งเป็น Bee Ess รวม
IrishChieftain

1
ฉันทำหลายเว็บไซต์ใน Umbraco แล้วและไม่เคยใช้ XSLT ในเวอร์ชั่นใหม่มันไม่ใช่ตัวเลือกในตัวอีกต่อไปเท่าที่ฉันรู้ อย่างไรก็ตาม XSLT นั้นทรงพลังมาก (สำหรับ 6 คนที่สามารถเข้าใจได้!)
EJ Brennan

1

ติดกับธุรกิจหลักเป็นอาร์กิวเมนต์ที่ดีเช่นกันฉันจะบอกว่า เพียงเพราะคุณกำลังสร้างรถยนต์ไม่ได้หมายความว่าคุณควรสร้างเชื้อเพลิงของคุณเองเช่นกัน นั่นเป็นผลิตภัณฑ์ที่แตกต่างกันโดยสิ้นเชิงและมีโอกาสค่อนข้างดีที่คนอื่นจะทำมันได้ดีกว่ามากเพราะคุณจะอยู่ที่อื่น ข้อบกพร่องในระบบที่พัฒนาขึ้นใหม่ไม่ควรประเมินต่ำเกินไป ซม. ที่มีอยู่พักหนึ่งจะมีข้อบกพร่องเล็กน้อยใช่ แต่ไม่มีที่ใกล้กับจำนวนที่ใหม่ของคุณ cms ที่มีอยู่ได้รับการทดสอบโดยผู้ใช้หลายล้านคนในช่วงหลายปีที่ผ่านมา


" ความสนใจของคุณจะอยู่ที่อื่น" - lol
Tim Abell
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.