คุณรู้จัก Django หรือเปล่า (ดีจังง่อวว)

นักแต่งเพลงหรือนักเขียนแต่ละคน ล้วนมีความสนใจและความถนัดที่ไม่เหมือนกัน เหล่า Coder เองนั้นก็ไม่แตกต่าง แต่ละคนล้วนแต่มีความถนัดและเครื่องไม้เครื่องมือในการทำงานแตกต่างกันออกไป

สำหรับศาสตร์ในการพัฒนาเว็บไซต์นั้นก็มีเครื่องมือช่วยเหลือมากมาย แต่ละตัวก็มีข้อดีและข้อเสียที่ไม่เหมือนกัน และผมเองก็คงไม่ออกมาฟันธงว่าตัวไหนดีกว่าและแต่ละคนควรใช้เครื่องมือชิ้นใด

แต่.. ในวันนี้ผมมีเครื่องมือสุดเจ๋ง ที่จะทำให้ชีวิตของ Coder อย่างเรา ๆ ดีขึ้นตัวหนึ่งมาแนะนำครับ

เครื่องมือนี้เป็น Framework ครับ เราเรียกมันว่า จังโก้ (ไม่ได้อ่านว่าดีจังโก้นะ) เป็นหนึ่งใน Framework ที่ผมรักและหลงใหลที่สุดในขณะนี้ เรียกว่าเข้าขั้นบูชาเลยก็ได้ เว็บไซต์กว่า 80% ในระยะ 3 ปีมานี้ของผม ก็ใช้ตัวนี้แหละครับ

Django เป็น Framework ที่ตอบสนองผมได้ ดั่งที่เค้าโฆษณาไว้ก็คือ “ The web framework for perfectionists with deadlines.” ไม่เชื่ออย่าลบหลู่ครับ มันช่วยประหยัดเวลาได้มากจริง ๆ ถ้ามีข้อสงสัย ลองเข้าไปดูต่อที่เว็บนี้เลย https://www.djangoproject.com/

ด้วยการที่ตัว Framework เองที่ถูกเขียนและพัฒนาอย่างต่อเนื่องด้วยภาษา Python (ภาษาครอบจักรวาล ทำได้ทุกอย่าง) ทำให้การใช้งานของมันครอบคลุมการทำงาน เกี่ยวกับการสร้างเว็บไซต์ ไม่ว่าการจัดการฐานข้อมูล ระบบหลังบ้าน ระบบการทำงานกับฟอร์ม หรือกับระบบแปลก ๆ ที่คุณคิดไม่ถึง

เหตุผลที่ผมหลงใหลใน Framework ตัวนี้ก็คือ

  1. มีระบบจัดการ Database ที่ใช้งานง่าย ทำให้ผมจัดการฐานข้อมูลได้เร็วมาก ผมไม่ได้เขียน SQL Statement มานานขนาดไหนแล้ว ผมก็จำไม่ได้ หมดปัญหาข้อผิดพลาดแปลก ๆ ที่เกิดขึ้นในขั้นตอนการ Query ฐานข้อมูล
  2. มีระบบ Admin สำเร็จรูปให้ใช้ “เพียงแค่ติดตั้ง Django คุณก็จะได้รับ Admin 1 ระบบทันที” ณ ตอนที่ผมเขียนบทความนี้ ผมคิดว่า น่าจะเป็นระบบ Admin สำเร็จรูปที่ดีที่สุดสำหรับ Developer แล้วครับ แต่ว่ามีข้อแม้นิดหนึ่ง ถ้าเป็นระบบที่ต้องการรูปแบบเอกลักษณ์เฉพาะตัว Admin นี้อาจจะไม่ตอบโจทย์ครับ เพราะสุดท้าย ยังไงมันก็คือสำเร็จรูปครับ
  3. มีระบบพื้นฐานสำหรับการสร้าง Web Site อย่างครบครัน หรือถ้าคุณอยากจะทำให้ระบบของคุณเป็น API ก็สามารถใช้งาน Library ตัวนี้ได้เลย http://www.django-rest-framework.org/
  4. ด้วยความที่เป็น Python มันมี Package ที่มีผู้พัฒนาไว้เยอะแยะเต็มไปหมด อีกทั้ง Django นั้นเป็น Framework ที่โด่งดัง เลยมีผู้พัฒนาจำนวนมาก ทำ plugins ที่พร้อมใช้งานเป็นจำนวนมาก
  5. สำคัญที่สุด!! คือ พัฒนาเร็ว ตอบโจทย์ลูกค้า เก็บเงินได้ง่าย และปิดงานได้เร็วครับ

แต่เดี๋ยวก่อน โลกของเราไม่ได้สวยงามอย่างที่เราคิด เส้นทางของ Coder อย่างเราไม่ได้โรยด้วยกลีบกุหลาบ

ข้อเสียของ Django ก็มีเหมือนกัน (ที่เขียนตัวบาง เพราะไม่อยากนำเสนอ อิอิ)

  1. อาจจะไม่คุ้นเคยกับมือใหม่ เนื่องด้วยภาษา Python นั้นไม่ใช่ภาษาทั่วไปที่เราเรียนใน โรงเรียน หรือ มหาวิทยาลัย มือใหม่อาจจะต้องศึกษาเพื่อทำความคุ้นเคยกับมันเล็กน้อย
  2. ด้วยความที่มันเป็น WSGI App การ Deploy ลงใน Server ไม่ได้ตรงไปตรงมาเหมือน PHP Django จะต้องมีการติดตั้ง Package และต้องมีการ Setup Proxy Server ให้ชี้มายัง Django App (แต่ผมการันตี ว่าไม่ได้ยากแบบที่คิด มีคนเขียนวิธีติดตั้งไว้เต็มไปหมด https://simpleisbetterthancomplex.com/tutorial/2016/10/14/how-to-deploy-to-digital-ocean.html
  3. Host ในไทย ไม่ค่อยรองรับ เพราะส่วนมากรองรับ PHP, .Net ครับ เลยต้องใช้ VPS หรือ Server รูปแบบอื่น

สุดท้ายนี้ ผมคิดว่าเรื่องการติดตั้งและการ Deploy นั้นเป็นเรื่องรอง เราสามารถคุยกับลูกค้าของเราได้ครับ สำหรับผม การโฟกัสไปที่ งานเสร็จตามเวลา และงานมีคุณภาพดี ดีกว่าครับ :D

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.