ส่วนตัวแล้วใช้งาน Python ทำงานอยู่แล้ว มันไม่ได้มีอะไรพิเศษมากมาย ไปกว่า ภาษาอื่น ๆ เท่าไหร่ แต่ที่ผมสนใจคือ ความเรียบง่าย และการจัดการที่เป็นระเบียบ มันเรียบง่าย แบบ "Simple is all complexities behind"
มันเป็นระเบียบจนบางคน บอกว่ามันเกินไปด้วย
แต่สำหรับผมที่เคยใช้ C PHP Java ผมคิดว่าสิ่งที่สำคัญของการพัฒนาร่วมกันคือ coding standard ซึ่งถ้าเป็นภาษาอื่น ๆ นั้น เวลาพัฒนาต้องมากำหนดกันให้รัดกุมเลยทีเดียว
อีกสิ่งหนึ่งที่สำคัญคือ Document on Coding หรือไม่ก็คู่มือการใช้งาน เพราะการพัฒนาอะไรขึ้นมานั้น ถ้าหากมีที่ไปที่มาได้แล้ว การดำเนินการต่อโดยตนเองหรือผู้อื่น นั้น ก็จะเป็นอะไรที่ง่ายต่อการเข้าใจได้
เพราะว่าหากเรากำลังพัฒนาอะไรซักอย่าง แล้วสามารถมีคนนำไปใช้ต่อได้นั้น ย่อมเป็นประโยชน์ไม่มากก็น้อย
เมื่อกล่าวถึงตรงนี้ ก็ขอ รวบรวมสิ่งที่ผมได้จากประสบการณ์ในการทำงานพัฒนาระบบ ดังนี้
- กำหนดไปให้แน่นอนเลยว่าเราจะพัฒนาอะไร
- ในสิ่งที่จะพัฒนานั้น สามารถแยกเป็นส่วนย่อย ๆ ได้หรือไม่ ถ้าได้ก็กำหนดให้แต่ละส่วนแยกออกจากกัน และสามารถรวมกันได้ในภายหลัง (http://en.wikipedia.org/wiki/Separation_of_concerns)
- จากส่วนต่างๆ ที่แยกออกมาจากกันนั้น ก็ให้ทำในแต่ละส่วนให้ดีที่สุด
- ถ้าหากในส่วนย่อย ๆ ใดมีคนที่เคยทำไว้แล้ว ให้นำกลับมาใช้ หรือนำมาปรับปรุงให้ดีขึ้น
- กำหนดอายุของระบบที่เราจะพัฒนา เช่น 5 ปี 10 ปี เพราะว่าไม่มีอะไรยืนยาว หรือไม่ก็กำหนดไปเลยว่าเมื่อถึงเวลาที่มีเทคโนโลยีอะไรที่ดีกว่า ก็แนะนำให้ลองเปลี่ยนแปลงดู
- นึกถึงคนอื่นที่ต้องมาสานต่อด้วย
- ทำทุกอย่างให้ง่าย เข้าใจง่าย อ่านง่าย ไว้
และสิ่งที่ผมเขียนไว้ ผมจะลองทำดูกับ django ที่ผมกำลังทำระบบอยู่
ref: http://en.wikipedia.org/wiki/Separation_of_concerns
ไม่มีความคิดเห็น:
แสดงความคิดเห็น