Patch+ความหมายตัวเลขversion software

posted on 06 Oct 2013 19:34 by r-tech directory Tech, Knowledge, Idea
  
  
หายตัวไปนานเลยเดือนอีกค่ะคราวนี้ Foot in mouth
  
อย่างที่บอกไป สาเหตุคือ...สอบค่ะTongue out 
  
เพิ่งจะปิดเทอมมาได้ไม่กี่วันเองค่ะ
  
แล้วก็โดนตามไปทำงานต่อFoot in mouth
  
  
  
เข้าเรื่องดีกว่าค่ะ
  
สาเหตุที่หาข้อมูลเรื่องนี้คือเพื่อนมาถามว่า

patch คืออะไร คือเพื่อนคนนั้นก็รู้จักกันล่ะค่ะ
  
แต่พอให้นิยามให้ฟังก็บอกไม่ถูกFoot in mouth
  
ไหนๆก็ไหนๆ ร่ายยาวซะหน่อยเลย
  
(แต่เหมือนจะไม่ยาวมากแฮะ...Kiss)
  
  


Patch
 

 -

-

  

Patch (แพตช์) ในทางคอมพิวเตอร์คือโปรแกรม

ที่ใช้ซ่อมแซมจุดบกพร่องของโปรแกรมคอมพิวเตอร์
 

หรือปรับปรุงข้อมูลสำหรับโปรแกรมให้ทันสมัย
 
และเพิ่มเติมความสามารถในการใช้งานหรือประสิทธิภาพให้ดีขึ้น


โปรแกรมคอมพิวเตอร์ส่วนใหญ่มักจะมีข้อบกพร่อง

ที่บางครั้งตรวจไม่พบในขณะที่เขียน
 
แต่ไปพบภายหลังการออกจำหน่าย
 
รวมถึงบางครั้งตัวโปรแกรมก็จำเป็นที่จะต้องมีข้อมูลที่ทันสมัย
  
อยู่ตลอดเวลาเช่นโปรแกรมป้องกันไวรัส

 

 

สำหรับระบบปฏิบัติการในปัจจุบัน
 
จะมีระบบอัปเดตอัตโนมัติซึ่งจะทำการโหลดแพตช์
  
จากเว็บไซต์โดยตรง(ถ้ามีการเชื่อมต่อกับอินเทอร์เน็ต)
 
เพื่อใช้แพตช์ซ่อมแซมจุดบกพร่องและอุดช่องโหว่
  
ที่อาจส่งผลต่อความปลอดภัย
 

ในกรณีของโปรแกรมป้องกันไวรัส และ
 

โปรแกรมป้องกันสปายแวร์ การอัปเดตมีความสำคัญมาก
 
เพราะในการตรวจหาและกำจัดไวรัสคอมพิวเตอร์นั้น
  
จำเป็นต้องพึ่ง Virus Signature ในการทำงาน
  
ซึ่งแน่นอนว่ามีไวรัสใหม่เพิ่มขึ้นทุกวัน
 
หากไม่มีการอัปเดตแล้ว ตัวโปรแกรมจะ
  
ไม่สามารถตรวจพบไวรัสใหม่ ๆ ได้
 


 
อันนี้แถมค่ะ Cool

  

ความหมายตัวเลขใน version software


-
  
-


มาตรฐานโดยปกติ จะเขียน X.Y.Z โดยต้องไม่เป็นเลขติดลบ

 

X คือ version หลัก (majorversion)

 

เลขหลักของโปรแกรม และใช้เป็นตัวเลขทางการค้า

เลขนี้จะบอกถึงตัวโปรแกรมว่า มี Featureใหม่ๆ
  
เพิ่มเข้ามามากมายจาก version ที่แล้ว
  
เพิ่มเมื่อมีการทำ version ใหม่ที่ไม่สามารถใช้งานร่วม
  
กับ versionเก่าได้ โดยอาจจะรวม minor ,patch มาพร้อมกันเลย
 
แต่ว่า ทั้ง minor , patch จะต้องเริ่ม reset ไปที่ 0 ก่อนเสมอ



