53
Lycia 4GL, c’est moderne! Eric Vercelletto Architecte et propriétaire Begooden-IT Consulting Ltd Querix www.vercelletto.com www.querix.com

Querix lycia presentation v1.2 fr

Embed Size (px)

Citation preview

Page 1: Querix lycia presentation v1.2 fr

Lycia 4GL, c’est moderne!

Eric VercellettoArchitecte et propriétaireBegooden-IT Consulting Ltd Querixwww.vercelletto.com www.querix.com

Page 2: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Mentions légales

• Les informations contenues dans cette présentation sont sujettes à modification sans préavis.

• Merci de soumettre vos commentaires / suggestions d'amélioration / corrections [email protected].

• Tous les droits sont réservés. Aucune partie de ce document ne peut être reproduit ou transmis, en tout moyen de forme, sans le consentement écrit de Querix (UK) Ltd ou Begooden -IT

• Lycia, LyciaDesktop, LyciaWeb, LyciaMobile et LyciaBI sont des marques de Querix (UK) Ltd.

• Tous les autres produits et noms de sociétés utilisés dans le présent document sont des marques commerciales ou des marques déposées de leurs propriétaires respectifs.

Page 3: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Contenu

1. Informix:• Pourquoi Informix 4GL a été un tel succès?• Evolution de l'offre logicielle de développement• Quelle est la vraie valeur ajoutée des nouveaux langages?• Les préoccupations d'aujourd'hui • Lycia: La solution que vous attendiez

2. Lycia:• Qu'est-ce que Lycia• Avantages pour la production

– Le noyau de Lycia– Le déploiement c’est important: La question du front-end

• Avantages pour le développement:• le Workbench

– Le Debugger graphique interactif– Lycia Form Designer– Lycia Theme Designer– Travail en équipe avec les outls de versionnage de code source

• l'intégration de sous-systèmes de Lycia– C, Java, REST, message queuing

• Les extensions de langage• Lycia et et le développement Web avancé

• conclusions

Page 4: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Un peu d’histoire

Page 5: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Pourquoi Informixf 4GL été un tel succès?

• Informix 4GL – a été publié en 1985 dans un marché hautement concurrentiel.• I4GL a immédiatement reçu une forte adhesion, il est devenu le 2ème langage le

plus utilisé sur les plates-formes UNIX, juste après C

Pourquoi ?

• 4GL fournit un moyen simple, rapide et puissant de développer des applications d'entreprise: – C’est un vrai langage structuré.– Il a une interface native avec les bases de données relationnelles– Il utilise des formes d’écran et un générateur d’états– Il offre la possibilité d'intégrer des fonctions C– le code source est facile à comprendre : lire du code 4GL c’est comme lire de l'anglais

• Plate-forme indépendante: les applications peuvent être compilées et déployées sur toutes les plateformes prises en charge, sans changement de code

• niveau élevé de performance, sans nécessiter des infrastructures matérielles énormes

• débogueur à base d'instructions natives 4GL

Page 6: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Nouveaux langages dans les années 1990:concentration sur l'architecture client-serveur

Et beaucoup plus …

• hégémonie client-serveur

• domination claire des langages orientés-objet

Page 7: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Flux d’évolution dans les années 2000 :conquête agressive du 3-Tier / N-Tier + Web

ET / OU

Rien que du WEB!

Page 8: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Où sont les vrais progrèspour votre entreprise?

• Les applications ont sans aucun doute un rendu graphique beaucoup plusagréable,

• Ces nouveaux langages permettent de mettre en œuvre des fonctionnalitésimpossibles ou très complexes à mettre en œuvre auparavant.

• Les générateurs de code se généralisent: produire un programme devientapparemment beaucoup plus rapide

• Le déploiement Web permet des économies consistantes d'infrastructure

• Ces outils de développement offrent-ils un haut niveau de productivité comme4GL sait si bien le faire?

• Les générateurs permettent de faire des maquettes en un temps record, maissont souvent décevants pour de vraies applications

• Y a-t-il un progrès sur les temps de maintenance des applications, sur lareduction des dépenses et finalement sur la valeur ajoutée?

