การอภิปรายกรอบงาน JavaScript Core ของ WordPress ร้อนขึ้น ผู้ร่วมให้ข้อมูลจำกัดการอภิปรายเพื่อตอบโต้กับ Vue

เผยแพร่แล้ว: 2017-05-31
เครดิตภาพ: oskay Small Parts – (ใบอนุญาต)

ผู้ร่วมให้ข้อมูลหลักของ WordPress ได้พบกันเมื่อเช้านี้เพื่อหารือเกี่ยวกับการเลือกเฟรมเวิร์ก JavaScript ใหม่เพื่อใช้กับคุณสมบัติหลักใหม่ การอภิปรายเกี่ยวกับโพสต์ Make/Core เข้มข้นขึ้นในช่วงสุดสัปดาห์ โดยมีผู้เสนอ Vue.js แสดงความคิดเห็นเพื่อเพิ่มความคิดเห็น

Adam Silverstein และ Andrew Duthie อำนวยความสะดวกในการประชุมเมื่อเช้านี้ และเริ่มโดยเปิดการอภิปรายเพื่อรวมกรอบการทำงานอื่นๆ เช่น Preact, Angular และ Ember อย่างไรก็ตาม การสนทนาแคบลงอย่างรวดเร็วที่ React vs Vue

Silverstein สนับสนุนให้ผู้เข้าร่วมจำไว้ว่าเฟรมเวิร์กใหม่นี้มีไว้สำหรับใช้กับคุณสมบัติใหม่ เช่น ตัวแก้ไขใหม่ และพวกเขาจะใช้ Backbone ต่อไปเมื่อเป็นเครื่องมือที่เหมาะสม เช่นเดียวกับใน JavaScript ที่มีอยู่ เขายังเน้นว่าการอภิปรายเกี่ยวข้องกับเฟรมเวิร์กสำหรับคอร์และนักพัฒนาสามารถใช้เฟรมเวิร์กใดก็ได้ที่พวกเขาเลือกเพื่อสร้างปลั๊กอินหรือธีม

ผู้เสนอ Vue.js พิจารณาว่า “ความง่ายในการเรียนรู้” เป็นปัจจัยสำคัญในการเลือกกรอบการทำงานใหม่

ความง่ายในการเรียนรู้ไม่ได้อยู่ในเกณฑ์ที่กำหนดสำหรับการเลือกกรอบงานใหม่ แต่เป็นหนึ่งในข้อกังวลหลักสำหรับผู้เสนอ Vue.js

Justin Kopepasah กล่าวว่า "Vue สามารถทำทุกอย่างที่ React ทำได้และเข้าถึงได้ง่ายขึ้นมาก" “มีการนำ Vue มาใช้อย่างมาก และการเติบโตก็ไม่แสดงอาการใดๆ ว่าจะหยุด กรอบงานโอเพ่นซอร์สชั้นนำบางส่วนได้นำ Vue มาใช้ และมีการใช้โดยบริษัทเทคโนโลยีชั้นนำสามอันดับแรกในจีน (รวมถึงอาลีบาบาด้วย) แม้ว่าฉันจะเห็นด้วยว่า React ก็เป็นตัวเลือกที่ดีเช่นกัน แต่นักพัฒนาใหม่ไม่สามารถเข้าถึงได้มากนักและมี Facebook อยู่เบื้องหลัง ซึ่งอาจทำให้ผู้คนตื่นตระหนกในหลายๆ ด้าน (ไม่ใช่แค่เทคโนโลยี)”

Justin Tadlock ผู้สนับสนุนหลักซึ่งมีรหัสและบทช่วยสอนช่วยนักพัฒนาหลายคนในการเรียนรู้ WordPress ได้แบ่งปันความคิดที่คล้ายกันในช่วงสุดสัปดาห์ในโพสต์ Mare/Core:

ฉันได้ลอง React มาบ้างแล้ว แม้จะมีประสบการณ์ด้านการเขียนโปรแกรมมากกว่า 10 ปี แต่ก็เป็นเรื่องยากสำหรับฉัน ฉันนึกภาพไม่ออกเลยว่าจะลองเรียนรู้ในฐานะคนใหม่ๆ ในการพัฒนา WP

