Versioning services - panupongth148/Project-SW-DEV-TOOLS-AND-ENV-Group4 GitHub Wiki
Semantic versioning
Semantic versionning นั้นเป็นรูปแบบที่จะคุ้นเคยกันมากที่สุดของกลุ่มเราจึ้งได้เลือกรูปแบบนี้มาซึ้งประกอบด้วย
- Major (Breaking change)
- version ของกำหนดเมื่อมีการเปลี่ยนแปลงครั้งใหญ่ ที่ Incompatible กับ version ปัจจุบัน เป็นการเปลี่ยนแปลงครั้งใหญ่ เช่น API ถูกลบไปเลย หรือ เปลี่ยนวิธีการเรียกใหม่
- Minor (Backwords compatible)
- version ของเป็นการเปลี่ยนแปลง หรือเพิ่มสิ่งใหม่เล็กน้อยที่ไม่กระทบของเดิม (Main function) ยังสามารถทำงานร่วมกับของที่มีอยู่ปัจจุบันได้เป็นอย่างดี
- Patch (Big fixed)
- version ของการแก้บั๊ก
ตัวอย่างของ version รูปแบบ Semantic versioning
Node js 16.14.2
ข้อดี
- เข้าใจง่ายต่อผู้พัฒนาและ user
- มีรูปแบบที่เรียบง่าย และรูปแบบที่แทบจะครอบคลุมการพัฒนา
- ช่วยให้รู้ว่าควรจะตัดสินใจในการใช้ version ของ application ต่อ user เช่นการที่จะอัพเดตหรือไม่หาก เลข patch เป็น 0 อยู่ซึ่งอาจจะมีบัคได้
ข้อเสีย
- หากว่าบาง application นั้นมีรายละเอียดที่มากกว่านี้นั้นการกำหนดรูปแบบนี้นั้นจะไม่ครอบคลุมและทำให้ต้องมีเอกสารเพิ่มเติม หากต้องทำการชี้แจงข้อมูลทั้งหมด
- หากมีคนไหนไม่เข้าใจระบบจะทำให้เกิดข้อผิดพลาดอย่างใหญ่หลวงต่อ application ได้