CONFERENCE BORLAND 2000

14 & 15 décembre 2000

 

ACCUEIL / PETIT DEJEUNER

Après un accueil très sympathique, remise de la traditionnelle sacoche et du programme, nous nous retrouvions à un petit déjeuner convivial au sein de l’espace réservé aux stands des exposants. C’était l’occasion de rencontrer ses homologues professionnels, d’échanger ses connaissances et aussi parfois de rencontrer de visu ceux que l’on connaissait bien mais par l’intermédiaire des forums (nzn.vienneinfo.org …)

 

 

SESSION D’OUVERTURE

Dale Fuller, président et CEO de Inprise Corporation introduit la conférence en présentant les résultats positifs et croissants de l’entreprise ainsi que le changement de nom en Borland Software Corporation : « Le nom de Borland a toujours été synonyme d’excellence technologique ». A ses côtés, David Intersimone, vice-président des relations avec les développeurs nous « contait » les enjeux de demain. Ce n’était qu’un échauffement car le gourou américain allait présenter non pas moins de 6 sessions, dont Kylix…

Linux au centre des enjeux de Borland…Pour la petite histoire, c’est une enquête (couronnée de succès et d’enthousiasme) auprès des borlanders qui a amené Inprise à entreprendre le portage de Delphi et C++ Builder sur Linux. Jbuilder quant à lui est déjà écrit en Java ce qui permet de l’exécuter  sur différents OS.

Ils nous ont rassuré en ce qui concerne Interbase. Inprise soutient et croit entièrement au succès de son SGBD libre Interbase.

 

La conférence annuelle Borland s’est déroulé au CNIT La Défense à Paris les 14 et 15 décembre. Il s’en est fallu de peu pour que la dernière conférence saute un millénaire !

Pas de nouvelle version cette année, mais un nouveau produit… Tous les développeurs l’attendent avec impatience, il est déjà célèbre avant d’être sorti, mais on a enfin pu le voir fonctionner : Kylix, la version Linux de Delphi et C++ Builder. Il sera mis sur le marché au premier trimestre 2001.

Les interventions des experts lors des sessions ont permis de « sentir »  les orientations des métiers du développement. Ainsi, les chapitres internet, informatique mobile et architectures distribuées ont trouvé une large place dans le programme, évidemment on retrouve la politique d’Inprise en matière d’informatique d’entreprise (serveurs d’application etc.…)

UML était également à l’honneur pour les spécialistes de la modélisation objet, les outils de génération de code Delphi, C++, Java à partir d’une analyse UML pointent du nez et impressionnent !

Enfin, Inprise redonne à Borland ce qui est à Borland : Son nom. Les borlanders ne feront qu’approuver. Bienvenue à Borland Software Corporation J.

 
                                                 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


 

 

 

 

 

SESSIONS DE FORMATION

Ne pouvant pas physiquement participer à toutes les sessions présentées – à mon grand regret – j’ai donc effectué un choix, totalement personnel qui n’entache en rien la valeur des autres sessions. Il y a aussi certaines sessions auxquelles on souhaitait participer mais par manque de place, on se retrouvait dans une autre salle. Rarement en le regrettant d’ailleurs…

 

UML

Unified Modeling Langage, un standard OMG en matière d’analyse et de modélisation objet. J’avais abordé le sujet il y a un an environ sur les conseils d’un ami chevronné et magicien à ses heures perdues*. Il ne s’était pas trompé, l’engouement est bien là, les perspectives sont claires et la démonstration par l’exemple nous « bluffe ». Même les « merisiens » purs et durs s’y mettent, c’est dire…(malgré le pied de nez  à Merise qui consiste à lire les cardinalités dans le sens contraire)

UML, c’est un ensemble de notations qui permettent de représenter un problème à tous les niveaux d’abstractions possibles, de l’utilisateur final jusqu’à l’objet le plus technique de l’application. On peut toutefois rationaliser cette analyse pour générer  automatiquement, à l’aide d’outils adaptés, un squelette de code.

Les outils de modélisation UML phares sont Rational Rose et Mega Developpement. Je ne les ai pas tous en mémoire, mais je peux citer deux autres produits qui ont l’avantage d’être libres de droits d’utilisation : Objecteering dans sa Personal Edition et ArgoUML écrit en Java.

Des sociétés se sont appuyées sur ces softs de modélisation pour développer des produits complémentaires permettant la génération automatique du code.

François Chaumartin de Information Technology Software nous a présenté de façon éloquente un framework de persistance pour Delphi : Nstore. A partir d’un fichier d’analyse produit par les outils Rational Rose ou Mega, il est capable de générer des unités définissant les fenêtres de l’application, les objets métiers, les datamodules et la couche persistante des objets. Notons que c’est une alternative intéressante à l’emploi de réelles bases de données objet qui n’offrent pas encore de réel standard, et qui permet surtout de s’appuyer sur des SGBD relationnels classiques tels que Interbase, SQL Server, Oracle, Sybase SQL à travers les middleware BDE ou ADO et il me semble que DBExpress aussi.

Pour ceux qui n’ont pu participer à cette session, je recommande vivement l’acquisition du CD de la conférence qui contiendra les fichiers relatifs à chaque session. Ainsi vous pourrez découvrir à travers un exemple de gestion classique (gestion de bibliothèque) l’analyse UML accompagnée du code généré par Nstore.

 

MIDAS

Au tour de Mitsuru Furutra de Fi Systems, Consultant en architectures distribuées de nous louer les avantages du middleware MIDAS.