Vue นั้นง่ายมากในการเริ่มเรียนรู้ ฉันมีแอพเล็ก ๆ พร้อมใช้งานในไม่กี่นาที ในเวลาไม่กี่ชั่วโมง ฉันกำลังสร้างสิ่งที่เจ๋งๆ เกี่ยวกับรูปแบบโดยไม่ต้องใช้เอกสาร

ถ้ามันขึ้นอยู่กับฉันทั้งหมด ฉันจะผลักดันให้ WP สร้างเฟรมเวิร์ก JS ของตัวเองเพื่อแก้ปัญหาเฉพาะของ WordPress แต่ถ้าเราจะเลือกเฟรมเวิร์กที่มีอยู่ ให้ไปกับ Vue

Matias Ventura วิศวกร Automattic และผู้มีส่วนร่วมในโครงการ Calypso และ Gutenberg เป็นผู้เสนอ WordPress ที่นำ React มาใช้ เขาโต้แย้งว่าการพิจารณาว่าสิ่งใดง่ายกว่าที่จะเรียนรู้นั้นเป็นประเด็นที่ไม่ถูกต้องในการพิจารณาว่าอินเทอร์เฟซในอนาคตของ WordPress นั้นต้องการอะไร

"ในความเห็นของฉัน แทนที่จะ 'ง่ายต่อการเริ่มต้น' เราต้องดูกระบวนทัศน์การเขียนโปรแกรมที่มีประสิทธิภาพและวิธีการที่แสดงออกถึงอินเทอร์เฟซการเข้ารหัส" เวนทูรากล่าว “นี่คือสิ่งที่ผมใช้โดยพื้นฐานจาก 'เรียนรู้ JavaScript อย่างลึกซึ้ง' ของ Matt ซึ่งเป็นผลสืบเนื่องที่ WordPress กลายเป็นแพลตฟอร์มสำหรับการสอน JavaScript ให้กับโปรแกรมเมอร์ใหม่ และเราจำเป็นต้องดำเนินการอย่างจริงจัง ไม่ใช่แค่เพื่อความสะดวกในระยะสั้นเท่านั้น ”

Ventura ยังตั้งข้อสังเกตอีกว่า WordPress ไม่เคยประสบความสำเร็จในการดึงดูดนักพัฒนา JavaScript และอินเทอร์เฟซ JS ในคอร์ที่ขาดผู้สนับสนุนเมื่อเปรียบเทียบกับฝั่ง PHP

"เรามีโอกาสที่จะทำให้การพัฒนา WordPress น่าสนใจยิ่งขึ้นสำหรับนักพัฒนารุ่นใหม่ที่เรียนรู้วิธีเขียนโค้ดผ่าน JavaScript" Ventura กล่าว เขาสนับสนุนให้ผู้เข้าร่วมคนอื่นๆ ตรวจสอบประเภทของอินเทอร์เฟซที่ WordPress จำเป็นต้องปรับปรุง และเลือกกรอบงานที่ดีที่สุดสำหรับการจัดการในส่วนหลัก

“ 'ง่ายต่อการเริ่มต้น' [อาร์กิวเมนต์] ดูเหมือนจะเข้าใจผิดกับฉันเล็กน้อย” เวนทูรากล่าว “ง่ายกว่าสำหรับใคร? การเรียนรู้ JavaScript อย่างถูกต้องมีค่าใช้จ่ายเท่าใด ความต้องการของอินเทอร์เฟซที่หลากหลายในเว็บแอปพลิเคชันจำเป็นต้องมีความเข้าใจอย่างลึกซึ้งถึงเทคโนโลยีที่ใช้ นั่นไม่ใช่สิ่งที่เราสามารถหลีกเลี่ยงได้ จาวาสคริปต์ไม่สามารถถูกมองว่าเป็นเพียงการเพิ่มประสิทธิภาพแบบก้าวหน้าอีกต่อไป เนื่องจากเป็นภาษาที่แสดงอินเทอร์เฟซที่ทันสมัย”

ผู้ร่วมให้ข้อมูลกังวลเกี่ยวกับ React ที่ได้รับการสนับสนุนจาก Facebook

