Envie de travailler avec LE partenaire ionic officiel pour la France et la Suisse?

Après un long processus de qualification (démarré dès 2018) et de formation de nos équipes, nous avons le plaisir d’annoncer que nous sommes à présent LE partenaire Ionic en France et Suisse. Ionic est un des leaders mondiaux des applications mobiles cross-platform (iOS, Android et Windows Mobile).

En tant que partenaire ionic, nous offrons dès à présent une gamme complète de services :

  • développement sur mesure ou co-développement avec vos équipes de votre application mobile Ionic
  • audit de code
  • architecture de votre projet mobile : hé oui une application mobile ça ne se limite pas à une jolie interface, ça se connecte très souvent au SI de votre entreprise !
  • consulting

Pour ceux qui ne connaissent pas encore Ionic, c’est une solution technique qui permet de développer efficacement une application mobile une seule fois et de la déployer partout. C’est à dire sur les stores Android Google Play Store, iOS App Store et Windows Phone.

Et cela sans nécessiter de réécriture pour une plate-forme ou une autre. C’est le principe du « write once, run anywhere ».

En conclusion, un gain notoire de temps et d’argent, avec tous les avantages d’une application native.

En d’autres termes vous bénéficiez des principaux avantages et possibilités de la plate-forme et du device. Comme par exemple la géolocalisation GPS, l’appareil photo pour scanner un code barre ou un QR-code, l’authentification forte par empreinte ou lecture du visage. Bien entendu, tout cela en fonction des possibilités du device utilisé.

Un projet mobile Ionic?

N’hésitez pas à nous contacter pour partager avec nous vos projets et ambitions mobiles. Notre équipe peut vous accompagner de la structuration de votre idée jusqu’à son déploiement dans les mains de vos utilisateurs.

jnesis partenaire ionic officiel

Retrouvez-nous sur le site officiel partenaire ionic (le petit point vert sur la France c’est nous!) : https://ionicframework.com/trusted-partners , sur la page dédiée du site Jnesis https://jnesis.com/ionic/ et bien sûr sur les réseaux sociaux (twitter & linkedin)

Comment profiter de Font Awesome 5 dans les applications Ext JS 6 ?

Objectif

Dans cet article nous allons vous montrer comment à Jnesis nous intégrons Font Awesome 5 aux application Ext JS 6.

Qu’est ce que Font Awesome 5 ?

Font Awesome 5 a été publié en Décembre 2017 et offre de nombreuses évolutions par rapport à la version 4. Pour n’en citer que quelques unes :

  • De nouvelles icônes
  • 4 jeux de caractères : solid (fas), regular (far), light (fal) et brand (fab) au lieu d’un seul (fa)
  • Toujours une version GPL mais aussi une version PRO payante avec les icônes « light » (fal) et parfois les icônes regular (far)
  • Toujours la possibilité de contrôler le style des caractères avec CSS mais aussi maintenant avec SVG

Comment Ext JS intègre t-il Font Awesome ?

Le thème utilisé a son importance. Il peut s’agir d’un thème utilisant de façon native le package Font Awesome intégré à Ext JS (packages/font-awesome) comme c’est le cas du thème par défaut Triton, cf theme-triton/package.json :

"requires": [
        "font-awesome",
        "font-ext"
],

Il peut aussi au contraire s’agir d’un thème où Font Awesome est optionnel comme le thème Neptune. Dans ce cas le requires se fait dans app.json :

"requires": [
        "font-awesome"
],

Le package Ext JS font-awesome utilise Font Awesome 4.7, il va donc falloir adapter nos applications pour utiliser Font Awesome 5.

Pour cet article, notre application de test consistera en une application basique nommée MyApp générée via un simple :

sencha generate app

Il s’agira d’une application universelle (universal) sur la base du thème Ext JS 6 par défaut : triton.

Elle va comprendre l’icône fa-user de Font Awesome 4.7 et l’icône fa-glasses apportée par Font Awesome 5.

Nous utiliserons l’icône fa-user dans ses 4 versions, la version Font Awesome 4 et les 3 versions Font Awesome 5 : solid, regular et light.

Lorsque l’on utilise uniquement Font Awesome 4.7, voilà ce que l’on obtient :