Y คือ version ย่อย (minor version)

 

เลขขยายของ versionหลัก หรือเรียกอีกอย่างว่า Version รอง
 

เลขนี้มีความหมายว่า ได้มีการเพิ่มความสารถใหม่ๆ เพิ่มเข้ามา
 
ทั้งที่เรามองเห็น(สามารถสั่งใช้งานได้จาก menu) หรือไม่สามารถมองเห็น
 
(ทำงานอัตโนมัติ/background) แต่ไม่มากพอที่จะเปลี่ยนไปเป็น
  
Versionใหม่ได้ และยังทำงานร่วมกับ version ก่อนหน้า
 
หรือปัจจุบัน ที่กำลังใช้งานอยู่ได้ หรือว่า กรณีที่ปิดบาง function ออกไป
 
หรือว่า การเพิ่ม function การทำงานใหม่ หรืออาจจะรวมการเพิ่มของ
path version เข้ามาเลย แต่ว่า การเพิ่ม minor version
 
จะต้องเริ่ม reset patch version ไปที่0 ก่อนเสมอ
 

Z คือ version ปรับปรุง(patch version)

 

ส่วนเพิ่มเติมของ version หลัก/รอง เลขชุดนี้มีความหมายว่า

ได้มีการปรับปรุง/เพิ่มไฟล์บางไฟล์ให้กับโปรแกรม เพื่อให้โปรแกรมเสถียรมากขึ้น
(ไม่ได้มีการเพิ่มคุณสมบัติใหม่แต่อย่างใด) บอกถึงการเปลี่ยนแปลงที่เกิดขึ้นได้ทั้ง
version หลัก และ Version รอง เพิ่มเมื่อมีการแก้ไขแบบที่ยังใช้งานร่วมกับ
version ก่อนหน้า หรือ ปัจจุบัน ที่กำลังใช้งานอยู่ได้ หรือ
การแก้ไขบางจุด ที่ทำงานผิดปกติ หรือผลลัพธ์เพี้ยนๆไป
 


โดยจะต้องใช้การเพิ่มค่าที่ละ 1 เช่น 1.9.0 > 1.10.0 > 1.11.0

 

 

Major version ที่เป็น 0 (เช่น 0.y.z) แปลว่า อยู่ในช่วงการพัฒนา

ทุกสิ่งอย่างสามารถเพิ่มขึ้นมา หรืออยู่ดีๆหายไปก็ได้ เป็นอันรู้กันว่า
ยังไม่เหมาะกับงานที่ซีเรียสมากๆ
 

Pre-release version อาจจะใช้เครื่องหมาย dash

แล้ว identifiers  แล้วตามด้วย dot คั่นใน series นั้นๆได้
 
โดยตัวที่ identifiers จะรันด้วยตัวหนังสือใน ASCII  และ dashเท่านั้น
 
 [0-9,A-Z,a-z,-] 
 
ตัวอย่าง 1.0.0-alpha, 1.0.0-alpha.1, 1.0.0-0.3.7,1.0.0-x.7.z.92


Build version อาจจะใช้เครื่องหมาย + แล้ว identifiers

แล้วตามด้วย dot คั่นใน series นั้นๆได้
 
โดยที่ตัว identifiers จะรันด้วยตัวหนังสือใน ASCII  และ dash เท่านั้น
 
[0-9A-Za-z-] 
 
ตัวอย่าง 1.0.0+build.1,1.3.7+build.11.e0f985a
 

การเรียงลำดับ version จะต้องคำนวณตามลำดับดังนี้ major, minor ,patch, pre-release

และ build เอง ก็จะมีการเรียงลำดับได้อีก ดังนี้ major,
 
minor , patch โดยอาศัยการเรียงค่ามากกว่าน้อยกว่า สำหรับการใช้ identifiers
 
ก็จะเรียงตามลำดับของตัวหนังสือ และจะถือว่า
 
ตัวหนังสือมีลำดับที่สำคัญกว่าตัวเลข
 