• Globalement, ces outils font-ils réduire la complexité de vos développements etgénèrent-ils des économies substantielles dans votre département IT ou IS?

Page 9: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Quelles sont les principales préoccupations d'aujourd'hui?

• Intégrer d'autres applications:– Faut-il aller sur le Cloud ?– Pouvoir consommer et fournir des Web Services– Gérer les flux de données asynchrones (Internet des objets)– BOTS, CTI, IBM Bluemix™ ...

• Mieux tirer parti de l’information– Exigences pour les puissants outils de conception de rapports, facilement intégrés dans l'IDE– Introduire de l’informatique cognitive dans votre entreprise (ex: IBM Watson ™ ... )

• Réduire les coûts– Dépenser moins d'argent sur des projets, – Livrer plus rapidement et déployer à temps,– Atteindre les objectifs de budgets

• Minimiser les risques: remplacer une application de travail est toujours un risque sur:– Le budget, – Les échéances, – L’ adoption par les utilisateurs,– La viabilité des opérations de votre entreprise

Page 10: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Où en sont vos applications aujourd'hui et où voulez-vous les amener?

Votre application 4GL constitue un véritable atout pour votre entreprise:– Elle intègre parfaitement l'activité de votre entreprise– Elle est libre de bugs– Les utilisateurs la connaissent comme le fond de leur poche– Elle est flexible: vous ne dépendez pas d’une compagnie-tierce pour l’améliorer et la maintenir.

MAIS• Les jeunes utilisateurs détestent 4GL à cause des écrans en mode texte• L’adoption par les utilisateurs du mode texte est de moins en moins apprécié• Le 4GL “heritage” ne permet pas techniquement de développer certaines

fonctionnalités.• Vos applications ont besoin de communiquer dans les deux sens avec d'autres

applications à l'intérieur / extérieur de votre entreprise• Les développeurs ayant en dessous d’un certain âge sont formés sur les langages

orientés-objet et systèmes de développement pour le Web.– Ces langages impliquent de longs cycles de développement– Ils génèrent des coûts d'entetien élevés .– Ils requièrent généralement une infrastructure matérielle puissante pour exécuter des

applications

• Vous ne savez pas vraiment quelle nouveau langage/IDE sera durable et que vous ne voulez pas parier sur le mauvais cheval.

• L'avenir de la technologie SGBD est incertain pour vous: SQL? NoSQL? Les deux?

Page 11: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Est-ce vraiment une bonne idée de jeter le résultat de décennies de développement spécifique à la

poubelle? L’adoption d’un ERP du marché ne va-t-elle pas me

rendre dépendant de l’intégrateur et introduire

des contraintesinsoupçonnées?

Suis-je prêt à confier le développement de ma

nouvelle application à des personnes ou des sociétés

qui ne connaissent pas mon entreprise ?

Et si le nouveau développement en

interne prenaitfinalement 6 ans, voire10 ans, au lieu des 1 an qu’on m’avait promis?

Ne devrais-je pas m’informer sur le taux d’échec des projets de

remplacement d’applications Informix 4GL avant qu’il ne soit

trop tard ?

Dans quelle mesurema société pourra-t-elle supporter le dépassement de

budget?

L’heure est venue de se poser les bonnes questions!

Page 12: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Querix Lycia est la solution dont vous avez besoin

Les réponses à ces questions vous font peur?

Nous devons avoir une petite conversation

nous sommes totalement convaincus que Querix Lycia est la solution vous avez besoin

Et voici pourquoi

Page 13: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Lycia: pour réduire les risques de projet

• Lycia tire parti de 100% de votre code source 4GL:

– le code source de l'application demeurera inchangé,

– Vous gardez la même application

– Seul l'interface utilisateur va changer, mais en mieux.

• En choisissant Lycia, vous réduisez, voire contournez totalement lesrisques mortels générés par d'autres solutions:

– L’inadéquation entre vos besoins et la nouvelle solution,

– Le délai réel de mise en service,

– La dépendance vis-à-vis de l’éditeur de l’ERP

