Delphi et C++ Builder s'ouvrent à Linux :
Une vidéo livre un aperçu des applications serveurs possibles

Le , par gvasseur58, Responsable Delphi
Comme le laissait entendre la feuille de route qui accompagne dorénavant le développement de Delphi et de C++ Builder, la version baptisée 10.2 Godzilla devrait sortir au cours du printemps à venir : un indice de l’imminence de l’annonce d’une telle mise sur le marché réside dans la production d’un nouveau Boot Camp réservé à Linux.




Après le revers de Kylix dont le développement a été arrêté en 2002 du fait de ses faibles retombées économiques, on pouvait s’attendre à ce que le monde de Linux soit définitivement hors de portée des développeurs Delphi et C++ Builder, mais Embarcadero a décidé de concentrer ses efforts sur le côté serveur du système d’exploitation. Il est inutile par conséquent d’espérer, au moins dans un premier temps, un calque des interfaces utilisateur offertes par la VCL ou FireMonkey pour Windows, Androïd et iOS : il faudra plonger les mains dans le moteur et s’en tenir au mode console pour tirer parti des nouvelles fonctionnalités des deux EDI !

Afin d’aider les développeurs qui souhaiteraient franchir ce pas, Craig Chapman (consultant logiciel pour Embarcadero) a produit une longue vidéo décrivant les étapes du développement d’applications de plus en plus complexes. Le traditionnel « Hello world! » est ainsi précédé d’une installation et d’une configuration détaillées d’une machine virtuelle via VirtualBox et de la distribution Linux Server de Ubuntu 16.04.2 LTS dans sa version 64 bits. La communication entre les systèmes d’exploitation est par ailleurs confiée à WinSCP, un client SFTP et FTP issu du monde du logiciel libre. Le déploiement de cette application rudimentaire depuis Delphi sur Linux est ensuite largement décrit. Poussant plus loin ses investigations, Craig Chapman travaille alors avec un serveur Web autonome puis un serveur Apache avant d'y associer des outils de bases de données grâce à FireDac. Enfin, la parole est donnée à ceux qui participaient à ce Boot Camp pour une série de questions.


D'après les informations fournies par cette vidéo, les distributions autour de Debian et Slackware seront supportées, mais seulement dans leurs versions serveur 64 bits.

Voici une capture d'écran lors de la création d'un module WebBroker :



Lors de cette capture, le travail avec une base MySQL a commencé :




Qu'attendez-vous de la nouvelle version de Delphi et de C++ Builder ?

L'ouverture sur le monde de Linux vous semble-t-elle importante ?


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de SergioMaster SergioMaster - Rédacteur/Modérateur https://www.developpez.com
le 04/03/2017 à 8:38
Bonjour,

j'ai suivi ce boot camp lors de sa présentation avec attention (du moins la partie démonstration la partie Q/A étant toujours beaucoup plus ardue). Il est heureux quelle soit disponible en visionnage qu'il faut sans aucun doute voir plusieurs fois et avec beaucoup de pause sous peine d'être perdu. La partie Firedac est bien trop survolée.

OUI, pour moi l'ouverture LINUX est très importante, cette version permet d'envisager des programmes multi-tiers dont la partie "serveur" se trouverait hébergée et ça c'est la grosse nouveauté, l'introduction nous permet de bien comprendre que face à la diversité de versions LINUX un choix drastique a du être fait et j'espère que cela permettra de taire les polémiques telle que "pourquoi cela ne fonctionne pas pour ma version de Linux?")

