Tags:
Node Thumbnail

ความสามารถเด่น ๆ ในรุ่นนี้ก็คือการเปลี่ยนชนิดข้อมูลแบบ bytes ให้กลายเป็น Immutable แล้วเพิ่มชนิดข้อมูล bytearray ที่เก็บข้อมูลแบบ Mutable ขึ้นมา ถ้านึกภาพของ Immutable/Mutable ไม่ออก ก็ลองนึกถึงชนิดข้อมูลแบบ String กับ StringBuffer ในจาวาดู สรุปง่าย ๆ ก็คือ ข้อมูลแบบ Immutable หลังจากสร้างขึ้นมาแล้วจะไม่สามารถแก้ไขได้ (พูดง่าย ๆ ก็คือไม่มี Setter ให้ใช้) ซึ่งมีประโยชน์มากสำหรับการสร้างข้อมูลที่ถูกใช้จากหลาย ๆ Thread เพราะว่าไม่จำเป็นต้องทำ Thread Synchronization กับข้อมูลแบบก็ได้เนื่องจากข้อมูลมันเปลี่ยนไม่ได้อยู่แล้ว แต่ในขณะเดียวกับ ข้อมูลแบบ Immutable จะมี overhead สูงกว่าถ้าต้องทำการเปลี่ยนแปลง ในจาวาถึงแนะนำให้ใช้ StringBuffer ในการสร้าง ดัดแปลง หรือว่าแก้ไขข้อความ แล้วจึงเปลี่ยนเป็น String ตอนท้ายทีเดียว

ที่มา - Blog ของ BDFL

Get latest news from Blognone