– la fiabilité du nouveau logiciel,

– L’adoption par les utilisateurs

sans parler de l’épée de Damoclès: le dépassement budgétaire

Page 14: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Avec Lyciavous choisissez la plus solution sûre et plus rapide

• Votre application est le résultat de nombreuses années deconnaissance approfondie de vos processus-métier:– Vous aller entièrement préserver cet investissement qui n’a pas de

prix

• Au lieu de vous demander avec anxiété quand, voire si lasolution de remplacement sera un jour opérationnelle:– vous continuez à garder le contrôle total de votre solution,

– Vous réalisez de nouveaux défis fonctionnels que Lycia renddésormais possibles,

– Vous ne dépendez pas de tierce-parties pour toute modification ounouveau développement,

– Votre infrastructure applicative est de nouveau sur les rails, en bonétat de marche, mais cette fois-ci sur des technologies pérennes.

Page 15: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Qu’est-ce que Lycia?

Lycia est une suite logicielle intégrée qui édite, compile, et déploie programmes et formes d’écran écrits en Informix 4GL. Les programmes obtenus sont exécutés dansun environnement de runtime moderne et technologiquement ouvert.

La suite Lycia est composée de deux ensembles principaux:

LyciaStudio® est le studio de développementdont le langage principal est Informix 4GL. Il est basé sur le standard open-source Eclipse, bien connu pour ses nombreux plugins de qualité.

L’environnement de runtime permetd’exécuter les applications développées avec LyciaStudio dans un environnement de production. Couplé avec un Web Server, ilpermet aux utilisateurs d’exécuter les programmes à partir d’un navigateur internet du marché.

Page 16: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

LyciaStudio®: construisez, testez et déboguezvos programmes

LyciaStudio® est un studio de développement dont le langage principal est Informix 4GL. Basé sur l’IDE Eclipse, il comprend:

• Un éditeur graphique de code-source • Un debugger graphique et interactif• Un concepteur d’écrans graphique• Un concepteur de thèmes graphiques• Votre système de gestion de versions favori• Un Application Server local pour tester et déboguer vos programmes à partir

du Studio

Le fort potentiel d’intégration d’Eclipse permet l’ajout de nombreux plug-ins choisis parmi une bibliothèque de plus en plus riche.

Sont inclus des interfaces avec Java, C/C++, REST, ZeroMQ, Swagger, JS, etc…, permettant de faire des appels, à partir de 4GL, de routines écrites dans ceslangages.

Développez vos propres Web Services en 4GL, et encore mieux, transformez vosfonctions 4GL en Web Services en moins de temps qu’il ne faut pour le dire!

Page 17: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Serveur d’Application Lycia: exécutez vos programmes dans un Environnement d’exploitation

Quand vos programmes sont testés et opérationnels, vous pourrez les déployer versle Serveur d’Application pour les mettre à disposition des utilisateurs finaux.

Le Serveur d’Application fonctionne indifféremment sous Windows et, si vous préférez une plateforme plus sécurisée, Linux.

Conçu à cet effet, le Serveur d’Application peut être installé dans vos locaux maisaussi dans le Cloud, donnant dans ce cas une capacité d’extension de l’infrastructurefacilement mise en oeuvre.

En cas de grand nombre d’utilisateurs ou simplement si vous désirez assurer la Haute-Disponibilité, vous pourrez inclure un load-balancer du marché pour assurer la continuité du service.

Page 18: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Le Noyau de Lycia est rapide et ouvert

Lycia est basé sur une technologie de compilateur “agnostique de langage” qui offre des avantages décisifs:

• Il génère du code indépendant de la plate-forme,

• Les performances obtenues avec Lycia sont proches decelles obtenues avec un binaire de langage C.

• Les applications sont compilées une fois, puis exécutées sur différentes plates-formessans aucun composant additionnel

• Ce compilateur laisse une porte ouverte à l'intégration d'autres langages populaires tels que Java, JavaScript, Python, Ruby, C ++, C #, D, Swift, et plus ...