On remarque que les préfixes fas, far et fal sont « ignorés » par Font Awesome 4.7 et que fa-glasses est inconnu.

Passer à Font Awesome 5 – Solution rapide

Téléchargez le fichier font-awesome-531.zip ici

Dézippez l’ensemble dans un répertoire packages/local/font-awesome-531 au niveau de votre application ou de votre workspace.

Modifiez le fichier app.json de votre application pour utiliser font-awesome-531 au lieu de font-awesome.

"requires": [
        "font-awesome-531"
],

Rebuildez, et voilà le résultat !

Avec le thème Triton, la solution permet toujours d’utiliser les icônes de Font Awesome 4.

Le caractère fal fa-user (PRO) sera inconnu mais c’est le caractère du jeu Font Awesome 4 qui va être utilisé.

Attention tout de même, si l’on avait utilisé le thème Neptune, la solution ne permettrait plus d’utiliser les icônes de Font Awesome 4.

Le caractère fal fa-user (PRO) sera inconnu et rien ne va le remplacer.

Version payante (PRO) de Font Awesome 5

Sans l’avoir nous même essayée, la procédure pour intégrer également les icônes PRO devrait être très similaire. Il suffirait vraisemblablement d’ajouter les fichiers complémentaires au répertoire resources/font (EOT, TTF, WOFF, SVG et WOFF2). Voir la solution détaillée en bas de page.

Notes et limitations

  • N’utilisez plus le préfixe de police x-fa
  • Seul le thème Triton vous permettra encore d’utiliser également les icônes Font Awesome 4
  • Les glyphes Font Awesome 5.3.1 devront utilisés les familles de Font suivantes :
    • ‘Font Awesome Free’
    • ‘Font Awesome Brands’
    • [Probablement quelque chose comme ‘Font Awesome Pro’] pour les icônes de la version payante

Exemple :

{
    title: 'glyph alipay xf642@\'Font Awesome 5 Brands\'',
    glyph:'xf642@\'Font Awesome 5 Brands\'',
    bind: {
        html: '{loremIpsum}'
    }
}

Que contient notre package?

Si vous ne souhaitez pas utiliser le package que nous avons conçu parce que :

  • vous voulez essayer par vous-même
  • ou simplement comprendre en détail comment notre solution fonctionne

voici la procédure à suivre en détails…

La procédure consiste à ajouter Font Awesome 5.3.1 au workspace ou à l’application sous forme d’un nouveau package que nous l’appellerons font-awesome-531.

Ce nouveau package vient REMPLACER la référence à l’ancien package nommé font-awesome. Pour autant, dans le cas du thème triton, nous ferons en sorte que notre nouveau package intègre les version 5.3.1 ET 4.7, les caractères des 2 versions resteront utilisables pour le thème triton.

  • Selon que votre application fasse partie d’un workspace ou non, générez le package font-awesome-531 au niveau du workspace OU de votre application
sencha generate package font-awesome-531
  • Copiez le fichier ext/packages/font-awesome/sass/etc/all.scss vers font-awesome-531/sass/etc (il s’agira normalement plutôt de remplacer un fichier vide)
  • Copiez le fichier ext/packages/font-awesome/sass/src/all.scss vers font-awesome-531/sass/src
  • Créez un répertoire fonts dans packages/local/font-awesome-531/resources
  • Copiez les fichiers ext/packages/font-awesome/ressources/fonts/ vers font-awesome-531/resources/fonts pour également ajouter les icônes Font Awesome 4 dans votre nouveau package.
  • Téléchargez Font Awesome 5.3.1 ici
  • Copiez tous les fichiers depuis fontawesome-free-5.3.1-web/webfonts vers packages/local/font-awesome-531/resources/fonts (EOT, TTF, WOFF, SVG et WOFF2)
  • Copier les fichiers sass depuis fontawesome-free-5.3.1-web/scss vers font-awesome-531/sass/etc
  • Modifiez le fichier font-awesome-531/sass/src/all.scss comme suit :