เช่น 1.0.0-alpha < 1.0.0.-alpha.1 < 1.0.0-beta.2 < 1.0.0-beta.11
 
< 1.0.0-rc.1 < 1.0.0-rc.1+build.1 < 1.0.0 < 1.0.0+0.3.7
 
< 1.3.7+build < 1.3.7+build.2.b8f12d7 <1.3.7+build.11.e0f985a
 
  
ชื่อยาวๆ แอบตาลายค่ะ Foot in mouth
 
มาดูตัวอย่างกันค่ะ
 
-
-
 
ver 8.2.0.1669
 
8 คือ major version
 

2 คือ minor version
 

0 คือ patch version
 


1669 คือ เลขที่บอกว่าได้มีการแก้ไข bug
 
ที่เกิดขึ้นก่อนหน้านั้นเป็นที่เรียบร้อยแล้ว
 
เลขยิ่งมากแสดงว่ามีการแก้ bug มาก ครั้ง/จุด เช่นกัน
 
และจะมีการนับใหม่ เมื่อ version หลัก หรือ version รองมีการเปลี่ยนแปลง
 
บางโปรแกรมจะใช้ชื่อแทนตัวเลขว่า “Build X”



อ้างอิง :

http://th.wikipedia.org/wiki/แพตช์

 
 
แถมอีก(ไถ่โทษ ดองมานานค่ะEmbarassed)

* Alpha

   ตามหลักของวิศวกรรมซอฟต์แวร์แล้ว
  
   เวอร์ชัน Alpha คือเวอร์ชันที่ทดสอบกัน
 
   ในทีมพัฒนาซอฟต์แวร์ เอากันจนเวิร์กระดับหนึ่ง
 
   (อาจจะยังไม่ค่อยเสถียรนัก) แล้วค่อยปล่อย
 
   เวอร์ชัน Betaออกมา
 

* Beta

   รุ่นที่ปล่อยให้ผู้ใช้งานได้ดาวน์โหลด ร่วมกันทดสอบบั๊ก
 
   ซึ่งเวอร์ชันนี้จะดาวน์โหลดมาเล่นก่อน
  
แล้วรายงานผลการใช้งาน ส่งบั๊กกลับไปให้
 
   ทีมพัฒนาซอฟต์แวร์ปรับปรุงอีกครั้ง
 
 
 
* RC (Release Candidate)
 
   รุ่นนี้จะเป็นรุ่นที่ทดสอบแก้ไขกันไปจนกระทั่งบั๊กตัวใหญ่ๆ
  
   หายไปเกลี้ยงแล้วค่อยปล่อยดาวน์โหลด ซึ่งจะเป็นเวอร์ชัน Final
 
   (ในภาษาวิชาการบางทีเรียกว่า Gamma Testing)
 

* RTM ( Refer To Manufacturing)

   เวอร์ชันที่พร้อมผลิตและจัดจำหน่าย
   ปั๊มเข้ากล่องมาขายให้พวกเรากันแล้ว
 
   อาทิ Micrsoft Windows Vista 32/64bit
   Final RTM Build 6000
   ซึ่งถ้าเห็นเวอร์ชันแบบนี้นั่นแสดงว่าปลอดบั๊กแล้ว
 
   เป็นรุ่นน่าใช้งานที่สุด
 

* Build

   คือรุ่นที่กำลังพัฒนาบั๊กอื้อซ่า เป็นรุ่นทดลองใช้งาน
 
   ตามด้วยโค้ดเนมที่เป็นหมายเลข แต่อยากดันปล่อยให้ทดสอบ
  
   ซึ่งก็จะได้แก่ เวอร์ชัน Beta 1, Beta 2, RC 1, RC 2
 
   แล้วแจ้งบั๊กรายงาน