Page 19: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Lycia rend vos applications évolutives et tolérantes aux pannes

Lycia est conçu pour gérer l’extensibilité et la haute disponibilité:

• Fonctionner sur un serveur d'application, c’est bien.

• Fonctionner sur plusieurs serveurs d'applications offre deux avantages décisifs:

– L'utilisation de load-balancers garantit le meilleur niveau de performance.

– Dans le cas où un serveur d'application est indisponible, les portes d'entrée / équilibreurs de charge redirigera les utilisateurs vers les serveurs d'application disponibles

Page 20: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Lycia et le Cloud

Que vous choisissiez d'exécuter vos applications sur un Cloud public ou un Cloud privé, il suffit d'utiliser le support Docker intégré:

1. Empaqueter votre application avec toutes ses dépendances dans un récipient.

2. Déployer rapidement et facilement sur toute plate-forme Cloud.

Page 21: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

La question du frontal

Au cours des dernières décennies, l'offre front-end est passée des écrans verts au client-serveur, client léger, client du navigateur et plus récemment, client mobile.

Au-delà de tout “hype” technologique, il n'y a pas meilleur client dans l'absolu: c’est une question de cas d'utilisation.

Lycia prend en charge simultanément client léger, client du navigateurou client mobile et s’adapte à vos besoins de déploiement

– TOUS LES TROIS utilisent le même serveur d'applications, déployé une seule fois

– l'utilisateur peut pratiquement choisir d'exécuter l’application sur n’importequell client (en fonction des clients disponibles pour lui bien sûr)

Page 22: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Lycia: la vue globale

■ Compilez et déployez le code une fois et exécutez le n’importeoù

■ Le déploiement d'application couvre tous les aspects de votre infrastructure:■ Le choix de type de client

■ Bureau, Navigateur, Touch, Mobile, Service Web, Rapports

■ Le choix de la plateforme serveur / système d'exploitation - Linux, Windows. 32 et 64 bits.

■ Le choix de la base de données

Page 23: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Développement avec Lycia : Le Workbench

LyciaStudio est un banc de travail tout-en-un basé sur la normeÉclipse, il vous offre• Un accès uniformisé à tous les les objets,• L’édition de code facile, avec des fonctionnalités sympas comme la

reconnaissance syntaxique en couleur, les signets, etc ..• L’éditeur conserve l'historique de vos modifications.• Saisissez le code plus rapidement avec l'assistant de completion

automatique de syntaxe.• Des fonctionnalités de recherche avancées• Profitez des nombreux plugins Eclipse!

Page 24: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Le Debugger interactif graphique

Oubliez la productivité du développement et de la maintenance si vous ne disposez pas d'un débogueur interactif.

• Lycia a un excellent débogueur graphique interactif: créez et utilisezdes points d'arrêt, naviguez à travers le code, surveillez les expressions, visualisez et modifiez les valeurs : tout ce dont vous avez besoin pour une productivité élevée et rendre le troubleshooting efficace.

Page 25: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Divers niveaux de trace et débogage

• m EnterProgram : argc=1

m PID : 188 <C:\ProgramData\Querix\Lycia\progs\sql_trace.exe>

U SqlLogon : logging into maxdev

U SqlLogon : connecting to querix_tcp using provided password

U SqlConnect : database=@querix_tcp cname=*null* usrname=informix pwd=<PASSWORD>

S SqlLogon : Execution time (second): 0.223000

S SqlQuery : select count(*) from maxmsg

u SqlQuery : name=none binds=0 buffers=0

S SqlQuery : Execution time (second): 0.051000

S SqlQuery : select language_code,count(*) from maxmsg group by language_code order by 2 DESC

u SqlQuery : name=none binds=0 buffers=0

S SqlQuery : Execution time (second): 0.135000

S SqlDml : update maxmsg set help_num = help_num where msg_num < 1000

S SqlDml : Execution time (second): 0.053000

DATABASE maxdev

MAIN

SELECT COUNT(*)

FROM maxmsg

SELECT language_code, count(*)

FROM maxmsg

GROUP BY language_code

ORDER BY 2 desc

