กลับไปหน้าบทความ

อ่าน 2 นาที

แฟลตบัฟเฟอร์

FlatBuffersเป็นไลบรารีซอฟต์แวร์ฟรี ที่ใช้ รูปแบบ การจัดเก็บข้อมูลแบบอนุกรม (serialization)คล้ายกับProtocol Buffers , Thrift , Apache Avro , SBEและCap'n Protoซึ่งเขียนขึ้นโดย...

แฟลตบัฟเฟอร์

แฟลตบัฟเฟอร์
ผู้เขียนต้นฉบับวูเตอร์ ฟาน ออร์ทเมอร์สเซน
นักพัฒนาเดเร็ก เบลีย์
ปล่อย17 มิถุนายน 2557 [ 1 ] ( 17 มิถุนายน 2014 )
เวอร์ชันเสถียร
25.12.19 [ 2 ] แก้ไขข้อมูลนี้บนวิกิดาต้า / 19 ธันวาคม 2025 ( 19 ธันวาคม 2025 )
เขียนเป็นซี++
ระบบปฏิบัติการแอนดรอยด์ , ไมโครซอฟต์ วินโดวส์ , แมคโอเอสเอ็กซ์ , ลินุกซ์
พิมพ์รูปแบบและไลบรารีการซีเรียลไลซ์ คอมไพเลอร์IDL
ใบอนุญาตใบอนุญาต Apache 2.0
เว็บไซต์flatbuffers.dev
ที่เก็บข้อมูล
  • github.com/google/flatbuffers

FlatBuffersเป็นไลบรารีซอฟต์แวร์ฟรี ที่ใช้ รูปแบบ การจัดเก็บข้อมูลแบบอนุกรม (serialization)คล้ายกับProtocol Buffers , Thrift , Apache Avro , SBEและCap'n Protoซึ่งเขียนขึ้นโดย Wouter van Oortmerssen เป็นหลัก และเปิดให้ใช้งานแบบโอเพนซอร์สโดยGoogleมันรองรับการดีซีเรียไลซ์แบบ "zero-copy" ซึ่งหมายความว่าการเข้าถึงข้อมูลที่จัดเก็บแบบอนุกรมแล้วไม่จำเป็นต้องคัดลอกข้อมูลไปยังส่วนของหน่วยความจำที่แยกต่างหากก่อน ทำให้การเข้าถึงข้อมูลในรูปแบบเหล่านี้เร็วกว่าข้อมูลในรูปแบบที่ต้องประมวลผลมากกว่า เช่นJSON , CSVและในหลายกรณี Protocol Buffers อย่างไรก็ตาม เมื่อเทียบกับรูปแบบการจัดเก็บข้อมูลแบบอนุกรมอื่นๆ การจัดการ FlatBuffers มักต้องการโค้ดมากกว่า และบางการดำเนินการก็ไม่สามารถทำได้ (เช่น การดำเนินการเปลี่ยนแปลงข้อมูลบางอย่าง)

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

FlatBuffers สามารถใช้งานได้ในซอฟต์แวร์ที่เขียนด้วยC++ , C# , C , Go , Java , JavaScript , Kotlin , Lobster, Lua , PHP , Python , Rust , SwiftและTypeScriptคอมไพเลอร์สคีมาทำงานบนAndroid , Microsoft Windows , macOSและLinux [ 3 ] แต่เกมและโปรแกรมอื่นๆ ใช้ FlatBuffers สำหรับงานซีเรียลไลเซชันบนระบบ ปฏิบัติการอื่นๆ อีกมากมาย รวมถึงiOS , Amazon Fire OSและWindows Phone [ 4 ]

เดิมที Van Oortmerssen พัฒนา FlatBuffers สำหรับการพัฒนาเกมและแอปพลิเคชันที่คล้ายกัน[ 5 ] [ 1 ]

แม้ว่า FlatBuffers จะมี ภาษานิยามอินเทอร์เฟซของตัวเองเพื่อกำหนดข้อมูลที่จะถูกทำให้เป็นอนุกรมด้วย แต่ก็ยังรองรับสคีมาที่กำหนดไว้ในรูปแบบ Protocol Buffers .proto ด้วย[ 6 ]

ผู้ใช้

ผู้ใช้งาน FlatBuffers ที่มีชื่อเสียงบางส่วน ได้แก่:

  • Cocos2d-xซึ่งเป็นไลบรารีการเขียนโปรแกรมเกม 2 มิติแบบฟรีซอฟต์แวร์ที่ได้รับความนิยม ใช้ FlatBuffers เพื่อแปลงข้อมูลเกมทั้งหมดเป็นอนุกรม[ 7 ]
  • ไคลเอนต์ Facebook Android ใช้ FlatBuffers สำหรับการจัดเก็บข้อมูลบนดิสก์และการสื่อสารกับเซิร์ฟเวอร์ Facebook รูปแบบ JSON ที่ใช้ก่อนหน้านี้ทำงานได้ไม่ดี[ 8 ]

ดูเพิ่มเติม

ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=FlatBuffers&oldid=1210067210 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ แฟลตบัฟเฟอร์

FlatBuffersเป็นไลบรารีซอฟต์แวร์ฟรี ที่ใช้ รูปแบบ การจัดเก็บข้อมูลแบบอนุกรม (serialization)คล้ายกับProtocol Buffers , Thrift , Apache Avro , SBEและCap'n Protoซึ่งเขียนขึ้นโดย...

ผู้ใช้

ผู้ใช้งาน FlatBuffers ที่มีชื่อเสียงบางส่วน ได้แก่:

ดูเพิ่มเติม

การเปรียบเทียบรูปแบบการจัดเรียงข้อมูล ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=FlatBuffers&oldid=1210067210 "