العملية: إنشاء Vue 3


الدروس المستفادة من كتابة النسخة الرئيسية التالية من Vue.js


تم النشر بواسطة Evan You


خلال العام الماضي ، كان فريق Vue يعمل على الإصدار الرئيسي التالي من Vue.js ، والذي نأمل أن يصدر في النصف الأول من عام 2020 (هذا العمل مستمر حتى كتابة هذه السطور). تم تشكيل فكرة إصدار رئيسي جديد من Vue في نهاية عام 2018 ، عندما كان عمر قاعدة كود Vue 2 حوالي عامين ونصف. قد لا يبدو هذا فترة طويلة في حياة البرمجيات ، لكن أفكار الواجهة الأمامية تغيرت كثيرًا خلال هذه الفترة.


قادنا اعتباران رئيسيان إلى كتابة نسخة أساسية جديدة (وإعادة كتابة الإصدار القديم) من Vue: أولاً ، توفر ميزات JavaScript الجديدة في المتصفحات الشائعة. ثانياً ، مشاكل التصميم والهندسة المعمارية في قاعدة الكود الحالية ، المحددة بمرور الوقت.


لماذا إعادة الكتابة


استخدام ميزات اللغة الجديدة


ES2015, JavaScript — ECMAScript, ES — , . , , Vue.
Proxy, . Vue — , (state), DOM. Vue 2 , . Proxy Vue, , .


Proxy — , . — , .



Vue 2 , - . , (templates) , sourcemap . , Vue 2 , , DOM, , . , .


, , , . , , , . .



Vue 3 2018 . .


Typescript


Vue 2 ES. , . . Facebook Flow type checker, ES. Flow , , ; , . , , TypeScript Visual Studio Code.


, Vue TypeScript . , TypeScript , . TypeScript , .


(decoupling)


monorepo, , API, . , , . , , , .


RFC


2018 DOM. , , API. .


, . Vue , . , RFC (Request for Comments) 2019 . RFC , , , . GitHub , , .


RFC , , , feature requests.



- . Vue 2 , , .


DOM


Vue : HTML- , , DOM-. , DOM , DOM . , , , , JavaScript, - . , , (bindings) — DOM , .


, . Vue 2 , , - . Vue 3 AST transform pipeline, (transform) .


, . , DOM DOM, DOM, , , . , .


, DOM , , , . , (runtime) : , . :


-, , , (, v-if v-for). (template) «», , . , — . DOM, , , .


-, , . , .


-, DOM , . , , , . .


-: Vue 3 Vue 2.



. -, , , JavaScript . . Vue — Vue 2 23 — :
-, . , , (transitions), - , .


-, , . , . , .


— , tree-shaking — , . , , .


Vue 3 , API ES . , . tree-shaking , , .


"", . . Vue 3 10 — Vue 2, .



Vue . Vue . Vue , , . , TypeScript, , Vue 2 .


Vue 3 TypeScript, (Class API). , , , , , , , JavaScript. , Class API , , TypeScript.


. React Hooks, API- , , Composition API. , Composition API , (statefull components), , TypeScript.


. Composition API , . Vue 3 , Composition API Options API . , , . , , , Composition API Options API. , .



Vue, , HTML/CSS, , jQuery, , , -, , . : , , ; , , , .


Vue , . Vue « », API, . CDN , HTML Options API, (CLI), Composition API.


لا يزال أمامنا الكثير من العمل لتحقيق رؤيتنا - والأهم من ذلك ، تحديث المكتبات والوثائق والأدوات الداعمة لضمان الانتقال السلس إلى الإصدار الجديد. سنعمل بجد في الأشهر المقبلة ، ونحن ننتظر - لن ننتظر لنرى ما يصنعه المجتمع باستخدام Vue 3.


صورة


All Articles