UPDATE maxmsgSET help_num = help_num

WHERE msg_num < 1000END MAIN

• Il est possible d’activer divers niveau de DEBUG ou trace, dont la trace des requêtes SQL avec leurs temps de réponse (vient en complément de ce que le SGBD peut fournir comme information)

• La fonctionnalité de profilage de code sera implémentée début Septembre 2017

Page 26: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Lycia Form Designer – Comment obtenir un excellent rendu graphique sans peine

• Lycia Form Designer est un parseur bi-directionnel, qui permet d'utiliser un éditeur entièrement graphique pour modifier l'interface utilisateur (formes), oumodifier directement son code source.

• Le Form Designer se synchronise à chaquepassage entre les deux représentations.

• Lycia Form Designer est un éditeurWYSIWYG: Vous voyez dans l’éditeur la même chose que vous verrez en exécutantl’application

Page 27: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Lycia Form Designer: les conteneurs de mise en page

• Les conteneurs de mise en page déterminent le rendu de l’interface utilisateur de votre application.

• chaque forme d’écran a au moins un conteneur (conteneur racine).

• Un conteneur de mise en page peut imbriquer des widgets, d'autres conteneurs et même des aires assignées à des fenêtres.

Page 28: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Lycia Form Designer: les Widgets de formes

• Lycia Form Designer offre à ses utilisateurs un riche ensemble de widgets de formes d’écran parmislesquels ils peuvent choisir.

• Certains widgets peuvent servir de conteneurs pour d’autres widgets, comme par exemple une ListBox est le conteneur pour un ListBoxItems.

• Les widgets peuvent être remplacés dynamiquementou manuellement lors de l'exécution, par exemple en utilisant des touchControls ou des wrappers spéciaux, ceci afin de palier aux limitations déficiences de nouveaux dispositifs.

• Le widget WebComponent donne la possibilité d'inclure une URL externe ou interne / URI dans la fenêtre d'application (ex: google map, prévisions météo, bourse, cotation des devises etc ...).

Page 29: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Lycia Form Designer: Propriétés

• Tous les widgets et les conteneurs ont un ensemble de propriétés dont certaines sont communes à tous.

• Les propriétés de taille et de mise en page peuvent être spécifiées dans uneforme ou dans un thème à l'aide Lycia Thème Designer.

Page 30: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Lycia Form Designer: Événements

• Lycia Form Designer offre à ses utilisateurs un important ensemble d'environ 30 événements au choix, y compris ceux qui déclenchent:

– Des actions,

– Des lots,

– des fonctions,

– Des touches de clavier/touches de function,

– Des URL,

– l'exécution d’un programme.

Page 31: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Lycia Form Designer: Barre de menu

• Pour rattacher une barre de menu ou une barre d'outils à une forme (pas un ring-menu), faitessimplement glisser le widget menu/ToolBar versla zone de conception et déposez les groupes, menus, séparateurs et commandes requis.

• Comment rattacherl'événement (onInvoke).

Page 32: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Lycia Theme Designer

• Lycia Theme Designer est un outil graphique autonome qui utilise des fichiers XML pour gérer les fonctionnalités d'affichage avancémais également le comportement du programme.

• Un « thème » est un ensemble de paramètres de propriété qui permettent aux développeurs 4GL d’établir le look and feel et le comportement de leurs applications, des fenêtres, des formes et des widgets.

• L’utilisation de thèmes rend possible l’application d’un design donnéà un ensemble ciblé de fenêtres et d’éléments, ou bien de façonconsistante sur la globalité de votre application:

• Les thèmes peuvent être conçus à l'aide soit d'un éditeur XML, soitde Lycia Theme Designer. Les deux sont partie intégrantes de LyciaStudio.

Page 33: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Lycia Theme Designer

Page 34: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Je ne veux pas d’un jouet: J'ai besoin de réelles capacités de développement web

• Exécutez dynamiquement des routines JavaScript sur le clientdepuis votre application 4GL, en utilisant des methodes Lycia:

• Lycia

