Xone vous fournit un environnement de pile complet léger en plus de Node.js pour développer de belles applications pour chaque utilisation (basée sur HTML5 et JavaScript) et permet l'intégration optimale d'une base de code universelle dans un large éventail de systèmes (par exemple les appareils mobiles, les tablettes, les bureaux, les environnements de navigateur).
Xone recevra des changements majeurs. Cela était nécessaire pour ouvrir des capacités pour les fonctionnalités à venir que nous travaillons maintenant comme le natif de Xone . Le plan consiste à publier une architecture finale jusqu'à V.1.0.0, puis à faire également avec la plupart des changements de rupture.

asyncpaintpromisequeuestackasaprun (instance pseudo thread coureur)APP.CONTROLLER[name] → new Controller(name) ou Controller.new(name)APP.VIEW[name] → new View(name) ou View.new(name)APP.EVENT[query] → new Event(query) ou Event.new(query)APP.ROUTE[route] → new Route(route) ou Route.new(route)APP.MAPPER[name] → fait désormais partie de la vue, du modèle et / ou de l'itinéraire (voir: les mappages de vue , les mappages du modèle , les mappages de charge utile )APP.MODEL[name] → new Model(name) ou Model.new(name)APP.WORKER[name] → new Worker(name) ou Worker.new(name)APP.HANDLER → vous êtes libre d'utiliser n'importe quel style (comme avant)APP.HELPER → vous êtes libre d'utiliser n'importe quel style (comme avant)APP.SETTING.get(key) → Setting.get(key)APP.PLUGIN.Filesystem → FilesystemCORE.* → Util.{Package}.* (Par exemple Util.Array.merge )
Ces fonctionnalités seront obsolètes pour l'instant (non étayées):
Fondamentalement, Xone a une interface de haut niveau facile à apprendre sans vous forcer à implémenter un code "CryptofiEd framework-cryptofied" de bas niveau comme vous le feriez avec Angular ou React. Cela préserve également une énorme flexibilité à votre base de code pour les technologies à venir, les ports ou tout autre changement majeur.
Xone est essentiellement disponible en 3 versions différentes:
xone create| Fonctionnalités par défaut | Xone Project (Environnement) | Xone Bundle (autonome) | Bibliothèque Xone (autonome) |
|---|---|---|---|
| Fize de fichiers du projet final | le plus petit | petit | normale |
| Bibliothèque de base | |||
| MVC Framework | |||
| Faire du moteur | |||
| Tests unitaires | - | - | |
| Outils de débogage | - | ||
| Environnements | - | - | |
| Configuration globale de l'application | - | ||
| Projet de construction / compilation | - | ||
| Gérer les plateformes | - | - | |
| Modèles dynamiques (HTML> JSON) | - | - | |
| Gestion des dépendances | - | - | |
| Base de code initiale | - | - | |
| Outils CLI | - | - | |
| Mode avancé du compilateur de fermeture de support | - | ||
| Suppression du code mort | - | ||
| N'est pas strictement lié par les conventions | - | ||
| Ne nécessite pas de node.js | - | ||
| Utiliser comme bibliothèque autonome (comme jQuery / Contrôle) | - | ||
| Utiliser comme cadre (comme bootstrap / angulaire) | - | ||
| Utiliser comme environnement de développement (comme Sencha / Meteor) | - | - |
> npm install -g xoneRemarque: Pour rendre la CLI Xone à l'échelle mondiale, vous devez installer Xone en tant que module NPM global (également en plus de toute installation locale si vous souhaitez rester simple aussi que possible). Vous pouvez également utiliser une versions personnalisées locales de Xone ainsi que l'utilisation de la CLI sans aucune installation globale (lire plus loin).
Remarque: les binaires du projet Xone doivent généralement être installés via "Xone Create" ou "Xone Install" et est livré avec sa propre structure de dossier prédéfinie (suivie de certaines conventions). Vous pouvez choisir l'une des deux versions autonomes éventuellement pour sauter autant de conventions que possible (par exemple, Xone agit comme un plugin javascript externe).
Alternativement, à la racine de votre projet, vous pouvez utiliser l' application de raccourci CLI locale à la place pour xone , par exemple:
my_project > app buildRemarque: Les options créent et installent les deux ne sont pas disponibles sur l' application de raccourci.
Sur une machine Linux, vous pouvez utiliser:
sudo npm install -g xoneSi l'identifiant "Xone" global n'est pas enregistré correctement, essayez l'une de ces lignes:
hash xone
hash -rAlternativement, vous pouvez utiliser le rendement CLI local comme:
bash xone buildCréez un nouveau projet à l'intérieur de l' espace de travail du répertoire / my_project :
workspace > xone create my_projectFonctionne, mais il n'est généralement pas recommandé d'utiliser des espaces blancs dans un nom de dossier de projet:
workspace > xone create " my project "Lire plus loin
Pour mettre à jour Xone d'un projet déjà existant, vous avez essentiellement besoin de 2 étapes :
> npm install -g xoneworkspace/my_project > xone installRemarque: cela ne remplacera aucun de vos fichiers de projet! Seuls les fichiers de bibliothèque Xone situés dans l'application / lib / xone / sont mis à jour.
Lire plus loin
Sources non compilées situées dans: Workspace / my_project / app / *
my_project > xone buildBuild de production Situé dans: Workspace / my_project / public / www / *
Remarque: Nous avons recommandé d'utiliser des versions de production pour toute version externe / publique et d'utiliser les sources uniquement pour le développement, les tests et peut à quelques autres fins internes. Pour ignorer l'intégration de build de Xone, vous devez plutôt utiliser la version autonome.
my_project > xone serverOuvrez votre webrowser et goto préférés 'http: // localhost / app /' ou 'http: // localhost / public / www /'
Éventuellement, vous pouvez passer l'hôte et le port personnalisés:
my_project > xone server localhost 8080Ouvrez votre webrowser et goto préféré «http: // localhost: 8080»
Ouvrir l'application / index.html à partir de sources ou public / www / index.html de la production de production dans votre navigateur préféré.
Utilisez des builds de production situés dans Workspace / MY_PROject / public / * pour aller de l'avant dans vos projets basés sur Cordova ou télécharger sur un serveur Web.
Xone fournit des injections de plate-forme personnalisées pour effectuer des versions de production spécifiques à la plate-forme. Par conséquent, toutes ces versions ne comprennent que le code et les dépendances nécessaires pour leur plate-forme connexe.
Afficher les plates-formes actuellement définies:
my_project > xone platformEffectuer une compilation spécifique à la plate-forme:
my_project > xone compile androidLes fichiers compilés restent dans: Workspace / my_project / app / *
Effectuer des versions spécifiques à la plate-forme:
my_project > xone build androidBuild Destination: Workspace / my_project / public / android / *
Vous pouvez ajouter des plates-formes personnalisées illimitées, par exemple, créer une plate-forme `` webapp '':
my_project > xone platform add webapp
my_project > xone build webappBuild Destination: Workspace / my_project / public / webApp / *
my_project > xone build bundleBuild Destination: Workspace / my_project / app / lib / xone / dist / xone.bundle.js
my_project > xone build libBuild Destination: Workspace / my_project / app / lib / xone / dist / xone.lib.js
my_project > xone build lib min ./app/js/Build Destination: Workspace / my_project / app / js / xone.lib.min.js
Remarque: l'ordre des paramètres passés ne peut pas être modifié en fait.
<!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 utilise le compilateur Google Closure. Toutes les bibliothèques Xone prennent également en charge la compilation en "mode avancé" . Les propriétés de construction peuvent être configurées dans xone.json . Le compilateur de fermeture fournit également un système de gestion de dépendance simple (fournir / exiger) que vous devez utiliser pour améliorer la suppression du code mort.
Remarque: En fait, Xone prend en charge 2 versions différentes du compilateur de fermeture: 1. Exige Java, 2. Exige JavaScript (nœud). Il est recommandé d'avoir un Java (JRE) correctement installé sur votre machine pour déverrouiller certains avantages de la version Java du compilateur de fermeture. Pour modifier le type du compilateur, vous devez modifier la valeur de la
closure_compiler_lib_typede"js"en"jar"dansxone.jsonen conséquence.
Remarque: Si vous avez moins d'expérience avec le compilateur de fermeture, vous pouvez éventuellement définir le niveau de compilation sur "Simple" sur le champ
closure_compiler_leveldans le fichier de configuration Xone.
| Fonctionnalités par défaut | Compilateur de fermeture (Java) | Compilateur de fermeture (JavaScript) |
|---|---|---|
| Gestion des dépendances | ||
| Dépendances de tri automatique | - | |
| Dépendances "strictes" (point d'entrée) | - | |
| Compilation "Pretty Print" | - | |
| Construire des performances | Normale | Lent |
| Ratio de compression | Meilleur | Bien |
| Consommation de mémoire | Normale | Extrême |
my_project > xone docsLes documents seront générés dans «Docs / API /» .
Les environnements par défaut sont:
Changer l'environnement dans app/manifest.js :
"env" : " development " ,
"platform" : " www "Ou simplement ajouter des paramètres à l'URL:
http://localhost:9000/? env =test& platform =android& debug =trueRemarque: vous pouvez également remplacer n'importe quel attribut
CONFIGen passant respectivement les paramètres d'URL.
Afficher les environnements actuellement définis:
my_project > xone envAjouter des environnements personnalisés:
my_project > xone env add offlineBuild Destination: Workspace / my_project / app / config / offline.js