Android SDK

Le SDK Android est un kit de développement de logiciels destiné aux développeurs travaillant sur la plate-forme Android de Google. Il comprend des outils pour créer, tester et déboguer des applications Android.

Annotations

Les annotations sont utilisées pour ajouter des métadonnées à une classe. TypeScript étend ES6 en ajoutant des annotations. Bien que vous puissiez définir vos propres annotations, la communauté ionique fait souvent référence à deux annotations fournies par Angular 2: @Component et @View.

Bitcoin

Bitcoin (de l'anglais bit : unité d'information binaire et coin « pièce de monnaie ») est, d'une part, une monnaie virtuelle de type monnaie cryptographique et, d'autre part, un système de paiement pair-à-pair présenté par une personne ou un groupe de personnes sous le pseudonyme de Satoshi Nakamoto, qui annonce son système en 2008 et publie le code source en 2009.

Blockchain

Une (ou un) blockchain, ou chaîne de blocs, est une technologie de stockage et de transmission d'informations sans organe de contrôle. Techniquement, il s'agit d'une base de données distribuée dont les informations envoyées par les utilisateurs et les liens internes à la base sont vérifiés et groupés à intervalles de temps réguliers en blocs, l'ensemble étant sécurisé par cryptographie, et formant ainsi une chaîne.

Browserify

Permet l'analyse tout le code d'un projet et le regroupe en un seul fichier. Un outil qui lui est similaire est Webpack.

Capacitor

Il s'agit de la version améliorée et faite maison de Cordova, par les créateurs de Ionic. Comme Cordova, Capacitor fait le pont entre applications Web multiplates-formes et les kits de développement logiciel (SDK) natifs pour iOS, Android, Electron et le Web. S'il est optimisé pour les applications Ionic, Capacitor peut être utilisé avec n'importe quel framework d'applications Web.

CLI

Une interface en ligne de commande ou CLI est une interface basée sur du texte pour interagir avec un programme. L'application en ligne de commande commune aux utilisateurs Mac est l'application Terminal et les utilisateurs Windows utilisent plutot l'invite de commandes CMD (Windows + R et CMD). La communauté ionique utilise souvent ce terme pour se référer au CLI d'Ionic qui peut être utilisée pour effectuer un certain nombre d'actions comme la création d'une application, l'exécution de l'application (ionic serve) et l'accès aux services Ionic (ionic login par exemple).

Cordova

Apache Cordova ou plus anciennement Apache Callback ou PhoneGap, est un framework open-source développé par la Fondation Apache. Il permet de créer des applications pour différentes plateformes en HTML, CSS et JavaScript. Il fournit une API JavaScript pour accéder aux fonctionnalités natives du téléphone, telles que la caméra, la position GPS ou encore l'accéléromètre. Cordova contient des outils nécessaires pour le packaging d'applications pour iOS, Android et Windows Phone.

CORS

Le « Cross-origin resource sharing » (CORS) ou « partage des ressources entre origines multiples » (en français, moins usité) est un mécanisme qui consiste à ajouter des en-têtes HTTP afin de permettre à un agent utilisateur d'accéder à des ressources d'un serveur situé sur une autre origine que le site courant. Un agent utilisateur réalise une requête HTTP multi-origine (cross-origin) lorsqu'il demande une ressource provenant d'un domaine, d'un protocole ou d'un port différent de ceux utilisés pour la page courante.

Pour des raisons de sécurité, les requêtes HTTP multi-origine émises depuis les scripts sont restreintes. Cette spécification est présente sur la plupart des navigateurs.

Pour contourner les exceptions liées au CORS, il est souvent nécessaire de configurer le serveur distant pour qu'il accepte des requêtes en provenance de notre origine (le plus souvent localhost)

Décorateur