• Prenez la main sur le contrôle de l'interface utilisateur en important dynamiquement des fichiers CSS:

Page 35: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Modifier / Développez votre CSS lors de l'exécutionen mode WYSIWYG

• les Outils de développement pour navigateur (WebDevTools), sont un ensemble d'outils de création Web et de débogage intégré dans le navigateur. – Ils fournissent aux développeurs web un l'accès profond dans les entrailles du navigateur et de leur application

Web.

– Il permet de suivre efficacement les problèmes de mise en page, poser des points d'arrêt JavaScript, et obtenirdes idées pour l'optimisation du code.

Page 36: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Responsive Web Design avec Lycia

En combinant les routines JS et CSS côté client , vos capacités de développement web gagneront plusieurs longueurs d'avance

• Ajoutez des fonctionnalités locales du côté du client: • prendre une photo et l'insérer dans la DB• Mettre à jour les coordonnées GPS ....

• Développez de réelles applications web avec les standardsde design les plus exigeantes.

• Finis les développements spécifiques pour chaque type d’appareil:• Un seul code source,• L’application s’affiche en fonction de l’appareil sur lequel elle fonctionne.

Page 37: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Le travail en équipeavec le versionnage du code source

• L’utilisation d’un bon outil de contrôle de version est un élément-clé pour atteindre la maîtrise totale de votre code source:– elle garantit efficacité et rapidité de développement et maintenance des applications.

• Ceci vaut pour un des développements individuels, pour les grands départements de développement ainsi que pour les projets de développement sous-traités à l’extérieur.

• Lycia comprend un client CVS intégré pour travailler avec les dépôts CVS et la collaboration sur vos projets.

• D'autres outils de versioning populaires tels que GIT ou Subversion peuventégalement être raccordés en seulement quelques clics

• LyciaStudio fournit tous les outils nécessaires pour assurer la meilleure et la plus efficace des collaborations au sein de votre équipe.

Page 38: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Capacités de travail en équipe

Effectuez facilement les opérations suivantes:

• Partagez vos projets avec d'autres développeurs / autres lieux

• Gérez des projets partagés (Check In, Commit, Update)

• Comparez et gérer les révisions

Page 39: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Brisez les barrières de 4GL et vivez dans votre temps!

Oubliez les limitations de l'ancien Informix 4GL:En utilisant des technologies modernes et ouvertes, Lycia peut communiquer avec une large gamme de plates-formes modernes et populaires.

Intégrez les applications Lycia dans des sites Web existants Appelez directement routines et méthodes écrite dans d'autres

langages Connectez Lycia à un systèmes messages queuing, entrants et sortants Grâce à l'utilisation du protocole REST, Lycia peut consommer des

services Web internes ou externes, et également fournir des services Web internes ou externes écrits en 4GL

Lycia ne va pas seulement relooker vos applications 4GL. Au contraire, Lycia va leur redonner un rôle central, ce qui en fera le cœur de votre infrastructure informatique.

Page 40: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Les avantages de Lycia sur le plan de l'intégration

Au-delà de la compatibilité à 100% avec le langage Informix 4GL• Vous pouvez inclure et exécuter des appels de fonctions C et C ++ personnalisées.

• Vous pouvez appeler les méthodes existantes de Java à partir 4GL, avec des paramètresentrants et sortants

• Lycia contient une bibliothèque bien fournie de méthodes de traitement de documents XML, permettant de traiter directement de ce type de données.

• Lycia contient également une bibliothèque destinée à manipuler des données de types JSON

• Vous pouvez utiliser les méthodes de la bibliothèque MS DDE pour communiquer avec des documents Office (valide avec LyciaDesktop uniquement) ou l'API de navigateur pour fonctionner avec le Cloud Office.

• Enfin Lycia contient un ensemble conséquent de méthodes que l’on retrouve dans les langages orientés-objet, telles que la gestion de chaînes de caractères, la gestion des fichiers et bien d’autres encore.

Page 41: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Les vieux cauchemars de 4GL

Bien que Informix 4GL soit un très bon langage, il a sérieuses lacunes, telles que:• La limitation dans la manipulation des tableaux:

