วันนี้จะมาทำการรีวิวระหว่าง 2 เทคโนโลยีชื่อดังต่างค่าย อย่าง Django และ WordPress ซึ่งก่อนอื่นต้องขออธิบายก่อนครับว่า การเปรียบเทียบระหว่าง Django และ WordPress นั้นก็ดูจะเป็นเหมือนมวยไม่ถูกคู่หรือคนละประเภท เพราะว่า Django คือ "เว็บเฟรมเวิร์ค" ที่อยู่บนพื้นฐานภาษาไพธอน (Python Programming Language) คือพัฒนาด้วยภาษาไพธอน ส่วน WordPress คือ "CMS" หรือ Content Management System นั่นเอง ซึ่งจุดกำเนิดของ WordPress นั้นมาจากการเป็นเว็บบล็อก แต่ทุกอย่างล้วนมีวิวัฒนาการ จนได้มาเป็น WordPress ที่สามารถเป็นเว็บที่ทำได้เกือบทุกสิ่งจิงเกอเบลเหมือนในปัจจุบัน ด้วยปลั๊กอินต่าง ๆ จำนวนมหาศาล
แต่ที่ต้องทำการเปรียบเทียบหรือรีวิวตรงนี้ก็เพราะว่าในการเริ่มต้นศึกษานั้นหลาย ๆ คนยังไม่แน่ใจว่าจะต้องศึกษาเทคโนโลยีตัวไหนดี เพราะว่าทุกการเรียนรู้นั้นล้วนแล้วแต่มีราคาที่ต้องจ่าย นั่นก็คือระยะเวลา ดังนั้นการสลับสับเปลี่ยนเทคโนโลยีที่ใช้ไปมา ก็ต้องแลกมาด้วย cost ที่สูงตามไปด้วย ซึ่งจะดีกว่าแน่ ๆ ถ้าได้รู้รายละเอียดเบื้องลึกเบื้องหลังต่าง ๆ สำหรับใช้ประกอบการตัดสินใจในการศึกษาหรือเริ่มต้นพัฒนาได้อย่างตรงตามความต้องการ
คำนิยาม/จำกัดความ (Definition)
Django
"The web framework for perfectionists with deadlines"
WordPress
"WordPress is a free content management system used to build and maintain websites"
Django: ⭐⭐⭐
Django นั้นถ้าเทียบกับบรรดาเว็บเฟรมเวิร์คเหมือนกัน คะแนนในส่วนนี้น่าจะได้ 5 ดาวเต็ม อย่างไม่ต้องสงสัย และถ้าอ้างอิงตามผลสำรวจล่าสุดของ stackshare.io ปี 2020 (ผลล่าสุด) ในหัวข้อ Backend Frameworks of the year 2020 นั้น Django นำมาเป็นอันดับ 1 แต่ในบริบทนี้เป็นการเทียบกับ WordPress ซึ่งเป็นแพลตฟอร์มในการทำเว็บที่มีคนใช้เยอะสุดในโลก จึงขอให้ที่ 3 ดาวครับ
ผลสำรวจจาก stackshare.io ล่าสุด
WordPress: ⭐⭐⭐⭐⭐
ถ้าเปรียบเทียบกันในเรื่องความนิยมนั้น แน่นอนว่าในโลกนี้คงไม่มีเทคโนโลยีไหนที่จะเป็นที่นิยมเท่ากับ WordPress จำนวนเว็บไซต์ทั้งหมดของโลก กว่า 39.5% ใช้ WordPress อ้างอิงจาก searchenginejournal.com ในบทความ WordPress Powers 35.9% of All Websites
Django: ⭐⭐
ในการเริ่มต้นนั้น Django จะเริ่มต้นได้ยากกว่า คือ learning curve จะสูงกว่า เพราะว่าต้องมีพื้นฐานภาษาไพธอนมาในระดับพื้นฐานที่จำเป็น เพราะถ้าไม่มีพื้นฐาน เรียนไม่รู้เรื่องแน่นอน และควรจะมีพื้นฐานเรื่องเทคโนโลยีเว็บและภาษาอื่น ๆ ที่เกี่ยวข้องเช่น HTML เป็นต้น
WordPress: ⭐⭐⭐⭐⭐
WordPress นั้นจะเริ่มต้นได้ค่อนข้างง่ายกว่ามาก หลาย ๆ คนไม่มีพื้นฐานโปรแกรมมิ่งมาก่อน ยังสามารถเริ่มต้นทำเว็บเองได้ เพียงแค่ลงแรงศึกษาไม่นาน ก็สามารถได้หน้าเว็บไซต์แล้ว
Django: ⭐⭐⭐
จริง ๆ แล้วเมื่อศึกษามาได้สักพักจะพบว่า Django นั้นสามารถสร้างเว็บได้อย่างรวดเร็ว แต่ก็น้อยกว่า WordPress ที่มีปลั๊กอินและตีมให้พร้อมใช้งานเสร็จสรรพ (ซึ่งถ้าเทียบกับเฟรมเวิร์คต่อเฟรมเวิร์คอื่น ๆ ในเรื่องความไวในการสร้างเว็บหรือตัวต้นแบบนั้น Django มาเป็นอันดับแรก ๆ)
WordPress: ⭐⭐⭐ ⭐⭐⭐
เรื่องความรวดเร็วในการสร้างหน้าเว็บไซต์ขึ้นมานั้น คงต้องยกให้ WordPress คือการนำหลายสิ่งอย่างไม่ว่าจะเป็นตีม ปลั๊กอิน ฯลฯ เข้ามาประยุกต์ ผสมผสานเข้าด้วยกัน
Django: ⭐⭐
ในการสร้างเว็บ E-commerce ถ้าต้องการทำเว็บขายสินค้าในเบื้องต้น Django ต้องลงแรงและใช้พลังงานสูงมากเลยในการ implement ระบบ E-commerce สักระบบขึ้นมา ผิดกับ WordPress ที่เริ่มต้นทำได้ไวมาก ๆ แต่จะว่าไปแล้ว Django ก็มีไลบรารี่สำหรับทำ E-commerce โดยเฉพาะ ชื่อ Django Oscar ซึ่งก็ต้องลงแรงโค้ดเพิ่มนิดหน่อย แต่ก็ถือว่าโอเครเลย แต่แนะนำถ้าจะทำ E-commerce ด้วย Django แบบเต็มรูปแบบก็ใช้ Django REST Framework สำหรับทำ API แล้วใช้พวก JS front-end เช่น Vue, React, Angular ผนวกด้วย ก็จะแจ่มมากครับ แล้วเสริมด้วย payment gateway ต่าง ๆ ในการทำ transaction ชำระเงิน เช่น Stripe, Omise, etc เป็นต้น
WordPress: ⭐⭐⭐⭐⭐
WordPress มี WooCommerce ปลั๊กอินพร้อมใช้งานเสร็จสรรพ แต่ปัญหาในระยะยาวอาจจะทำให้ระบบของเราใหญ่ขึ้นก็อาจจะปรับแต่งอะไรยากสักหน่อย รวมไปถึงการ integrate เข้ากับ API ต่าง ๆ
ขออธิบายในส่วนของ SEO ก่อนเพียงเล็กน้อย ซึ่งศาสตร์ของ SEO จะขออนุญาตสรุปให้เน้น ๆ คือ "ศาสตร์ที่ว่าด้วยการทำให้เว็บของเราขึ้นไปติดหน้าแรกของ Google" ซึ่งถ้าเว็บของเราติดหน้าแรก Google แล้ว คงไม่ต้องบอกครับว่าจะส่งผลดีต่อธุรกิจแค่ไหน หัวข้อนี้จะอยู่นอกเหนือขอบเขตของบทความนี้ครับ
Django: ⭐⭐⭐
แค่ Django ต้องมีความรู้และความเข้าใจในเรื่อง SEO ในระดับหนึ่ง เพราะว่าต้องมีการเขียนโค้ดเพื่อ optimize เว็บและดีไซน์ HTML tags ต่าง ๆ ให้รองรับ SEO ในขณะที่ WordPress มีมาให้ตั้งแต่เริ่มต้นและถ้าต้องการเครื่องมือเพิ่มก็แค่ทำการติดตั้งปลั๊กอินเสริม
WordPress: ⭐⭐⭐⭐⭐
WordPress มีปลั๊กอินและเครื่องมือสำหรับ SEO มาให้อย่างครบครันและเพียบพร้อมเสร็จสรรพ ดังนั้นเพียงแค่ติดตั้งปลั๊กอินเพิ่มเติมก็พร้อมที่จะ optimize เว็บหรือบทความให้ดีต่อ SEO ได้แล้วตัวอย่างปลั๊กอินที่ได้รับความนิยมสูงสุดในเรื่องของ SEO ของ WordPress คือ Yoast SEO
Django: ⭐⭐⭐⭐⭐
Django นั้นขึ้นชื่อได้ว่าเป็นเฟรมเวิร์คดังนั้นจึงสามารถทำการเขียนโค้ดเพื่อ custom ได้ตามใจ สามารถปรับให้ประสิทธิภาพของเว็บดีขึ้นได้ดีและยืดหยุ่นมากกว่า WordPress เห็น ๆ
WordPress: ⭐⭐
WordPress เมื่อมีการเพิ่มฟีเจอร์หรือฟังก์ชันใหม่ ๆ ก็ต้องอาศัยปลั๊กอิน ยิ่งระบบใหญ่ขึ้น ปลั๊กอินก็จะเยอะขึ้นตามไปด้วย ยิ่งปลั๊กอินเยอะ ก็จะยิ่งส่งผลต่อประสิทธิภาพของเว็บไซต์ทั้งในด้านของความเร็วของเว็บ รวมไปถึงด้านความปลอดภัยที่ต้องมีการอัปเดตปลั๊กอินบ่อย ๆ ซึ่งจะทำให้เกิดช่องโหว่ได้ง่าย
Django: ⭐⭐⭐⭐⭐
Django นั้นขึ้นชื่อในเรื่องของความปลอดภัยและมีเครื่องมือที่เป็น built-in เสร็จสรรพมาให้ในตัว เช่นในหน้าฟอร์มก็จะมีแท็ก CSRF token ป้องกัน ระบบ authentication มี password hash หรือส่วนอื่น ๆ ที่เกิดขึ้นบ่อย ๆ ในการโจมตีเช่น SQL Injection, Cross Site Scripting, etc ที่เป็นค่าเริ่มต้นเสร็จให้ในตัว
WordPress: ⭐⭐
WordPress ขึ้นชื่อในเรื่องช่องโหว่ในด้านความปลอดภัยอยู่มาก ยิ่งถ้าไม่มีพื้นฐานด้านเว็บและระบบความปลอดภัยที่ดีพอ อาจจะเหนื่อยในส่วนนี้ จากรายงานของเว็บ hubspotในปี 2018 กว่า 90% ของเว็บไซต์ที่ถูกแฮ็กนั้นล้วนแต่เป็น WordPress ! ลิ้งค์ URL ของหน้าแอดมินที่เป็นหน้า default ของหน้าแอดมินอย่าง /wp-admin/ เช่น www.example.com/wp-admin หรือไม่ว่าจะเป็น /wp-login.php ซึ่งเป็นหน้า default แอดมินของ WordPress และยิ่งถ้าผู้ที่โจมตี (attackers) สามารถสุ่มเดารหัสผ่านในการเข้าล็อกอินได้ นั่นก็แสดงว่าคุณได้ถูกแฮ็กและเว็บไซต์ของคุณถูกครอบครองโดยคนอื่นโดยปริยาย
Django: ⭐⭐⭐⭐⭐
Django ต้องมีความรู้ในส่วนของโปรแกรมมิ่งถึงจะสามารถพัฒนาระบบได้ ดังนั้นแน่นอนว่าจึงมีความยืดหยุ่นสูงกว่ามาก ซึ่งข้อนี้เป็นอีกหนึ่งข้อที่มองเห็นความแตกต่างที่ค่อนข้างชัดเจน ถือว่าเป็นอีกหนึ่งคีย์เวิร์ดหลักกันเลยทีเดียว
WordPress: ⭐
การที่จะต้องหาตีมหรือปลั๊กอินต่าง ๆ มาใช้งาน ซึ่งคงเปรียบเสมือนการยืมจมูกคนอื่นหายใจ ยิ่งเว็บใหญ่ขึ้น ฟีเจอร์เยอะขึ้น ปลั๊กอินต่าง ๆ ก็เพิ่มขึ้นแถมการที่จะต้องปรับแต่งหน้าเว็บหรือปลั๊กอินต้องมีความรุ้ในส่วนของภาษา PHP ด้วย หรือถ้าวันดีคืนดีปลั๊กอินเหล่านั้นหยุดอัปเดตหรือมีช่องโหว่ ก็สามารถสร้างความเสียหายให้กับเว็บไซต์ของเราได้ไม่ยาก
Django: ⭐⭐⭐⭐⭐
Django เป็นเว็บเฟรมเวิร์คและอยู่บนพื้นฐานของภาษาไพธอนที่วางโครงสร้างการดีไซน์ด้วยแนวคิด Object Oriented Programming (OOP) รวมถึงโครงสร้างของ Django นั้นก็ยิ่งเหมาะสำหรับการ reuse coe ดังนั้นเมื่อมีโปรเจคท์ใหม่ที่คอนเซ็ปต์คล้ายคลึงกันก็สามารถนำโค้ดเดิมมาประยุกต์เข้าใช้งานได้ทันทีไม่ต้องเริ่มสร้างใหม่ตั้งแต่ 0 หรือ build from scratch
WordPress: ⭐
WordPress เป็น CMS ที่ต้องปรับแต่งใช้งานตาปลั๊กอิน ดังนั้นในส่วนของการ reuse code จึงแทบเป็นไปได้อยากมาก
Django: ⭐⭐⭐⭐⭐
เป็นที่แน่ชัดว่า Django นั้นถูกสร้างมาจากภาษาไพธอนและแน่นอนว่าก็ต้องเขียนโค้ดเป็นภาษาไพธอน ซึ่งเป็นภาษาที่ได้รับความยอดนิยมสูงสุดในงานด้าน Data Science, AI, and Machine Learning ในปัจจุบันที่สายงานเหล่านี้เรียกได้ว่าเป็นสายงานที่มาแรงแห่งยุค ดังนั้น Django จึงได้รับอานิสงส์ข้อนี้ไปด้วยแบบเต็ม ๆ
WordPress: ⭐
เป็นงานที่แทบเป็นไปได้ยากเลยที่จะใช้ WordPress ทำ Data Science, AI หรือ ML ยังแทบไม่เจอ use case ที่ใช้งานจริง คือแทบนึกไม่ออกเลยครับข้อนี้
🔥📒 ประชาสัมพันธ์:
ทางเพจ Stackpython กำลังจะจัดคอร์สสด Django Bootcamp พัฒนาเว็บไซต์แบบด้วยไพธอนแบบเนื้อหาครบครันที่สุดที่เรามีมา แบบสอนสดเป็นครั้งสุดท้ายของเพจ (รับจำนวนจำกัด) เริ่มเปิดให้ลงทะเบียนแล้ว อ่านรายละเอียดเพิ่มเติม
อ้างอิงเพิ่มเติม
กิจกรรมที่กำลังจะมาถึง
ไม่พลาดกิจกรรมเด็ด ๆ ที่น่าสนใจ
Event นี้จะเริ่มขึ้นใน April 25, 2023
รายละเอียดเพิ่มเติม/สมัครเข้าร่วมคอร์สเรียนไพธอนออนไลน์ที่เราได้รวบรวมและได้ย่อยจากประสบการณ์จริงและเพื่อย่นระยะเวลาในการเรียนรู้ ลองผิด ลองถูกด้วยตัวเองมาให้แล้ว เพราะเวลามีค่าเป็นอย่างยิ่ง พร้อมด้วยการซัพพอร์ตอย่างดี