ความแตกต่างระหว่างio.jsและnode.jsคืออะไร? ล่าสุดio.jsถูกแยกออกจากnode.jsกันและยังสร้างขึ้นโดยคนกลุ่มเดียวกันกับที่สร้างnode.jsขึ้น
อะไรคือความแตกต่างที่สำคัญที่นำไปสู่ทางแยกนี้และโดยรวมหมายความว่าอย่างไรสำหรับชุมชน node.js
ความแตกต่างระหว่างio.jsและnode.jsคืออะไร? ล่าสุดio.jsถูกแยกออกจากnode.jsกันและยังสร้างขึ้นโดยคนกลุ่มเดียวกันกับที่สร้างnode.jsขึ้น
อะไรคือความแตกต่างที่สำคัญที่นำไปสู่ทางแยกนี้และโดยรวมหมายความว่าอย่างไรสำหรับชุมชน node.js
คำตอบ:
อะไรคือความแตกต่าง?
io.js:
พื้นที่เก็บข้อมูลนี้เริ่มต้นจาก GitHub fork ของ joyent / node ที่การมีส่วนร่วมการเผยแพร่และการมีส่วนร่วมอยู่ภายใต้รูปแบบการกำกับดูแลแบบเปิด
เราตั้งใจที่จะลงจอดด้วยความสม่ำเสมอที่เพิ่มขึ้นการเผยแพร่ที่เข้ากันได้กับระบบนิเวศ npm ที่สร้างขึ้นจนถึงปัจจุบันสำหรับ node.js
Node.js:
Node.jsโดยหลักแล้วแบ่งออกด้วยเหตุผล 3 ประการ ได้แก่ การเผยแพร่ที่เร็วขึ้นมีการใช้งานมากขึ้นและการพัฒนาไปสู่การ1.0.0เผยแพร่เพื่อการพัฒนาที่ขับเคลื่อนโดยชุมชนมากกว่าคณะกรรมการที่ปรึกษาและการใช้ semver สำหรับการเผยแพร่
คณะกรรมการที่ปรึกษาเป็นแผนการของ Joyent ที่จะทำให้ Node.js เป็นวิธีที่รวมศูนย์มากขึ้นและเร็วขึ้นในการวางแผนการพัฒนาและวางแผนคุณลักษณะต่างๆในอนาคตไปสู่การ1.0.0เปิดตัว สิ่งนี้ถูกวางแผนให้ทำโดยการรวบรวมคณะกรรมการของ บริษัท ขนาดใหญ่ที่ใช้ Node.js
อ้างจากบล็อกของ Joyent:
เมื่อชุมชนมีความซับซ้อนมากขึ้นสิ่งสำคัญคือเราต้องหาวิธีที่จะสร้างความสมดุลระหว่างความต้องการของทุกองค์ประกอบและจัดเตรียมแพลตฟอร์มสำหรับองค์กรเหล่านี้ในการรวมตัวกันและให้ข้อมูลเข้าในโครงการ
ก่อนหน้านี้ Node.js ถูกเรียกใช้ผ่านรายชื่อส่งเมลปัญหา GitHub และทุกคนสามารถมีส่วนร่วมในแนวคิดของตนได้ ความคิดนี้เริ่มได้รับความเกลียดชังเพราะมันทำให้การควบคุมออกไปจากค่าเฉลี่ยส่วนร่วมในชีวิตประจำวันของคุณและย้ายไฟเข้ากับ "ภาพใหญ่": บริษัท เช่นWalmart , Yahoo , IBM , Microsoft , Joyent , NetflixและPayPal
ในความเป็นจริงมีความแตกต่างในทางปฏิบัติระหว่างNode.jsและio.js คำตอบอื่นลืมข้อเท็จจริงบางประการ:
ทำไม? เนื่องจาก io.js 1.6.2 มาพร้อมกับ Google V8 4.1.0.25 และ Node.js 0.12.1 มาพร้อมกับ V8 3.28.73 นอกจากนี้แฟล็กสำหรับ ECMAScript 6 ยังแตกต่างกันระหว่าง Node.js และ io.js คู่มือ io.js เพื่อ ECMAScript 6 ธงสามารถพบได้ที่นี่
เว็บไซต์ io.js ระบุว่า : "io.js เป็นแพลตฟอร์มจาวาสคริปต์ที่เข้ากันได้กับโหนดและ npm" เป็นชุดเครื่องมือ (รันไทม์ / VM ตัวจัดการแพ็คเกจ ฯลฯ ) ซึ่งเข้ากันได้กับสิ่งที่มีอยู่ในปัจจุบันเป็นโหนด ความแตกต่างใด ๆ ที่น่าจะเกิดขึ้นในการนำไปใช้งานและส่วนขยายใด ๆ ที่ io.js เพิ่มนอกเหนือจากชุดคุณลักษณะ node.js
(ทำไมสิ่งที่เข้ากันได้กับสิ่งที่มีอยู่แล้วทำให้ชุมชนแตกแยกทำไมถึงเป็นเรื่องเลวร้าย?)
โปรดทราบว่า io.js ยังไม่ได้เปิดตัว! อย่างไรก็ตามแผนงาน io.jsแสดงให้เห็นความแตกต่างที่เกี่ยวข้องโดยเฉพาะบางอย่างระหว่างโหนดและ io
ตามที่ฉันเข้าใจแล้ว io.js คือ 1.0-alpha1 และโหนดในอนาคต แต่มี:
io.js เป็นทางแยกของ node.js แต่ตอนนี้ io.js และ node.js ทำงานร่วมกันอีกครั้ง นั่นคือสาเหตุที่ node.js กระโดดจาก 0.12.x โดยตรงไปที่ 4.0.0 เนื่องจาก node.js เวอร์ชัน 4.0.0 รวมการอัปเดตที่สำคัญทั้งหมดจาก io.js เวอร์ชัน 3.0.0