MIDAS propose une architecture qui permet à des applications de collecter des données sur un serveur SGBD, et de servir ces données à des applications clientes. Le client  se contente de récupérer les données sur le serveur d’application. Ces dernières sont dès lors totalement indépendantes d’un SGBD quelconque. On parle d’architecture n tiers.

Delphi nous offre une palette de composants qui permettent de construire des applications MIDAS standard mais aussi des applis web MIDAS.

L’intérêt est de disposer d’une plate-forme middleware collectant les données et gérant les règles et contraintes liées aux données.

Ensuite, le client qui lira les données pourra être un terminal windows, un explorateur web etc.… peut importe car la gestion des données est décentralisée.

 

 

Une des particularités de MIDAS est d’offrir différents types de connexion entre le client et le middle tiers. Sur le schéma, nous voyons qu’elle s’effectue au travers de DCOM, mais on peut également l’établir à l’aide des sockets, de Corba, de http. On choisira la connexion en fonction des contraintes d’administration réseau et de la simplicité de configuration.

MIDAS, à travers le composant ClientDataSet nous offre des possibilités gigantesques et pas seulement en termes d’architectures distribuées.

Par exemple, dans le contexte d’une utilisation locale de MIDAS, autrement dit en éludant les parties Middle Tiers et DataBase Tiers, on peut tirer profit du ClientDataSet.

Ce composant peut nous servir de table de données locale, temporaire. Il est donc possible de créer des tables virtuellement, de travailler sur ces données avec toutes les méthodes disponibles dans le dataset de la VCL (first, next, locate, insert, post, delete etc.) et d’enregistrer le lot dans un fichier linéaire. Schéma inverse, il peut lire ce fichier linéaire et reconstituer magiquement la table inhérente. Et ce sans aucun besoin de BDE, d’ODBC ou autre. Seule midas.dll est requise, environ 200 ko…

Tiens, je m’en suis servi récemment pour ceci :

J’avais une DBGrid affichant le résultat d’une requête SQL qui sortait des statistiques par produit et par sites. Seulement on pouvait retrouver plusieurs fois le même produit à cause de la multiplicité des sites. Le client souhaitait afficher des sous totaux par produit et ce avec une couleur différente. Classique.

J’ai créé un DataSet à l’aide du TclientDataSet en calquant les champs sur ceux de la requête. Ensuite j’ai copié un à un les enregistrements du Tquery vers le dataset. Par contre, à chaque saut de produit, j’ai inséré une ligne supplémentaire dans le ClientDataSet conservant le sous total du produit respectif.

Pour la mise en forme couleur, il suffit d’implémenter les évènements de dessin personnalisés de la grille. Le résultat est impeccable et rapide.

Le plus important est que cette façon de travailler avec MIDAS ne requiert pas de licence. En effet seuls les cas où les paquets de données transitent d’un pc à un autre demandent l’achat de licence auprès d’Inprise.

Je n’ai pas assisté à des séances où l’on traitait de CORBA, un protocole cette fois-ci multi-plateforme, gageons qu’avec l’arrivée de Kylix, il prenne une place non négligeable dans l’étude de nos développements.


Kylix ?

 

On s’est réservé le meilleur pour la fin. Quelques « copains du forum » en ligne de mire en face de David I, « the gourou of the developers ».

François Chaumartin avait commencé la veille et David Intersimone a clôturé l’après-midi de la deuxième journée avec Kylix. Un vote à main levée dans l’amphi montrait facilement la supériorité numérique des développeurs Delphi présents.

Ce qui m’a séduit, c’était le screenshot de démarrage du diaporama powerpoint d’Intersimone. Espérons qu’il sera sur le CD de la conf. Des pingouins y sont représentés sur la banquise mais l’iceberg est sculpté en logo Windows 3D, et les pingouins se jettent à l’eau. Saisissant J.

Le démarrage de Kylix, hormis l’OS Linux auquel la plupart d’entre nous sommes encore peu habitués, nous a donné un air de déjà vu. Et comment ! Delphi en Live ! Mais sous Linux. Le portage graphique est bluffant.

Mais le plus important était d’anticiper sur ce qu’allaient devenir nos applications Win32.

Alors les appels aux API Windows ne seront pas traduits en appels aux API Linux bien sur. Par contre la VCL à été entièrement réécrite et remaniée et à l’instar de l’environnement graphique, les développeurs seront peu désorientés. Bienvenue à la CLX (prononcez Clix). On retrouve quasiment la même hiérarchie d’objets. Une librairie Internet a été ajoutée, la NetCLX qui est en fait la célèbre librairie Indy (anciennement Winshoes) de la société Nevrona.

Du côté des bases de données, un effort important a été fait. Nous aussi allons devoir en faire un peu et dire adieu au BDE vieux compagnon de voyage. C’est avec DBExpress que nous allons devoir compter maintenant, et on nous promet un accroissement de performances qui pourrait aller jusqu’à 40%, on attend ça !

Les premières bases supportées seront au moins Interbase et MySQL (fort de son succès sur le web).

Le petit point négatif c’est que l’on aurait bien aimé repartir de la conférence avec le CD de la bêta, mais l’annonce de l’envoi postal de celui-ci un peu plus tard au cour des fêtes en a frustré plus d’un :-) !

 

 

Globalement, la conférence est le bon moment pour se remettre en cause et choisir ses nouveaux outils de développement, pour s’ouvrir aux nouvelles technologies pour lesquelles on remet toujours à plus tard l’apprentissage. Ici, une heure et demi de présentation et vous êtes sur les rails. Alors partants pour l’année prochaine ? Oups ! cette année…

Sans aucun doute !

Meilleurs vœux de bonheur à tous.

 

Sylvain JAMES

Sylvain.james@developpez.com