Les décorateurs sont des expressions qui renvoient une fonction. Ils vous permettent essentiellement de prendre une fonction existante et d'étendre son comportement. Avec TypeScript, vous pouvez également décorer des classes et des paramètres. Lorsque vous décorez une classe, vous encapsulez et étendez le comportement de son constructeur. En d'autres termes, le décorateur ajoutera une fonctionnalité lorsque le constructeur est appelé, puis retournera le constructeur d'origine. Lorsque vous décorez un paramètre, vous encapsulez l'argument transmis pour ce paramètre. En d'autres termes, le décorateur ajoute des fonctionnalités lorsqu'un argument est passé à la méthode, puis renvoie l'argument d'origine.

Ethereum

Ethereum est un protocole d'échanges décentralisés permettant la création par les utilisateurs de contrats intelligents grâce à un langage Turing-complet nommé Solidity.

ES5

ES5 se réfère à la 5e édition d'EcmaScript. Une façon simple de le dire est que ES5 est la version (plus ou moins) actuelle de JavaScript, telle que la plupart des développeurs la connaissent aujourd'hui. C'est le javascript sans let et la notion de Classes.

ES2015/ES6

ES2015 / ES6 sont deux noms couramment utilisés pour qualifier la version la plus récente de JavaScript. Un large éventail de nouvelles fonctionnalités ont été introduites dans cette version, notamment les classes, les modules, les itérateurs et les promesses (Promises). La version finale d'ES6 a été approuvée, ce qui signifie que le code ES6 peut être interprété directement par un navigateur. Pour utiliser les fonctionnalités ES6 aujourd'hui (de manière optimale), les outils tels que TypeScript doivent transformer le code ES6 en leur équivalent ES5.

ES2016/ES7

ES2016 / ES7 sont deux noms couramment utilisés pour la version expérimentale de JavaScript. Cette future version de JavaScript ajoutera un certain nombre de nouvelles fonctionnalités au langage dont les fonctions asynchrones et les objets typés. Il est constamment en cours de révision et n'est actuellement pas adapté aux applications de production.

Framework

En programmation informatique, un framework (appelé aussi infrastructure logicielle1, socle d'applications2, infrastructure de développement3, ou cadre d'applications4 au Canada) désigne un ensemble cohérent de composants logiciels structurels, qui sert à créer les fondations ainsi que les grandes lignes de tout ou d’une partie d'un logiciel (Source : Wikipédia)

Git

Git est un système de contrôle de version distribué, utilisé pour la gestion de code source. Il permet aux équipes de développement de contribuer au code d'un même projet sans provoquer (ou presque) de conflits entre participants

Gulp

Gulp est un outil pour exécuter des tâches (repetitives) qui peuvent être utilisées dans la compilation de votre application. Les tâches de construction courantes incluent le passage de ES6 à ES5, la transformation de Sass en CSS, la réduction du code (js en leur version min.js par exemple) et la concaténation de fichiers.

Imports

ES6 a introduit le concept de modules en javascript. Avec les modules, les classes et les variables ne sont plus dans la portée globale et doivent être explicitement importées à l'intérieur d'un projet. Cela permet d'augmenter la modularité et la compartimentation des fonctionnalités.

Ionicons

Ionicons est un projet open-source utilisé et créé par Ionic. Il comprend un ensemble d'icônes inspirés d'iOS, du Material Design (utilisé dans les projets Google), des icônes pour les réseaux sociaux, ainsi qu'un large éventail d'icônes couramment utilisés. Ionicons est inclus par défaut dans les distributions ioniques, mais ils peuvent être utilisés dans n'importe quel autre projet.

JSX

Cette extension syntaxique de JavaScript (JSX = JavaScript XML) permet d'écrire des tags HTML et les intégrer au DOM, sans faire appel aux méthodes createElement et/ou appendChild.

Karma

Karma est un utilitaire de tests unitaires. Il permet l'exécution depuis un navigateur de vos différents cas de test, écrits dans n'importe quel cadre de test. Karma a été écrit à l'origine pour une utilisation dans Angular 1 et est présent dans les versions plus récentes du Framework.

Module