• Les tableaux ont une taille fixe,• On ne peut pas les passer comme paramètre de fonction,• Pas de déplacementpar programme du curseur entre lignes• INPUT ARRAY et DISPLAY ARRAY sont des blocs « fermés », logique contraignante

• la manipulation des fichiers:• 4GL n’a de commande de manipulation de fichiers, elle doivent être écrite en C

• La manipulation des curseurs SQL:• Un curseur ne peut pas être passé comme argument de fonction

• l'interface utilisateur médiocre,• C’était bien en 1990, mais ça, c’était avant!

• l’utilisation des commandes-système avec RUN• problèmes de compatibilité entre différents OS,• Faible portabilité

Page 42: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

L'extension du langage 4GL: Les vieux cauchemars de 4GL ont disparu!

Lycia a introduit un large choix de méthodes modernes qui permettent enfin:• La manipulation facile des tableaux statiques et dynamiques grâce à de nouvelles

commandes: • insérer ou supprimer une rangée, redimensionner un tableau, déplacer le curseur

par programme• les tableaux dynamiques (sans nombre prédéfini d’éléments) peuvent à présent être

passés comme arguments lors d’un appel de fonction• Trier dynamiquement un tableau par simple clic sur l’entête de la colonne, • Rechercher dans un tableau avec la Search Box

• L’utilisation de vraies fonctionnalités d’interface-utilisateur, telles que méthodes de dialogue, méthodes pour les formes , les fenêtres, l'interface, le glisser-déposer ...

• D’exécuter plusieurs commandes INPUT ou DISPLAY en simultané (dialog block),• Les curseurs peuvent à présent être passés comme variables et être utilisés dans des

modules différents• De nouveaux types de données et leurs méthodes associées (string, byte, cursor,

form,window…)• La manipulation appropriée des objets- système, comprenant fichiers et répertoires, avec

des commandes Lycia , et non pas avec des commandes OS ou shell• D’autres idées?

Page 43: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

L'extension du langage: Expressions Régulières

Les langages « modernes » incluent des fonctions puissantes et des méthodes que le 4GL classique n'a pas. La syntaxe étendue de Lycia 4GL comprend de nombreuses commandes très pratiques telles que:

• Regex.Match() - Teste STRICTEMENT l'apparition d'une expression régulière dans une chaîne donnée. La chaîne entière doit correspondre à l'ensemble expression régulière et vice versa

• regex.search() - Recherche quand une expression régulière estidentifiée au sein d'une chaîne donnée. L'expression peut n’êtrequ'une partie de la chaîne recherchée.

• Regex.Replace() - Remplace une chaîne donnée basée sur une expression régulière.

Page 44: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

L'extension du langage: bibliothèques XML et JSON

Depuis des années, de nouvelles normes pour les documents et les objets ont joué un rôle majeur dans le champ de bataille des applications .

• XML est maintenant largement utilisé dans de nombreux types d'applications. Ces documents structurés peuvent facilement être manipulés dans vos programmes 4GL en utilisant la bibliothèqueLycia XML, qui fournit toutes les fonctions nécessaires pour créer, modifier et analyser des documents XML.

• Avec l'avènement de l'Internet des objets (IoT), JSON est devenu le moyen standard de transmission et de traitement de données non structurées. Avec la bibliothèque JSON de Lycia, la construction d’applications IoT est désormais possible pour un programmeur 4GL (y compris le streaming de données)

Page 45: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

LyciaWeb API: développer des web services en 4GL (ou transformer votre 4GL applications en services web en un rien de temps)

Vous pouvez wEB-eNabler vos applications avec l'aide de LyciaWeb API sans devoir modifier le code 4GL. Aucun codage supplémentaire pour les différents appareils n’estnécessaire. Choisissez l’appareil que vous souhaitez: PC, ordinateur portable, un smartphone ou une tablette et profitez de la gamme de fonctionnalités fournies par LyciaWeb API:

■ Appelez les Web Services externes (ou internes) à partir dede vos programmes 4GL.