* Demo

   รุ่นที่สมบูรณ์แล้วตัดฟังก์ชันการใช้งานบ้างอย่างออกไป
 
  เพื่อป้องกันแฮกเกอร์ถอดรหัส หรือทำการ Crack เพื่อให้
 
   ได้งานอย่างสมบูรณ์และสามารถทดสอบใช้งาน
 
   ถ้าพึงพอใจก็ลงทะเบียนซื้อมาใช้งานก็จะได้ฟังก์ชันเต็มครบทุกอย่าง


 * Trial

   รุ่นนี้ก็เป็นรุ่นที่สมบูรณ์เช่นกันแต่ให้ทดลองใช้งาน
 
   7 วัน แล้วก็จะให้ลงทะเบียน หรือใส่ Serial Number
 
   ถึงจะเข้าใช้โปรแกรมได้
 

* Shareware

   เป็นรุ่นทดลองใช้งานเหมือนกัน
 
   สมบูรณ์แล้ว แต่ใช้งานได้แค่ 30 วันก็จะฟ้องวันหมดอายุ
 

* Freeware

   รุ่นที่พัฒนาไม่เห็นแก่ส่วนตัว บริจาคให้ใช้งานฟรี ไม่คิดเงิน
 
   แต่สามารถบริจาคเงิน เพื่อพัฒนาต่อยอดให้ดีขึ้น


ที่มา : http://group.wunjun.com/whateverzone/topic/267531-7355

 
ภาพจาก :

http://www.faronics.com/en-uk/news/blog/more-browser-holes-to-patch%E2%80%94update-firefox-6-0-6/

 

http://neurogadget.com/2012/03/22/emotiv-and-neurosky-update-developer-tools-more-mind-controlled-apple-devices-anticipated/3728

 

http://www.hdwallpaperstop.com/wp-content/uploads/2013/02/Digital-Number-Wallpaper.jpg 

 

 

 

 

ขอบคุณที่อ่านจนจบค่ะ Cool

พวก version โปรแกรมยาวๆอ่านแล้วตาล่ยค่ะ Foot in mouth
 
ปิดเทอมแล้ว แต่งานยังเยอะอยู่เลย Tongue out 
 
อาจมีการอู้อัพบล็อกเล็กน้อย ขออภัยนะคะ Tongue out
 
ปล. entry นี้ทำไว้ตั้งแต่ประมาณสัปดาห์ที่แล้ว แต่เนื่องจากปัญหาเสถียรภาพ
ของเน็ตเลยยังไม่ได้อัพค่ะ Foot in mouth

 

 

 

 

 
 

edit @ 13 Jan 2014 19:36:30 by R-Tech

Comment

Comment:

Tweet

@piyanar  ขอบคุณค่ะbig smile

#8 By R-Tech on 2013-12-30 15:18

แหม มาให้ข้อมูลดี ๆ
Hot!

#7 By ปิยะ99 on 2013-10-27 19:43

@niishini  ขอบคุณค่ะbig smile
@nights-7  อาจจะเป็นเหตุผลทางด้านการค้านะคะsad smile
@weerapat2000  รู้จักชื่อพวกนี้ครั้งแรกๆก็จากเกมเหมือนกันค่ะquestion
@nirankas ขอบคุณค่ะbig smile
@mika-chai ขอบคุณค่ะconfused smile

#6 By R-Tech on 2013-10-26 15:55

ความรู้ๆHot! confused smile

#5 By Chai on 2013-10-22 16:34

เออ เจอบ่อยๆ แต่ไม่เคยรู้ความหมายเลย
ดีจุง
( Hot! Hot! )

#4 By Nirankas on 2013-10-18 07:37

alpha,beta,demoเจอบ่อยมากตอนเล่นเกมส่วนversionกับตัวอื่นก็เพิ่งรู้เนี่ยละครับconfused smileHot!

#3 By weerapat2000 on 2013-10-15 12:12

ทำไมไม่มีอัพ Patch Window มั่งนะ sad smile  เวลามี Window ใหม่ๆมา จะได้ไม่ต้องไปลงใหม่Hot!

#2 By NiGHTSSE7EN on 2013-10-12 16:49

เพิ่งรู้ว่าเลขที่เป็นเวอร์ชั่นของโปรแกรมมีความหมายอย่างไงแฮะ confused smile Hot!

#1 By 121 on 2013-10-12 15:16