Les modules en JavaScript sont de petits bouts de codes indépendants, réutilisables ou simplement du code volontairement isolé de la portée globale.

Lazy loading

Concept technique qui consiste à ne charger du code ou du contenu uniquement quand c'est nécessaire.

Live Reload

Live Reload (rechargement en temps réel) est un outil qui recharge automatiquement votre navigateur lorsqu'il détecte des changements. Il surveille des repertoires ou fichiers spécifiques et lorsque ceux-ci sont mis à jour, il déclenche un rechargement complet du navigateur. Dans le cas où l'on a du CSS qui est modifié, le chargement du dossier injectera simplement le CSS modifié au lieu de recharger toute la page.

Node

Node est un environnement d'exécution qui vous permet d'écrire du JavaScript côté serveur. En plus d'être utilisé pour les services Web, Node est souvent utilisé pour créer des outils de développement, comme par exemple l'interface en ligne de commande (CLI) de Ionic.

NPM

NPM est le gestionnaire de paquets de Node. Il vous permet d'installer, de partager et de regrouper des modules de Node. Ionic peut être installé avec npm, ainsi qu'un certain nombre de ses dépendances.

Observable

Un observable est un objet qui émet des événements (ou des notifications). Un observateur est un objet qui écoute ces événements et fait quelque chose lorsqu'un événement est reçu. Ensemble, ils créent un modèle qui peut être utilisé pour faire de la programmation asynchrone.

Protractor

Protractor est un framework pour les tests unitaires écrit pour et par l'équipe Angular.

Ripple

Ripple est un système de règlement brut en temps réel, un marché des changes et un réseau de transfert de fonds. Également appelé le Ripple Transaction Protocol ou Protocole Ripple, il est construit sur un protocole Internet distribué et open source, un registre de consensus et une monnaie native appelée XRP. Lancé en 2012, le réseau Ripple a pour objectif de permettre des transactions financières mondiales sécurisées, instantanées et presque gratuites, de toute taille sans rejets de débit.

Sass

Sass est un langage de feuille de style qui compile en CSS et est utilisé par Ionic. Sass est comme CSS, mais avec des fonctionnalités supplémentaires telles que les variables , les mixins (regroupements de règles CSS ou Sass) et les boucles .

SystemJS

SystemJs est un chargeur de modules universel pour JavaScript (comme RequireJS)

Transpiler

Un transpileur (transpiler) permet d'effectuer une transpilation, qui est le processus de conversion du code d'une langue vers une autre langue avant son exécution finale. Généralement, un transpileur convertira un langage de haut niveau en un autre langage de haut niveau. Le type de transpiration le plus commun dans le cadre de Ionic est la conversion de TypeScript en ES5 (JavaScript traditionnel).

TypeScript

TypeScript est un sur-ensemble de JavaScript, ce qui signifie qu'il vous donne du JavaScript, avec un certain nombre de fonctionnalités supplémentaires telles que les déclarations de type et les interfaces.

Tests unitaires

Les tests unitaires permettent de tester de petits morceaux de code pour voir s'ils se comportent comme prévu.

Webpack

Webpack regroupe des modules JavaScript et d'autres éléments. Il peut être utilisé pour créer des "morceaux" de code uniques ou multiples qui ne sont chargés que lorsque cela est nécessaire. Fondamentalement, vous pouvez utiliser Webpack pour prendre vos nombreux fichiers et dépendances et les regrouper dans un seul fichier, ou comme bon vous semble.

WebView

Les applications Ionic sont conçues à l'aide de technologies classiques du Web (HTML, CSS et JavaScript) et s’exécutent à l'aide d'une WebView, une sorte de navigateur Web en mode plein écran (touche F11) et aux performances optimales.

Xcode

Xcode est un EDI (environnement de développement intégré) Apple utilisé dans le développement de logiciels pour les systèmes d'exploitation Apple (macOS, iOS, watchOS et tvOS), avec des extensions disponibles pour d'autres langages et plates-formes.