■ Les Web Services externes peuvent appeler la logiquemétier écrite en 4GL.

■ Ajoutez des couches supplémentaires. (Gateway, URLrewriter, Load Balancer, etc: le système est extensible

■ Le modèle de cycle de vie du Web Service est flexible.(Application, session, demande)

■ Les services REST sont disponibles pour les utilisateurs et lesdéveloppeurs.

■ L’authentification est sécurisée.■ Travailler avec LyciaWeb API met à profit les compétences

du développeur et permet de grandes économies de temps.

Page 46: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Manipulez les données de base de données, mais pas que!

• Lycia possède désormais des couches d’intégration qui permettent l'utilisation d'API bien connus comme Google Maps ™ IBM Watson ™, BlockChain, systèmes de CTI et bien d’autres

• Lycia comporte la REST API, qui permet à une application Lycia de communiquer bi-directionnellement avec toute autre application qui peut parler REST

• Grâce à ses commandes spécialisées, Lycia sait se connecter à un système de message queuing, afin d’échanger des flux de donnéessynchrones et asynchrones, très utile pour développer des applications IoT

Page 47: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Edition de rapports avec Lycia

• Lycia intègre l’API BIRT, un éditeur de rapports bien connu du marché, ce qui permet au développeur de générer des rapports de business intelligence à l’aspect professionnel et de les piloterà partir de 4GL.

• Grâce à sa large gamme d'outils analytiques, BIRT permet d’assurer les besoins en terme de reporting, que cesoit pour les tâches quotidiennes oubien les tâches plus stratégiques de support à la decision.

• Avec un riche ensemble d'outils d'entreprise intuitifs, BIRT propose la création de rapports interactifs et la personnalisation sur un large éventail de sources de données.

Page 48: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Outils de productivité: FGL App Analyzer

• 4GL App Analyzer construit votre documentation de l'application d'une manière dont vous avez même pas rêvé (www.querix.com/analyser)

– Description des objets et références: tables, formes d’écran, variables, fonctionset rapports ...

– Diagrammes de flux détaillés

– Construisez une documentation complète en format html, pdf ou ‘manpage’, et obtenez facilement et rapidement une connaissance approfondie de vosapplication qui représentent des années de développement.

Page 49: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Ceci était votre application

Page 50: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Ainsi sera votre application

Page 51: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Ajouter une touche de magie avec CSS et JavaScript

A partir d’un rendu «sans plus»

Convertissez les plus sceptiques, ils ne croiront pas que ceci est une application 4GL!

Page 52: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Envisagez l'avenir avec sérénité

• Lycia n’est pas qu’une opération de chirurgie plastique pour vos applications 4GL: sa vision à long terme offre les bonnes solutions à vos besoins actuels et futurs.

• Il permet à votre entreprise de garder le contrôle sur vos applications, qui représentent souventdes dizaines d’années de développement et de savoir-faire, et de fournir une feuille de route claire grâce à son environnement basé sur des composants standards.

• Lycia préserve votre entreprise des risques que vous fuyez. Mettre au rebut une application qui remplit correctement son rôle et la remplacer par un système qui n'existe que sur le papier induitdes risques inconsidérés: risque financier, risque de dépassement (explosion) de délais de livraison, sans parler du risque de livrer une application qui aura du mal à se faire adopter par les utilisateurs, et qui au mieux coûtera cher en temps et dépenses de formation.

• Cela prend des années pour former un développeur Java, cela prend quelques semaines pour former un bon développeur 4GL!

• Votre équipe de développeurs voudra continuer à utiliser Lycia et 4GL pour les nouveaux projets, car il est prêt pour les prochains défis techniques et fonctionnels.

• Last but not least: le dépassement budgétaire n'est pas une fatalité. Investissez l'argent et le temps que vous avez économisé en adoptant Lycia pour améliorer vos applications et êtreopérationnel pour les nouveaux défis de votre business!

Page 53: Querix lycia presentation v1.2 fr

Lycia: 4GL is modern!

Merci!

www.querix.com/lycia

www.vercelletto.com

Lycia 4GL est moderne!