ในขณะนี้ React เป็นที่ยอมรับและนำไปใช้กันอย่างแพร่หลายมากกว่า Vue แต่ผู้มีส่วนร่วมมีความกังวลเกี่ยวกับเฟรมเวิร์กที่ได้รับการสนับสนุนและอนุญาตจาก Facebook นอกเหนือจากความกังวลเกี่ยวกับการตีความการมอบสิทธิบัตรเพิ่มเติมของ React แล้ว บริษัทยังเป็นที่มาของข้อโต้แย้งมากมายเกี่ยวกับการเซ็นเซอร์ การขุดข้อมูล และความเป็นส่วนตัว รวมถึงประเด็นอื่นๆ ฝ่ายตรงข้ามไม่ต้องการเห็น WordPress ผูกปมเกวียนกับ Facebook โดยใช้ React ในคอร์

Justin Kopepasah กล่าวว่า "การนำ React มาใช้เป็นมากกว่าการเพิ่มไลบรารี่ใน WordPress: เป็นการเพิ่มวัฒนธรรม การดำเนินธุรกิจ และโค้ดเบสที่นำโดยยักษ์ใหญ่ด้านเทคโนโลยี" Justin Kopepasah กล่าว “ถ้าเรารวม React ใน Core ในลักษณะที่เรากำลังขอให้ผู้ใช้ (จากเจ้าของไซต์เดียวไปจนถึงองค์กร) ยอมรับว่า Facebook มีบทบาทสำคัญในอนาคตของ WordPress ฉันมีข้อสงสัยเล็กน้อยว่าสิ่งนี้จะทำให้บางบริษัทหยุดพิจารณาที่จะนำ WordPress มาใช้”

อย่างไรก็ตาม ผู้ร่วมให้ข้อมูลรายอื่นมีความกังวลเกี่ยวกับอายุขัยของ Vue.js เพราะมันขึ้นอยู่กับผู้สร้าง Evan You เป็นอย่างมาก คุณให้เงินสนับสนุนความพยายามของเขาใน Patreon แต่โครงการนี้ไม่ได้รับการสนับสนุนจากองค์กรรายใหญ่

Ryan McCue หัวหน้าร่วมของ React และ WP REST API กล่าวว่า "ฉันรู้สึกไม่สบายใจที่ต้องอาศัยโครงการที่ดำเนินการโดยบุคคลเพียงคนเดียวที่อาจหายไปได้ “การดำเนินการโดยบริษัทที่มีส่วนได้ส่วนเสียในเกมหมายถึงการสนับสนุนในระยะยาวและความมั่นคงที่สัมพันธ์กัน” McCue ยังตั้งข้อสังเกตอีกว่า React มี "ชุมชนขนาดใหญ่ของการสอนและการสนับสนุนสำหรับผู้คนในการเรียนรู้"

หลายคนรู้สึกว่า WordPress กำลังเลือก React เนื่องจาก JS Framework ใหม่เป็นข้อสรุปมาก่อน

แม้จะมีการอภิปรายทั้งหมดในการประชุมและในโพสต์ Make/Core ผู้ชมและสมาชิกในชุมชนจำนวนมากเชื่อว่า WordPress การเลือก React เป็นข้อสรุปที่มาก่อน ในตอนต้นของการสนทนาเมื่อสัปดาห์ที่แล้ว ดูเหมือนว่าผู้สนับสนุนหลักส่วนใหญ่เห็นด้วยกับ React แต่กลุ่มผู้สนับสนุน Vue ที่เข้มแข็งกลับกลายเป็นเพิ่มความคิดเห็นในการสนทนา