// All rule-generating imports go here vs in etc/all.scss so that they will
// cascade after the framework rules.  This ensures that where the framework provides
// a default icon, but also provides an iconCls to override it (for example tree icons)
// the fa rules will override the framework ones (assuming specificity of fa rules is
// the same or greater than the framework rules)
@import "../etc/regular.scss";
@import "../etc/solid.scss";
@import "../etc/brands.scss";
@import "../etc/_variables";
@import "../etc/_core.scss";
@import "../etc/_larger.scss";
@import "../etc/_fixed-width.scss";
@import "../etc/_list.scss";
@import "../etc/_bordered-pulled.scss";
@import "../etc/_animated.scss";
@import "../etc/_rotated-flipped.scss";
@import "../etc/_stacked.scss";
@import "../etc/_icons.scss";
 
// The "x-fa" class should be used in Ext JS applications instead
// of "fa".  The "fa" class sets some properties that may collide
// with theme properties, whereas "x-fa" sets only the font-family.
.#{$prefix}fa:before {
    font-family: 'FontAwesome' !important;
}
 
.far {
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 400;
}
.fas {
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900;
}
.fab {
    font-family: 'Font Awesome 5 Brands' !important;
}
//Surcharge de fa-content
@function fa-content($fa-var) {
  @return "#{ $fa-var }";
}
  • Modifiez le fichier package.json du nouveau package comme suit en replaçant le bloc « sass » par ce qui suit (ceci ajoute également le bloc « resources » pour que font-awesome-531 soit ajouté au ressource du build) :

"sass" : {
    "namespace": "FontAwesome531",
    "etc": [
        "${package.dir}/sass/etc/all.scss"
     ],
    "var": [
        "${package.dir}/sass/var"
    ],
    "src": [
        "${package.dir}/sass/src",
        "${package.dir}/sass/src/all.scss"
    ]
},
"resources": [{
    "path": "${package.dir}/resources",
    "output": "shared"
}]
  • Il ne restera plus qu’à modifier le fichier app.json de votre application pour utiliser font-awesome-531 au lieu de font-awesome:
"requires": [
        "font-awesome-531"
],

La Sencha Community Days c’est parti !

Schnitzel, Kartoffeln Salat und … Wasser

C’est déjà la fin de la première journée des Sencha Community Days qui se déroule les 10 et 11 avril 2019 à Karlsruhe en Allemagne.

L’événement a attiré plus d’une centaine de développeurs !

Atanas Popov et Marc Gusmano nous ont présenté une keynote orientée vers la Qualité le Support et l’Innovation. Ce fut l’occasion de dévoiler Ext JS 7 mais pas seulement !
Sencha a présenté de nombreux sujets attendus comme l’arrivée des Web Components ou de Sencha Studio.

Les participants de l’événement ont accueillis cette ouverture avec grand enthousiasme !

Notre équipe a pu assister ensuite à de nombreuses conférences toutes plus intéressantes les unes que les autres. Adrian Teodorescu  qui a participé au développement du framework Ext JS nous a fait découvrir une tonne de trucs et astuces sur le composant Ext JS Grid. Jnesis Labs est impatient de les expérimenter chez nous. C’est ensuite la conférence de Tanay Pant sur le Big Data qui nous a fait forte impression.

Nous avons également pu découvrir d’enthousiasmantes évolutions sur Ext React et le modern toolchain.

Mais les Sencha Community Days ce n’est pas seulement une série de conférences de haut niveau, c’est aussi des workshops sur des thèmes comme le Testing par exemple.

Cette première journée des Sencha Community Days a aussi été riche en rencontres. Nous avons été ravi d’échanger avec des participants et des intervenants venus du monde entier.

A demain !

Jnesis aura le plaisir de présenter demain 11 Avril à 13h30 une conférence intitulée Facebook’s GraphQL – REST in peace? Thomas fera notamment un comparatif entre REST et Facebook GraphQL et nous montrera comment exploiter GraphQL dans une application Ext JS. Nous vous y attendons avec impatience !

Rendez-vous à la Sencha Community Days

Sencha Community Days

L’édition 2019 de la Sencha Community Days se déroulera les 10 et 11 avril à Karlsruhe en Allemagne.

Il s’agit d’une occasion unique de faire un état des lieux de l’écosystème Ext JS dans un cadre convivial. C’est aussi le lieu idéal pour rencontrer les membres de la communauté et partager nos expériences avec les « outils Sencha ».

