XONE ให้สภาพแวดล้อมสแต็กเต็มรูปแบบที่มีน้ำหนักเบาบน Node.js เพื่อพัฒนาแอพพลิเคชั่นที่สวยงามสำหรับการใช้งานทุกครั้ง (ขึ้นอยู่กับ HTML5 และ JavaScript) และเปิดใช้งานการบูรณาการที่ดีที่สุดของ codebase สากลเข้ากับระบบที่หลากหลาย (เช่นอุปกรณ์มือถือ, แท็บเล็ต, เดสก์ท็อป,
Xone จะได้รับการเปลี่ยนแปลงที่สำคัญ สิ่งนี้จำเป็นสำหรับความสามารถในการเปิดสำหรับคุณสมบัติที่กำลังจะมาถึงตอนนี้เรากำลังทำงานเหมือน Xone Native แผนคือการปล่อยสถาปัตยกรรมขั้นสุดท้ายจนถึง v.1.0.0 และจากนั้นจะต้องทำด้วยการเปลี่ยนแปลงส่วนใหญ่

asyncpaintpromisequeuestackasaprun (อินสแตนซ์ Runner เธรด 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 มีอินเทอร์เฟซระดับสูงที่ง่ายต่อการเรียนรู้โดยไม่บังคับให้คุณใช้รหัส "เฟรมเวิร์ก-cryptofied" ระดับต่ำใด ๆ ตามที่คุณทำกับ Angular หรือ React สิ่งนี้ยังคงรักษาความยืดหยุ่นอย่างมากต่อ codebase ของคุณสำหรับเทคโนโลยีที่กำลังจะมาถึงพอร์ตหรือการเปลี่ยนแปลงที่สำคัญอื่น ๆ
โดยทั่วไป Xone มีให้เลือก 3 เวอร์ชัน:
xone create| คุณสมบัติตามค่าเริ่มต้น | โครงการ XONE (สิ่งแวดล้อม) | Xone Bundle (สแตนด์อโลน) | Library Xone (สแตนด์อโลน) |
|---|---|---|---|
| ไฟล์โครงการสุดท้ายไฟล์ | เล็กที่สุด | เล็ก | ปกติ |
| ห้องสมุดหลัก | |||
| กรอบ MVC | |||
| เครื่องยนต์แสดงผล | |||
| การทดสอบหน่วย | - | - | |
| เครื่องมือแก้จุดบกพร่อง | - | ||
| สภาพแวดล้อม | - | - | |
| การกำหนดค่าแอพทั่วโลก | - | ||
| สร้าง/รวบรวมโครงการ | - | ||
| จัดการแพลตฟอร์ม | - | - | |
| เทมเพลตแบบไดนามิก (html> json) | - | - | |
| การจัดการการพึ่งพา | - | - | |
| รหัสเริ่มต้น | - | - | |
| เครื่องมือ CLI | - | - | |
| รองรับการปิดคอมไพเลอร์โหมดขั้นสูง | - | ||
| การลบรหัสตาย | - | ||
| ไม่ ผูกพันอย่างเคร่งครัดโดยการประชุม | - | ||
| ไม่ ต้องการ node.js | - | ||
| ใช้เป็นห้องสมุดแบบสแตนด์อโลน (เช่น jQuery/Underscore) | - | ||
| ใช้เป็นเฟรมเวิร์ก (เช่น bootstrap/angular) | - | ||
| ใช้เป็นสภาพแวดล้อม dev (เช่น Sencha/Meteor) | - | - |
> npm install -g xoneหมายเหตุ: ในการทำให้ Xone CLI มีให้ทั่วโลกคุณต้องติดตั้ง XONE เป็นโมดูล NPM ทั่วโลก (นอกเหนือจากการติดตั้งในท้องถิ่นหากคุณต้องการให้ง่ายที่สุดเท่าที่จะทำได้) นอกจากนี้คุณยังสามารถใช้ XONE รุ่นที่กำหนดเองในท้องถิ่นรวมถึงการใช้ CLI โดยไม่ต้องติดตั้งทั่วโลก (อ่านเพิ่มเติม)
หมายเหตุ: ไบนารีโครงการ XONE โดยทั่วไปจะต้องติดตั้งผ่าน "Xone Create" หรือ "Xone Install" และมาพร้อมกับโครงสร้างโฟลเดอร์ที่กำหนดไว้ล่วงหน้าของตัวเอง (ตามด้วยอนุสัญญาบางอย่าง) คุณสามารถเลือกหนึ่งในสองเวอร์ชันสแตนด์อโลนที่เลือกเพื่อข้ามการประชุมให้ได้มากที่สุด (เช่น Xone ทำหน้าที่เหมือนปลั๊กอินจาวาสคริปต์ภายนอก)
อีกทางเลือกหนึ่งในรูทของโครงการของคุณคุณสามารถใช้ แอพ ทางลัด CLI ท้องถิ่นแทนสำหรับ XONE เช่น:
my_project > app buildหมายเหตุ: ตัวเลือก สร้าง และ ติดตั้ง ทั้งสองไม่พร้อมใช้งานผ่าน แอพ ทางลัด
บนเครื่อง Linux ที่คุณอาจใช้:
sudo npm install -g xoneหากตัวระบุ "Xone" ทั่วโลกไม่ได้ลงทะเบียนอย่างถูกต้องลองใช้หนึ่งในบรรทัดเหล่านี้:
hash xone
hash -rหรือคุณสามารถใช้ CLI ทางเลือกในท้องถิ่นเช่น:
bash xone buildสร้างโครงการใหม่ภายใน Directory Workspace/My_Project :
workspace > xone create my_projectใช้งานได้ แต่โดยทั่วไปไม่แนะนำให้ใช้ช่องว่างในชื่อโฟลเดอร์โครงการ:
workspace > xone create " my project "อ่านเพิ่มเติม
ในการอัปเดต XONE ของโครงการที่มีอยู่แล้วคุณต้องการ 2 ขั้นตอน :
> npm install -g xoneworkspace/my_project > xone installหมายเหตุ: สิ่งนี้จะไม่เขียนทับไฟล์โครงการใด ๆ ของคุณ! เฉพาะโครงการไฟล์ Xone Library ที่อยู่ใน App/Lib/Xone/ ได้รับการอัปเดต
อ่านเพิ่มเติม
แหล่งข้อมูลที่ไม่ได้คอมไพล์อยู่ใน: WorksPACE/MY_PROJECT/APP/*
my_project > xone buildการผลิตการผลิตที่อยู่ใน: Workspace/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 จากการผลิตการผลิตในเบราว์เซอร์ที่คุณต้องการ
ใช้การผลิตที่สร้างอยู่ใน Workspace/My_Project/Public/* เพื่อก้าวไปข้างหน้าไปยังโครงการที่ใช้ Cordova หรืออัปโหลดไปยังเว็บเซิร์ฟเวอร์
Xone ให้การฉีดแพลตฟอร์มที่กำหนดเองเพื่อดำเนินการสร้างการผลิตเฉพาะแพลตฟอร์ม ดังนั้นการสร้างทั้งหมดเหล่านั้นรวมถึงรหัสที่จำเป็นและการพึ่งพาสำหรับแพลตฟอร์มที่เกี่ยวข้อง
แสดงแพลตฟอร์มที่กำหนดไว้ในปัจจุบัน:
my_project > xone platformทำการรวบรวมเฉพาะแพลตฟอร์ม:
my_project > xone compile androidไฟล์ที่รวบรวมยังคงอยู่ใน: WorksPACE/MY_PROJECT/APP/*
ดำเนินการสร้างแพลตฟอร์มเฉพาะ:
my_project > xone build androidสร้างปลายทาง: Workspace/My_Project/Public/Android/*
คุณสามารถเพิ่มแพลตฟอร์มที่กำหนดเองได้ไม่ จำกัด เช่นสร้างแพลตฟอร์ม 'WebApp':
my_project > xone platform add webapp
my_project > xone build webappBuild Destination: WorksPACE/MY_PROJECT/PUVIT/WEBAPP/*
my_project > xone build bundleสร้างปลายทาง: workspace/my_project/app/lib/xone/dist/xone.bundle.js
my_project > xone build libสร้างปลายทาง: workspace/my_project/app/lib/xone/dist/xone.lib.js
my_project > xone build lib min ./app/js/สร้างปลายทาง: workspace/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 ไลบรารี Xone ทั้งหมดยังรองรับการรวบรวมใน "โหมดขั้นสูง" คุณสมบัติการสร้างสามารถกำหนดค่าได้ใน xone.json คอมไพเลอร์ปิดยังมีระบบการจัดการการพึ่งพาอย่างง่าย (ให้/ต้องการ) คุณควรใช้ประโยชน์จากการปรับปรุงการกำจัดรหัสที่ตายแล้ว
หมายเหตุ: จริง ๆ แล้ว Xone รองรับคอมไพเลอร์ปิด 2 เวอร์ชัน: 1. ต้องใช้ Java, 2. ต้องใช้ JavaScript (Node) ขอแนะนำให้ติดตั้ง Java (JRE) อย่างถูกต้องบนเครื่องของคุณเพื่อปลดล็อกประโยชน์บางอย่างของเวอร์ชัน Java Compiler ปิด ในการเปลี่ยนประเภทของคอมไพเลอร์คุณต้องเปลี่ยนค่าของ
closure_compiler_lib_typeจาก"js"เป็น"jar"ในxone.jsonตามนั้น
หมายเหตุ: หากคุณมีประสบการณ์น้อยลงกับคอมไพเลอร์ปิดคุณสามารถเลือกระดับการรวบรวมเป็น "ง่าย" บนฟิลด์
closure_compiler_levelภายในไฟล์กำหนดค่า Xone
| คุณสมบัติตามค่าเริ่มต้น | คอมไพเลอร์ปิด (Java) | คอมไพเลอร์ปิด (JavaScript) |
|---|---|---|
| การจัดการการพึ่งพา | ||
| การพึ่งพาการเรียงลำดับอัตโนมัติ | - | |
| การพึ่งพา "เข้มงวด" (จุดเข้า) | - | |
| การรวบรวม "Pretty Print" | - | |
| สร้างประสิทธิภาพ | ปกติ | ช้า |
| อัตราส่วนการบีบอัด | ดีที่สุด | ดี |
| การใช้หน่วยความจำ | ปกติ | สุดขีด |
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 offlineสร้างปลายทาง: workspace/my_project/app/config/offline.js