การเลือก React ดูเหมือนจะเป็นทางเลือกเดียวที่ทำงานได้เมื่อเกณฑ์ตั้งแต่เริ่มต้นรวมถึงรายการต่างๆ เช่น “พิสูจน์แล้วในบริบทของ WordPress” และ “สอดคล้องกับ Calypso” หลายคนแสดงความคิดเห็นว่าเกณฑ์นั้นมีความลำเอียง และพวกเขาถือว่าการตัดสินใจนั้นได้ทำไปแล้วผ่านช่องทางด้านหลังด้วยการอภิปรายสาธารณะที่จัดขึ้นสำหรับ "เลนส์" วิศวกรอัตโนมัติ James Nylen แสดงความคิดเห็นเมื่อสัปดาห์ที่แล้วเกี่ยวกับตั๋วเปิดสำหรับโครงการ Gutenberg โดยกล่าวว่า "จากการสนทนาล่าสุดใน core Slack นั้น WP core ได้ตัดสินใจนำ React มาใช้โดยพื้นฐานแล้ว"

“ถ้านี่เป็นการพูดคุยของชุมชนจริงๆ แล้วทำไมมันถึงเกิดขึ้นตอนนี้ล่ะ” นักพัฒนา WordPress Christopher A. แสดงความคิดเห็นในโพสต์ล่าสุดของเราที่สรุปการสนทนาครั้งแรก “การเลือกกรอบมุมมองควรเกิดขึ้นก่อนที่บรรทัดแรกของ Gutenberg จะถูกเขียนขึ้น เป็นที่ทราบกันดีอยู่แล้วว่าจำเป็นต้องมีกรอบงานการดู มันเป็นความปรารถนาของ Matt ที่จะเอามันออกจากพื้นโดยเร็วที่สุด วิธีที่ดีที่สุดในการบรรลุสิ่งนี้คือการใช้นักพัฒนา Automattic ที่มีประสบการณ์กับ React”

WordPress กำลังเลือกเฟรมเวิร์ก JavaScript ในขณะที่เฟรมเวิร์กมีการพัฒนาอย่างรวดเร็ว แต่ผู้มีส่วนร่วมในการตัดสินใจกล่าวว่าพวกเขาจะรักษาความสามารถสำหรับนักพัฒนาธีมและปลั๊กอินเพื่อใช้เฟรมเวิร์กที่พวกเขาเลือกเพื่อสร้างผลิตภัณฑ์ของตน ไม่มีการเลือกกรอบการทำงานในระหว่างการประชุมวันนี้ และ Andrew Duthie กล่าวว่าเขาคาดว่าการสนทนาจะดำเนินต่อไปในการประชุมสุดยอดผู้ร่วมให้ข้อมูลของ WordCamp Europe

“สำหรับ React vs Vue (เทียบกับ Angular vs …) เราได้พูดคุยถึงข้อโต้แย้งของแต่ละรายการในการแชทรายสัปดาห์ และเรากำลังตั้งใจให้มันช้าลง” Ryan McCue กล่าว “เกณฑ์หลักที่เราได้เลือกมาจากสิ่งที่โครงการต้องการ และไม่ได้มีจุดมุ่งหมายเพื่อให้เกิดอคติในการตัดสินใจในทิศทางที่เฉพาะเจาะจง Calypso และโครงการอื่น ๆ เป็นสัญญาณที่ชัดเจนต่อ React แต่ก็ไม่ใช่ข้อโต้แย้งสุดท้าย (ถ้าเป็นเช่นนั้นเราจะไม่พูดถึงเรื่องนี้)”

McCue กล่าวว่าเขาไม่เห็น WordPress แทนที่ผู้ดูแลระบบทั้งหมดด้วย Calypso ในลักษณะที่ไม่อนุญาตให้นักพัฒนาใช้สิ่งที่พวกเขาเลือกสำหรับส่วนขยายของตนเอง การตัดสินใจนำเฟรมเวิร์ก JavaScript มาใช้สำหรับคอร์นั้นมีมากกว่าเพื่อทำให้การทำงานของนักพัฒนาหลักง่ายขึ้น ในขณะนี้ นักพัฒนาหลักที่ทำงานเกี่ยวกับคุณสมบัติใหม่มีความรู้เกี่ยวกับ React มากกว่าเฟรมเวิร์กอื่นๆ

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

บทสรุปของการอภิปรายควรโพสต์ไปที่บล็อก Make/Core เร็วๆ นี้ และการอภิปรายเกี่ยวกับการเลือกเฟรมเวิร์ก JavaScript ใหม่จะดำเนินต่อไปในการประชุมในอนาคต