Les membres de la communauté ainsi que Sencha lui-même tiendront plus d’une vingtaine de conférences sur Ext JS notamment. Les sujets seront variés et parfois pointus comme par exemple « La programmation reactive avec RxJS » ou « Le machine Learning avec Ext JS »

Jnesis sera également présent à la Sencha Community Days où nous aurons le plaisir de tenir une conférence autour de l’utilisation du framework Graphql dans une application ExtJS.

Nous aurons également le plaisir d’y retrouver notre partenaire Bryntum. Mats Bryntse viendra présenter les dernières évolutions du composant Gantt Chart.

Sencha fera également un focus sur les riches actualités de 2018 et 2019. Ils y présenterons notamment Ext React et Ext Angular. Nous y verrons comment les développeurs Front-End Angular JS et React peuvent tirer partie de l’inégalée librairie de composants Ext JS.

L’événement promets d’attirer de nombreux participants avec la venue de conférenciers de renom. N’hésitez pas à venir nous y rejoindre ! C’est en tous cas le plus gros événement mondial depuis la SenchaCon 2016 qui avait eu lieu à Las Vegas.

Pour rappel Jnesis est depuis 2013 le partenaire officiel de Sencha pour la France et pour la Suisse.

Netbeans que se passe t-il ?

Depuis quelques mois, l’environnement de développement Netbeans de Oracle dispose d’une branche Open Source gérée par la communauté Apache.

On a donc maintenant le choix entre deux « natures » de Netbeans mais aucune des deux ne semble être en mesure de suivre le rythme des évolutions de la machine virtuelle.
En effet, la version d’Oracle semble figée à la version 8 de Java alors que la version Open Source peine à passer à la version 10 de Java.
Alors faut il passer à un autre environnement de développement ?

Jean-Philippe Ehret, fondateur de Jnesis vous en parle plus en détails dans la vidéo qui suit. Il vous parlera également des conséquences de cette version sur les cours Java en ligne délivrés par Jnesis.

Java 11 rétrocompatibilité non garantie !

A chaque sortie d’une nouvelle version de Java, notamment de Java 11, se pose la question de la rétrocompatibilité. Puisque certaines API du langage Java n’ont pas été maintenues dans Java 11, il vous faudra alors procéder à une phase de migration de votre application. Ci-dessous la liste des fonctionnalités / packages qui n’ont pas été mainenus :

  • Java FX
  • java.activation
  • java.corba
  • java.transaction
  • java.xml.bind
  • java.xml.ws
  • java.xml.ws.annotation

Par conséquent, si votre application utilise une de ces fonctionnalité, cette phase de migration sera nécessaire.

Jean-Philippe Ehret, fondateur de Jnesis vous en parle plus en détails dans la vidéo qui suit. Il vous montrera quelques symptômes du problème et pour exemple comment migrer une application utilisant JAXB (java.xml.bind).

Java 11 est-il payant ?

Java 11Cette semaine marque la sortie de Java 11 et Oracle accompagne cette version de contrats de support et d’usage payants ! Que nous apprennent ces contrats ? Java 11 est-il payant ?

Pas de panique, cela concerne le Kit de développement Oracle et en choisissant plutôt Open JDK 11, vous ne risquez rien !

Faut-il pour autant passer à Java 11 maintenant ? Même si depuis Java 8 de nombreuses fonctionnalités ont été ajoutées, elle n’intéresseront probablement que très peu d’entreprises dans l’immédiat, attendre la fin du support de Java 8 par Oracle est peut-être la solution la plus évidente.

Java 9 et Java 10 sont en revanche des versions que l’on peut considérées mort-nées.

Jean-Philippe Ehret, fondateur de Jnesis vous en parle plus en détails dans la vidéo qui suit. Il vous parlera également des conséquences de cette version sur les cours Java en ligne délivrés par Jnesis.

Nouvelle formation Javascript

En tant qu’organisme de formations, Jnesis propose de nombreuses formations Javascript. C’est pourquoi nous annonçons avec plaisir la sortie d’une nouvelle formation Javascript intitulée Javacript débutant.
Cette formation de deux jour est à l’attention des développeurs. Elle offre donc une vue d’ensemble des principaux concepts du langage javascript.