Pour ce qui est de l'utilisation, Graig Chapman nous montre un LINUX serveur AMHA c'est un peu dommage ,beaucoup Windowsien vont se retrouver perdus (plus de GUI , commandes rébarbatives etc... Si cela met bien en situation sur un serveur hébergé pour le developpeur une version LINUX Desktop aurait certainement fait moins peur (je pense pouvoir dire que cela aurait fonctionné tout aussi bien, à vérifier lorsque Godzilla sortira de son trou)

Le déploiement de cette application rudimentaire

application rudimentaire c'est le mot qui convient, difficile de se projeter vers des applications de gestion si ce n'est en se reportant aux différentes interventions (vidéos/tutos) sur la programmation multi-tiers. Car c'est bien de cela qu'il s'agit, pour l'instant cette version ne permet que ce genre de programmation.

Maintenant, plein de questions restent en suspend quant au choix de la solution à adopter : WebBroker, Datasnap , Datasnap+WebBroker ajout de REST ...
de même, si j'ai bien compris, tout cela s’appuie sur Indy s'agit-il d'une version bridée en nombre d'utilisateurs ou non comme nous avons pu être habitué à avoir dans le passé ?

En tout cas c'est un pas en avant, j'ai vu qu'il était évoqué mais pas encore envisagé concrètement d'aller plus loin (composants visuels FMX), je croise les doigts pour que cela vienne. Oui, d'après les sources Wikipédia et autres, LINUX est peu répandu dans le monde des entreprises, mais s'il y avait des programmes (je ne parle pas de OpenOffice et autre programmes bureautiques mais de programmes de gestion) répondant aux attentes peut être que l'utilisation s'en répandrait. Cela fait bien 10 ans que j'attends cela

en attendant je vais me mettre à l'HTML et au CSS et me pencher sérieusement sur les techniques multi-tiers
Avatar de marc.collin marc.collin - Membre confirmé https://www.developpez.com
le 04/03/2017 à 18:49
La majorité du développement se fait en mode web.

Ceux désirant faire du desktop multiplateforme ont plusieurs possibilité et n'ont pas attendu delphi pour le faire: java, .net, Qt, lazarus

Delphi, C++ Builder est un marché de niche, la portion sous linux le sera encore davantage.

J'espère que le produit sera meilleur que kylix...
Avatar de gbegreg gbegreg - Membre éprouvé https://www.developpez.com
le 05/03/2017 à 0:59
Bonsoir,

"La majorité du développement se fait en mode web" : une partie importante se fait en web c'est certain, mais il y a aussi beaucoup de choses qui se font dans d'autres domaines : le desktop en est un mais il y a aussi l'IoT, les plateformes mobiles (Android, IOS...). Quand on dit multi plateformes avec Delphi ou C++ Builder ce n'est pas que pour du desktop
L'arrivée de Linux dans les plateformes cibles est une chose qui était attendue.
Avatar de Paul TOTH Paul TOTH - Expert éminent sénior https://www.developpez.com
le 05/03/2017 à 11:19
hum...il est dommage que Craig présent les choses de façon aussi complexe...

1) inutile de transférer manuellement le .so vers Linux puis de le copier sous root, PAServer se charge déjà de créer le fichier sur Linux (tout comme dans sa première démo)

2) inutile de placer le .so dans le répertoire /usr/lib/apache2/modules, le fichier .load peut tout à fait pointer ailleurs, et d'autre part Linux propose des liens symboliques qui permettent de donner, en quelque sorte, plusieurs noms au même fichier. Donc le fichier peut être déployé par Delphi dans les scratch-dir de PAServer et exister comme lien symbolique dans /usr/lib/apache2/modules.

3) il est un peu dommage de taper du SQL en ligne de commande sous Linux quand on a un Delphi complet sous Windows...mais ça c'est un détail

