يوفر لك XONE بيئة مكدس خفيفة الوزن على رأس Node.js لتطوير تطبيقات جميلة لكل استخدام (استنادًا إلى HTML5 و JavaScript) وتتيح التكامل الأمثل لقاعدة الكود العالمية في مجموعة واسعة من الأنظمة (مثل الأجهزة المحمولة والأجهزة اللوحية وأجهزة سطح المكتب وبيئات المتصفح).
ستحصل Xone على بعض التغييرات الرئيسية. كان هذا مطلوبًا لفتح القدرات للميزات القادمة التي نعملها الآن مثل Xone Native . تتمثل الخطة في إصدار بنية نهائية حتى v.1.0.0 ثم يتم القيام بها أيضًا مع معظم التغييرات المكسورة.

asyncpaintpromisequeuestackasaprun (مثيل Runner Thread Pseudo)APP.CONTROLLER[name] → new Controller(name) أو Controller.new(name)APP.VIEW[name] → new View(name) أو View.new(name)APP.EVENT[query] → new Event(query) أو Event.new(query)APP.ROUTE[route] → new Route(route) أو Route.new(route)APP.MAPPER[name] → هو الآن جزء من العرض والطراز و/أو المسار (انظر: عرض التعيينات ، تعيينات النماذج ، تعيينات الحمولة النافعة )APP.MODEL[name] → new Model(name) أو Model.new(name)APP.WORKER[name] → new Worker(name) أو Worker.new(name)APP.HANDLER → أنت حر في استخدام أي نمط (مثل من قبل)APP.HELPER → أنت حر في استخدام أي نمط (كما كان من قبل)APP.SETTING.get(key) → Setting.get(key)APP.PLUGIN.Filesystem → FilesystemCORE.* → Util.{Package}.* (على سبيل المثال Util.Array.merge )
سيتم إهمال هذه الميزات في الوقت الحالي (غير مدعوم):
لدى XONE بشكل أساسي واجهة سهلة التعلم دون إجبارك على تنفيذ أي رمز "إطار عمل إطار" منخفض المستوى كما تفعل مع Angular أو React. يحافظ هذا أيضًا على مرونة كبيرة في قاعدة كودكاتك للتقنيات أو المنافذ القادمة أو أي تغييرات رئيسية أخرى.
يتوفر Xone أساسًا في 3 إصدارات مختلفة:
xone create| ميزات افتراضيا | مشروع Xone (البيئة) | حزمة Xone (مستقل) | مكتبة Xone (مستقل) |
|---|---|---|---|
| مشروع المشروع النهائي | أصغر | صغير | طبيعي |
| المكتبة الأساسية | |||
| إطار MVC | |||
| عرض المحرك | |||
| اختبارات الوحدة | - | - | |
| أدوات تصحيح الأخطاء | - | ||
| البيئات | - | - | |
| تكوين التطبيق العالمي | - | ||
| مشروع بناء/تجميع | - | ||
| إدارة المنصات | - | - | |
| قوالب ديناميكية (HTML> JSON) | - | - | |
| إدارة التبعية | - | - | |
| قاعدة الشفرة الأولية | - | - | |
| أدوات CLI | - | - | |
| الدعم وضع المترجم المتقدم | - | ||
| إزالة الكود الميت | - | ||
| ليس ملزمًا تمامًا بالاتفاقيات | - | ||
| لا يتطلب node.js | - | ||
| استخدم كمكتبة قائمة بذاتها (مثل jQuery/Underscore) | - | ||
| استخدم كإطار (مثل Bootstrap/Angular) | - | ||
| استخدم كبيئة ديف (مثل Sencha/Meteor) | - | - |
> npm install -g xoneملاحظة: لجعل Xone CLI متاحًا عالميًا ، يجب عليك تثبيت XONE كوحدة NPM عالمية (بالإضافة إلى أي تثبيت محلي إذا كنت ترغب في الحفاظ على البساطة قدر الإمكان). يمكنك أيضًا استخدام إصدارات مخصصة محلية من XONE بالإضافة إلى استخدام CLI دون أي تثبيتات عالمية (اقرأ المزيد).
ملاحظة: يجب تثبيت ثنائيات مشروع XONE عادةً عبر "XONE CREATE" أو "تثبيت XONE" وتأتي مع بنية المجلد المحددة مسبقًا (تليها بعض المؤتمرات). يمكنك اختيار أحد الإصدارين المستقلين اختياريًا لتخطي أكبر عدد ممكن من الاتفاقيات (على سبيل المثال ، يعمل Xone مثل المكون الإضافي JavaScript الخارجي).
بدلاً من ذلك ، في جذر مشروعك ، يمكنك استخدام تطبيق اختصار CLI المحلي بدلاً من XONE ، على سبيل المثال:
my_project > app buildملاحظة: لا تتوفر خيارات إنشاء وتثبيت كلاهما عبر تطبيق الاختصار.
على جهاز Linux يمكنك استخدامه:
sudo npm install -g xoneإذا لم يتم تسجيل معرف "Xone" العالمي بشكل صحيح ، فحاول بشكل صحيح أحد هذه السطور:
hash xone
hash -rبدلاً من ذلك ، يمكنك استخدام احتياطي CLI المحلي مثل:
bash xone buildقم بإنشاء مشروع جديد داخل مساحة عمل الدليل/my_project :
workspace > xone create my_projectيعمل ، ولكن لا ينصح بشكل عام باستخدام مساحات بيضاء في اسم مجلد المشروع:
workspace > xone create " my project "اقرأ كذلك
لتحديث Xone من مشروع موجود بالفعل تحتاج إلى خطوتين أساسًا:
> npm install -g xoneworkspace/my_project > xone installملاحظة: لن يكتب هذا أي من ملفات مشروعك! يتم تحديث ملفات مكتبة XONE فقط في المشاريع الموجودة في التطبيق/lib/xone/ .
اقرأ كذلك
مصادر غير مجمعة موجودة في: مساحة العمل/my_project/app/*
my_project > xone buildبناء الإنتاج الموجود في: مساحة العمل/my_project/public/www/*
ملاحظة: أوصينا باستخدام تصميمات الإنتاج لأي إصدار خارجي/عام واستخدام المصادر فقط لتطوير واختبار وقد بعض الأغراض الداخلية الأخرى. لتخطي تكامل بناء XONE ، يجب عليك استخدام الإصدار المستقل بدلاً من ذلك.
my_project > xone serverافتح Webrowser المفضل لديك و goto 'http: // localhost/app/' أو 'http: // localhost/public/www/'
اختياريا يمكنك تمرير مضيف مخصص ومنفذ:
my_project > xone server localhost 8080افتح Webrowser المفضل لديك و Goto 'http: // localhost: 8080'
افتح التطبيق/index.html من المصادر أو العام/www/index.html من بناء الإنتاج في المتصفح المفضل لديك.
استخدم بنيات الإنتاج الموجودة في مساحة العمل/my_project/public/* للمضي قدمًا في مشاريعك المستندة إلى Cordova أو التحميل إلى خادم الويب.
يوفر Xone حقنًا مخصصًا للمنصة لأداء بنيات إنتاج محددة منصة. لذلك فإن كل هذه المباني تتضمن فقط التعليمات البرمجية والتبعيات اللازمة لمنصةها ذات الصلة.
عرض منصات محددة حاليًا:
my_project > xone platformتنفيذ مجموعة محددة منصة:
my_project > xone compile androidتبقى الملفات المترجمة في: مساحة العمل/my_project/app/*
تنفيذ بناء منصة محددة:
my_project > xone build androidوجهة بناء: مساحة العمل/my_project/public/android/*
يمكنك إضافة منصات مخصصة غير محدودة ، على سبيل المثال إنشاء منصة "WebApp":
my_project > xone platform add webapp
my_project > xone build webappالوجهة البناء: مساحة العمل/my_project/public/webapp/*
my_project > xone build bundleوجهة بناء: مساحة العمل/my_project/app/lib/xone/dist/xone.bundle.js
my_project > xone build libوجهة البناء: مساحة العمل/my_project/app/lib/xone/dist/xone.lib.js
my_project > xone build lib min ./app/js/وجهة البناء: مساحة العمل/my_project/app/js/xone.lib.min.js
ملاحظة: لا يمكن تغيير ترتيب المعلمات التي تم تمريرها في الواقع.
<!DOCTYPE html >
< html >
< head >
< meta charset =" UTF-8 " >
</ head >
< body >
<!-- END_OF_BODY -->
<!-- LOAD XONE: -->
< script src =" js/xone.lib.min.js " > </ script >
<!-- YOUR APP CODE: -->
< script src =" js/app.js " > </ script >
</ body >
</ html > يستخدم Xone Build مترجم Google Closure. تدعم جميع مكتبات XONE أيضًا التجميع في "الوضع المتقدم" . يمكن تكوين خصائص الإنشاء في xone.json . يوفر برنامج التحويل البرمجي الإغلاق أيضًا نظامًا بسيطًا لإدارة التبعية (توفير/طلب) يجب أن تستفيد من تحسين إزالة التعليمات البرمجية الميتة.
ملاحظة: في الواقع ، يدعم XONE نسختين مختلفتين من برنامج التحويل البرمجي الإغلاق: 1. يتطلب Java ، 2. يتطلب JavaScript (العقدة). يوصى بتثبيت Java (JRE) بشكل صحيح على جهازك لإلغاء تأمين بعض فوائد إصدار برنامج التحويل البرمجي Java. لتغيير نوع المترجم ، تحتاج إلى تغيير قيمة الحقل
closure_compiler_lib_typeمن"js"إلى"jar"فيxone.jsonوفقًا لذلك.
ملاحظة: إذا كان لديك خبرة أقل مع برنامج التحويل البرمجي الإغلاق ، فيمكنك ضبط مستوى التجميع اختياريًا على "بسيط" في الحقل
closure_compiler_levelضمن ملف Config Xone.
| ميزات افتراضيا | برنامج التحويل البرمجي الإغلاق (Java) | برنامج التحويل البرمجي الإغلاق (JavaScript) |
|---|---|---|
| إدارة التبعية | ||
| تبعيات فرز السيارات | - | |
| التبعيات "الصارمة" (نقطة الدخول) | - | |
| مجموعة "طباعة جميلة" | - | |
| بناء الأداء | طبيعي | بطيئة |
| نسبة الضغط | أفضل | جيد |
| استهلاك الذاكرة | طبيعي | أقصى |
my_project > xone docsسيتم إنشاء مستندات في "docs/api/' .
البيئات الافتراضية هي:
تغيير البيئة في app/manifest.js :
"env" : " development " ,
"platform" : " www "أو مجرد إضافة معلمات إلى عنوان URL:
http://localhost:9000/? env =test& platform =android& debug =trueملاحظة: يمكنك أيضًا تجاوز أي سمة
CONFIGعن طريق تمرير معلمات URL على التوالي.
عرض البيئات المحددة حاليًا:
my_project > xone envأضف بيئات مخصصة:
my_project > xone env add offlineBuild Build Build: مساحة عمل/my_project/app/config/intellline.js