La formation Javascript Débutant peut être être délivrée directement au sein de votre entreprise, dans l’un de nos sites (Mulhouse ou Paris) ou en ligne avec un maximum de 8 participants.

De plus, afin d’assurer le bon déroulement de la formation, Jnesis met en œuvre les points suivants:

formation Javascript débutant
  • audit des participants pour valider les prérequis
  • mise à disposition d’un formateur expérimenté
  • transmission d’une liste de matériels et de logiciels nécessaires à la formation
  • mise à disposition des supports de cours au format numérique

Bien que la formation soit non-certifiante, elle fera malgré tout l’objet d’un suivi continu lors du déroulé du cours afin de s’assurer que chaque apprenant acquiert bien les compétences dispensées. Le formateur fait un point quotidien en début de journée sur les compétences normalement acquises la veille.

N’hésitez pas à nous contacter pour tout renseignement complémentaire sur cette formation.

Supports / rencontre ExtJs Paris du 28.03.2018

Comme promis, vous trouverez plus bas l’ensemble des supports des présentations techniques de cette première réunion co-organisée par Barnsten, distributeur officiel, et Jnesis, partenaire officiel de Sencha en France et en Suisse.

Merci encore à tou(te)s les participant(e)s de cette première rencontre de développeurs ExtJS à Paris.

Pour ceux qui veulent aller plus loin, notamment sur la dimension test front-end, automatisation et outillage du build, n’hésitez pas à nous contacter via contact@jnesis.com.

Nous espérons que cet évènement donnera l’envie à l’un ou l’autre d’entre vous d’organiser rapidement des meetups sur Paris afin de réunir de manière informelle la communauté en Ile-de-France et d’échanger autour d’une pizza (ou autre) sur les bonnes pratiques ExtJS et les dernières évolutions du framework.

N’hésitez pas à nous suivre sur notre twitter @jnesis_fr, la communauté Linkedin ExtJS France, et sur le présent blog..

Barnsten et Jnesis – réunion de développeurs ExtJs à Paris

L’événement

Barnsten et Jnesis organisent une réunion de développeurs ExtJs le 28 mars après-midi à Paris, autour de thématiques techniques et stratégiques.

Suite au rapprochement de Sencha et d’Idera, une nouvelle organisation a émergé dans l’écosystème Sencha. Jnesis reste le partenaire officiel Sencha pour la France et Barnsten, déjà en charge de la commercialisation des produits Idera / Embarcadero sera dorénavant votre interlocuteur pour l’acquisition de produits Sencha.

Le programme de la réunion

Le programme de la demie-journée, très orienté échange de développeur à développeur, est le suivant :

Les horaires

13:30 – 14:00 Café d’accueil
14:00 – 14:30 Introduction Barnsten, Roadmap Sencha et l’avenir.
14:30 – 17:00 Conférences 

L’environnement de développement idéal pour ExtJS
De quoi doit-être constitué le cycle de développement idéal d’une application ExtJs, en partant des outils de développement jusqu’au cycle de déploiement?

Comment se place ExtJS dans l’écosystème javascript actuel ?
ExtJs dans la constellation actuelle de technologies Javascript, et comment aborder la problématique du choix du bon framework en fonction des besoins

ExtJS et le flow-programming avec Node-Red
Le flow programming offre des perspectives très intéressantes en terme de vitesse de développement, de lisibilité du développement et des processus. Présentation du produit node-red issu de la recherche IBM en lien avec une application de gestion en ExtJS.

17:00 – 17:30 Questions
17:30 – 18:30 Apéritif

S’inscrire

Pour découvrir le programme et participer à cet événement 100% gratuit, 100% en français et 100% pratique, il suffit de vous inscrire avec le lien suivant :

https://www.eventbrite.nl/e/billets-creez-data-intensive-web-apps-avec-sencha-extjs-paris-en-francais-43694871537?elqTrackId=F81F8D465063D313F7D88CD83FA66D52&elq=84904e025de543ec93801f55a702b300&elqaid=25135&elqat=1&elqCampaignId=9186

Y aller

 

Et pour être tenu à jour des derniers événements, suivez-nous sur notre Twitter !