Apache ™ Thrift เป็นโปรแกรมที่สร้างขึ้นจากแพลตฟอร์มการเขียนโปรแกรมเว็บเซิร์ฟเวอร์ Apache ™ มันถูกสร้างขึ้นเพื่อสร้างรหัสและทำงานกับหลายภาษาในครั้งเดียว ซึ่งแตกต่างจากเครื่องกำเนิดไฟฟ้าที่คล้ายกันซึ่งสร้างรหัสที่ไม่จำเป็นหรือมีรอยเท้าหนา Apache ™ Thrift ทำงานเพื่อรวมรหัสที่จำเป็นเท่านั้นจึงโปร่งใส เว็บไซต์ขนาดใหญ่หลายแห่งที่มีความต้องการใช้หลายภาษาใช้บริการ Thrift เนื่องจากจะทำให้โปรแกรมเมอร์ไม่จำเป็นต้องใช้โปรแกรมและไฟล์แยกกัน Thrift สามารถทำงานกับ 14 ภาษาการเข้ารหัสในครั้งเดียวแม้ว่าในขณะที่มันมีประโยชน์มากมายมีบางสิ่งที่ไม่สามารถทำได้
ด้วยแพลตฟอร์ม Apache ™ Thrift โปรแกรมเมอร์ไม่จำเป็นต้องสร้างลูกค้าที่ซับซ้อนตั้งแต่เริ่มต้น แต่โปรแกรมเมอร์เพิ่งเริ่มต้นด้วยการกำหนดประเภทข้อมูลบางอย่าง สำหรับสคริปต์การเข้าสู่ระบบสิ่งนี้อาจรวมถึงคำจำกัดความของชื่อผู้ใช้และรหัสผ่าน
หลังจากกำหนดชนิดข้อมูลแล้วโปรแกรมเมอร์มักจะต้องเริ่มทำงานเพื่อกำหนดเพิ่มเติมและเพิ่มรหัสพื้นที่ขนาดใหญ่ Apache ™ Thrift จะใช้รหัสที่กำหนดและสร้างเป็นภาษาการเขียนโปรแกรมตามที่ต้องการ ตอนนี้โปรแกรมเมอร์เพิ่งดูโค้ดที่สร้างขึ้นและเพิ่มสองสามบรรทัดตรงนี้และตรงนั้นแทนที่จะสร้างจากอะไร
ณ เดือนพฤษภาคม 2554 Apache ™ Thrift สามารถทำงานกับ 14 ภาษาการเข้ารหัสได้ สิ่งเหล่านี้ ได้แก่ : C #, C ++, Java®, Python®, Hypertext Preprocessor (PHP), Erlang, Ruby®, Haskell, Perl®, Cocoa®, Node.js, JavaScript®, OCaml และ Smalltalk สิ่งนี้ทำให้โปรแกรมเมอร์สามารถใช้ภาษาการเข้ารหัสบนเซิร์ฟเวอร์ที่จำเป็นสำหรับโปรแกรมหรือปัญหาที่เฉพาะเจาะจงทั้งหมดนี้อยู่ภายใต้โปรแกรมเดียว ระบบนี้ใช้สำหรับFacebook® แต่กลายเป็นแอปพลิเคชั่นโอเพนซอร์ซในปี 2550
หนึ่งในปัญหาที่ใหญ่ที่สุดโดยเฉพาะอย่างยิ่งสำหรับผู้ใช้ใหม่คือ Apache ™ Thrift ไม่มีเนื้อหาบทเรียนหรือเอกสารประกอบ ซึ่งหมายความว่าโปรแกรมเมอร์จะถูกทิ้งไว้ให้คิดโปรแกรมสำหรับตัวเอง ปัญหานี้ได้รับการแก้ไขโดยเว็บไซต์จำนวนมากที่ให้การสอนและโปรแกรมการเรียนรู้เพื่อให้ผู้ที่เพิ่งเริ่มเรียนรู้ใหม่ได้ง่ายสามารถเรียนรู้วิธีการทำงานของโปรแกรมและวิธีการสร้างรหัสจากแพลตฟอร์ม
การสืบทอดซึ่งทำให้โปรแกรมเมอร์สามารถสร้างวัตถุที่มีคำสั่งหรือคำนิยามที่คล้ายกันโดยไม่ต้องเขียนคำนิยามสำหรับแต่ละวัตถุจะไม่รวมอยู่ในแพลตฟอร์ม Thrift นี่หมายความว่าการเข้ารหัสแบบ polymorphism ไม่ได้รับอนุญาตเช่นกันเพราะสิ่งนี้ขึ้นอยู่กับคุณสมบัติการสืบทอด ไม่สามารถใช้ฟังก์ชัน Null ได้และวิธีการและคอนเทนเนอร์ทั้งหมดต้องมีชื่อเฉพาะแม้ว่าใช้ภาษาการเข้ารหัสที่แตกต่างกัน มิฉะนั้นโปรแกรมสามารถโอเวอร์โหลด


