Screen Shot 2558-03-02 at 12.01.37 PM
สิ่งที่น่าคิดอย่างหนึ่งในการพัฒนาระบบงาน ก็คือ
สังเกตไหมว่า ก่อนที่จะเริ่มพัฒนาระบบงานอะไรสักอย่าง
สิ่งที่เรามักพูดถึงก่อน feature ของระบบงานก็คือ

  • เราจะใช้เครื่องมืออะไรพัฒนากันดีนะ ?
  • เราจะใช้เทคโนโลยีอะไรดีนะ ?
  • เราจะใช้ framework อะไรดีนะ ?

หลังจากนั้นจึงถามถึงรายละเอียดของระบบที่จะพัฒนา
มันก็แปลกๆ ดีนะ !!

คำถามหนึ่งที่น่าคิด คือ
ทำไมในการพัฒนาระบบงาน เราต้องใช้ framework ด้วยล่ะ ?

คำตอบมันมีอะไรบ้าง ?
อาจจะตอบว่า
Framework มันไม่ได้จำเป็นอะไรเลยนะ
แต่มันเป็นเครื่องมือหนึ่งที่จะทำให้คุณพัฒนาระบบงานได้ดีขึ้น และ เร็วขึ้น

ดีขึ้นอย่างไรล่ะ ?

เพราะว่า framework มันเตรียมรูปแบบการพัฒนาที่เหมาะสมกับ business rule ของคุณไงล่ะ
มีโครงสร้างของระบบที่ชัดเจน เป็นมาตรฐาน
ทำให้สามารถ maintain และ upgrade ได้ง่าย

สิ่งที่ต้องคิดต่อ คือ
maintain ง่ายจริงไหมนะ ?
upgrade ง่ายจริงไหมนะ ?

จะรู้ได้อย่างไรล่ะ ?
คุณเองไงล่ะ จะนำมาใช้แล้วมิใช่หรือ ?

เร็วขึ้นอย่างไรล่ะ ?

เนื่องจาก developer ไม่ต้องเสียเวลาไปสร้าง code ที่ใช้ซ้ำๆ หรือ มันใช้งานทั่วไปอยู่แล้ว
อย่าไปลงทุน หรือ ลงแรง กับมันเลย ซึ่ง framework จัดให้
เอาเวลา และ แรง ไปลงกับเรื่องอื่นๆ ที่สำคัญกว่า

คำถามที่ต้องคิดคือ
แล้วมันทำให้เราผูกติดกับ framework มากไปหรือเปล่านะ ?
คำตอบคืออะไรล่ะ ?
คุณใช้ framework มาช่วยสร้าง และ พัฒนาระบบ หรือ
คุณสร้าง และ พัฒนาระบบ ตาม framework ?
คุณต้องการใช้ framework หรือ library กันแน่ ?
ระบบต้องการ หรือ คุณต้องการ ?
ระบบต้องการ หรือ เขาทำกันมาแบบนี้ ใช้งานแบบนี้ เลยต้องใช้แบบนี้ ?
คุณต้องตอบให้ได้นะครับ

ดังนั้นสิ่งที่คุณต้องเข้าใจ คือ

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

สุดท้ายแล้ว

อย่าลืมว่าคุณพัฒนาระบบงานนะ อย่าไปผูกติดกับ framework
เนื่องจาก framework คือสิ่งที่เข้ามาช่วย
ไม่ใช่สิ่งที่บอกว่าระบงานคุณต้องทำตาม framework เท่านั้น !!

จงใช้สิ่งที่ระบบคุณต้องการนะครับ
ไม่ใช่ใช้ในสิ่งที่คุณต้องการ

ดังนั้น จงเข้าใจ และ รู้จักมันก่อน ก่อนนำไปใช้งาน

อย่าบอกว่ามันคือข้อจำกัดของ framework นะ
มันแสดงว่า คุณกำลังใช้ framework ในการพัฒนาระบบ
ไม่ใช่การนำ framework มาช่วยพัฒนาระบบ

แล้วคุณล่ะ ทำไมถึงใช้ framework  ?