4) il crée les composants FireDAC à la main, mais dans DataModule Linux on peut évidemment utiliser les composants visuellement
Avatar de hmira hmira - Membre éprouvé https://www.developpez.com
le 16/03/2017 à 14:00
Bonjour et Merci pour cet article.
Je trouve cet article très intéressant et prometteur.
J'ai 2 questions :
Est-ce que les bases de données DB2, sont déjà (ou seront d'ici peu) supportées (via FireDAC "version Linux") pour les Développement Web sous Linux ?
Idem, même question que je pose exactement dans les mêmes termes, pour les composants Indy ? Est-ce qu'il y a déjà (ou il y aura d'ici peu) un support des composants Indy pour Linux ?
PS :
- Pour moi, ce sont des questions déterminantes (j'en ai bien d'autres !) pour envisager la migration de grosses applications Web (100% console et 100% WebBroker/Indy, n'utilisant donc aucunement la CLX), applications développées et encore maintenues aujourd'hui sous Kylix (plateforme Linux Rd Hat).
- J'ai cru comprendre que la technologie WebBroker est déjà portée sous Linux.

Merci.
A+
Avatar de SergioMaster SergioMaster - Rédacteur/Modérateur https://www.developpez.com
le 17/03/2017 à 8:55
Bonjour,
Citation Envoyé par hmira  Voir le message
Est-ce que les bases de données DB2, sont déjà (ou seront d'ici peu) supportées (via FireDAC "version Linux") pour les Développement Web sous Linux ?

comme la version est encore en beta difficile de répondre pour la partie Linux, à ce que j'ai pu voir (différentes vidéos et il faut vraiment y aller au ralenti) le connecteur pour DB2 est proposé mais ..., le mieux est peut être de demander directement sur EDN (Delphi/base de données/Firedac) Dmitry Arefiev y répondra certainement

Idem, même question que je pose exactement dans les mêmes termes, pour les composants Indy ? Est-ce qu'il y a déjà (ou il y aura d'ici peu) un support des composants Indy pour Linux ?

même réponse, ceux qui ont la chance/courage/temps de tester la version sont tenu à la clause confidentielle. Cependant, il est facile de déduire que oui car : Indy "tourne" déjà sous Linux (paquets Lazarus) et

- J'ai cru comprendre que la technologie WebBroker est déjà portée sous Linux.

c'est ce que j'ai compris aussi( c'est même le programme de démo) Mais il y a aussi le datasnap et les technologies REST/JSON
Donc, comme tout ceci s'appuie un peu (beaucoup) sur Indy C.Q.F.D.

roadmap
Avatar de hmira hmira - Membre éprouvé https://www.developpez.com
le 17/03/2017 à 11:56
Citation Envoyé par SergioMaster  Voir le message
Bonjour,

comme la version est encore en beta difficile de répondre pour la partie Linux, à ce que j'ai pu voir (différentes vidéos et il faut vraiment y aller au ralenti) le connecteur pour DB2 est proposé mais ..., le mieux est peut être de demander directement sur EDN (Delphi/base de données/Firedac) Dmitry Arefiev y répondra certainement

même réponse, ceux qui ont la chance/courage/temps de tester la version sont tenu à la clause confidentielle. Cependant, il est facile de déduire que oui car : Indy "tourne" déjà sous Linux (paquets Lazarus) et

c'est ce que j'ai compris aussi( c'est même le programme de démo) Mais il y a aussi le datasnap et les technologies REST/JSON
Donc, comme tout ceci s'appuie un peu (beaucoup) sur Indy C.Q.F.D.

roadmap

Merci beaucoup SergioMaster pour vos réponses, ainsi que pour les contacts et les liens indiqués. C'est très instructif.
Tout cela donne des lueurs d'espoir pour la migration des anciennes applications Web développées sous Kylix, voire même le développement de nouvelle applications Web pour Linux.
Mais, comme tout cela est encore en version Beta, je vais donc attendre la sortie officielle de la prochaine version de Delphi intégrant ces nouveautés.
Je vais toutefois continuer à suivre de plus près ces annonces et ces évolutions.
Il s'est passé plus 15 ans ! entre l'arrêt du projet kylix (je crois en 2002) et cette nouvelle version baptisée "10.2 Godzilla" prévue pour 2017
La migration des anciennes applications console Kylix (WebBroker) (s/ Linux) nécessitera vraisemblablement beaucoup d'efforts et investissements humains. En effet, Il faut aussi compter avec les composants (Kylix/Linux) développés par des sociétés tierces et intégrés dans les applications, etc.
En revanche, il s'agit d'une opportunité très intéressante, pour le développement, sous Delphi nouvelle mouture, de nouvelles application Web pour Linux intégrant des technologies comme REST/JSON.

A+
Avatar de tomy2lee tomy2lee - Candidat au Club https://www.developpez.com
le 19/03/2017 à 5:15
La question qui me concerne le plus qui est: "L'ouverture sur le monde de Linux vous semble-t-elle importante ?"

Importante? Je dirais plutôt: "Vitale!"... Comme l'oxygène restant dans l'air que l'on respire.

Si j'étais capable de poser un grain de sable dans cette structure sous Linux, je passerais ma vie entière à réaliser cette mise en œuvre, apporter mon grain de sable.

Pourquoi? ... A mon age j'en ai supporté des malversations venants d'outre-atlantique ou du soleil levant; La dernière en date? L'explosion des applications petites ou grandes en version: Payez modérément la première fois, et puis, abonnez-vous par mois, ou par an...

Quelle déception le flop du smartphone Linux! Comment est-il possible que Linux existe? Et que l'on se pose la question: Pourquoi?
Avatar de ApproxDev ApproxDev - Membre actif https://www.developpez.com
le 19/03/2017 à 10:40
Bonjour,

Citation Envoyé par gvasseur58  Voir le message
D'après les informations fournies par cette vidéo, les distributions autour de Debian et Slackware seront supportées, mais seulement dans leurs versions serveur 64 bits.

On a la chance qu'il y ait une version distincte entre 32 et 64 sous Nux... Et pour les Windowsiens [donc la plupart des Delphistes] pour qui le 32 bits suffit, il faut quand même prendre en compte (et visiblement, ici c'est le cas) qu'il y a belle lurette que les Linuxiens n'utilisent plus que du 64 bits pour leurs serveurs (qui représentent certainement la majorité des serveurs déployés)... ne serait-ce que pour dépasser les 4 Go.

Citation Envoyé par gvasseur58  Voir le message
Qu'attendez-vous de la nouvelle version de Delphi et de C++ Builder ?
L'ouverture sur le monde de Linux vous semble-t-elle importante ?

Pour le reste, c'est quoi cette approche Nux ? Du Linux à la sauce Windows ? Cela semble horriblement compliqué ! Il est peu probable que je développe un jour de tels projets pour mes serveurs.
Je digère déjà mal le livebinding qui je trouve totalement indigent pour les accès réseau, les styles trop compliqués à mon goût et maintenant l'approche Linux me consterne. Aïe aïe aïe !

Ce que j'attends des prochaines versions, de la polyvalence, de l’efficacité de traitement pour l'utilisateur des programmes développés avec Delphi, ce qui n'est pas toujours le cas (livebinding sur des grands volumes de données) mais surtout une approche simple et rationnelle au niveau de la programmation. C'est loin d'être le cas depuis Firemonkey. Et enfin (voire surtout), je voudrais un IDE fonctionnant nativement sous Windows, Mac OS et Linux : la cross-compilation pour un outil de ce niveau n'est acceptable que quand on ne peut pas faire autrement, donc en aucun cas pour des environnements Desktop.

Cordialement. AD.

PS : j'utilise rarement les "plus" mais pour le cri du coeur de tomy2lee, juste au-dessus dans le fil de cette discussion, j'ai dérogé.
Offres d'emploi IT
Lead Développeur Full JS pour Challenger une équipe de 8 développeurs
Bluecoders - Ile de France - Paris (75000)
Associate IT Consultant (M/W)
RH CONSEIL - Luxembourg - Luxembourg
Développeur Java H/F
SMILE - Rhône Alpes - Lyon (69000)

Voir plus d'offres Voir la carte des offres IT
Responsables bénévoles de la rubrique Delphi : Gilles Vasseur - Alcatîz -