IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Composants FMX Delphi Discussion :

Delphi + Python : un avis


Sujet :

Composants FMX Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Delphi + Python : un avis
    Bonjour,

    j'ai reçu plusieurs annonces d'Embarcadero mettant en avant les liaisons possibles entre Python et Firemonkey. Dernièement encore, ce matin : version en ligne.

    J'avais commencé hier un message dans le blog Firemonkey intitulé "Encore ronchon". Je ne l'ai pas publié. Je suppose que ma frustration ne concerne que moi et mes exentriques projets. J'essaye d'améliorer un système d'évaluation de la progression pédagogique en mathématiques de chaque élève avec un système de remédiation en cas de difficulté, sachant que je privilégie toujours la feuille, le stylo et surtout l'Enseignant comme ressource tout en sollicitant au maximum l'autonomie de l'élève. C'est un vieux projet de 15 ans commencé uniquement en mode papier, le suivi étant assuré en back-end (informatiquement) à l'époque.

    Donc je cherchais un moyen d'afficher la progression d'un élève. En développement Web, j'ai abandonné le développement propriétaire WebDev de PC SOFT pour utiliser des approches non propriétaires. J'utilise par exemple pour que chacun puisse visualiser sa position par rapport aux objectifs opérationnels du programme des bibliothèques comme arborjs.

    Je me heurte en permanence aux discours d'Embarcadero et la réalité de la mise en œuvre dans la réalité d'un projet.

    Dans un premier temps, j'ai regardé comment intégrer un moteur d'IA dans mon projet avec FMX. Facile semble-t-il : TensorFlow n'est pas pour moi le moteur idéal [les moteurs d'IA sont encore très spécialisés]. Il n'y a qu'a regarder ... Par contre l’adaptation est beaucoup plus délicate. A croire que l’exemple a été choisi pour répondre à la propagande "facilitaire". C'est possible, regardez... Oui effectivement sur cet exemple. Ce qui ne rend pas du tout le portage de TensorFlow dans une approche générale. Sinon aucune bibliothèque native ne semble disponible en Delphi.

    Maintenant en C++, on trouve d'autres librairies que TEnsorflow. Et il y a C++ Builder, donc sauvés ! Sauf que C++ Builder n'admet pas les mêmes cibles que Firemonkey Delphi... C'est bête. Depuis le temps que l'on attend.

    Pour en revenir à mon affichage, j'ai tenté d’incorporer arborjs dans un TWebBrowser. Cela ne fonctionne pas. Certainement un problème d’incorporation des bibliothèques Javascript nécessaires dont jQuery. C'est du lourd effectivement. Existe-t-il une implantation native de "graph network visualization" en Delphi ? Que nenni ! Évidemment on en trouve en C++, en Java et... en Python. On trouve également des moteurs d'IA en Python.

    Et cela rejoint la pub que je reçois. Delphi est-il tellement limité qu'il faille utiliser Python pour obtenir quelque chose ? Mais dans ce cas-là, pourquoi ne pas utiliser Python directement. Je comprends la même démarche en Qt avec Python. On récupère le GUI Qt qui à mon sens est d'excellente facture aussi bien qualitativement que quantitativement.
    Alors Delphi, son livebindings et Python cela présente quel intérêt au juste quand on connaît la complexité de mise en œuvre de l'interface GUI proposé par Delphi ? J'aimerais avoir un éclairage objectif là-dessus.

    Merci. Cordialement. Gilles

  2. #2
    Expert éminent
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Par défaut
    Hello,

    alors, en Java et en C++ ou trouve TOUT, du bon et du moins bon, mais je pense qu'aucun sujet n'a jamais été traité dans un de ces deux langages.

    en Delphi on trouve beaucoup de choses, mais pas tout, il y a des domaines qui ne sont pas explorés par les développeurs Delphi - quand bien même c'est possible.

    il y a parfois des choses surprenantes, comme une implémentation native de OpenSSL sous Delphi, ou le portable de Quake ... des projets qui montrent que c'est est possible....sauf que oui, il est sans doute préférable d'utiliser OpenSSL sous forme de DLL mis à jour régulièrement par une floppée de développeurs que la version Delphi aussi chiadée soit-elle, et utilisée par sans doute très peu de gens (mais là il est question de sécurité donc c'est particulier).

    Pourquoi utiliser Python sous Delphi ? personnellement je ne le ferais pas...je n'aime pas Python mais une des raisons serait d'offrir à un utilisateur la possibilité de créer un plugin pour un logiciel dans un langage plus populaire que Delphi....et d'utiliser éventuellement les bibliothèques Python existantes dans ce plugin...

    Pourquoi utiliser TWebView ? pour exploiter HTML/CSS/JS dans une application Delphi...c'est un choix, notez que la dernière version de Delphi a remplacé le HTML de la page d'accueil par des composants natifs car au final, c'était pas plus difficile de faire un rendu sympa sous Delphi que de faire fonctionner JS avec Delphi

    Bref, je pense que ces bindings sont là pour séduire des développeurs qui aiment ces technologies en disant, avec Delphi vous avez la porte ouverte...je ne suis pas sûr que ce soit payant, mais est-ce dérangeant que cela existe ?

    Après, je l'ai déjà expliqué à plusieurs reprises, dans mon activité, j'utilise plus volontiers PHP pour faire du Web car mes sites Web sont à 80% en Javascript...les 20% qui restent sont plus simples à faire en PHP sur un hébergement OVH que de monter une VM dédiée pour installer une appli Delphi....si j'avais le temps je passerais sans doute un peu de temps sur Pas2Js histoire de remettre du Delphi dans mes développements Web voir un truc qui produise le code PHP côté serveur... ce sont essentiellement des requêtes SQL qui retournent du JSON...quelque chose qu'on doit pouvoir automatiser.
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  3. #3
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 593
    Billets dans le blog
    65
    Par défaut
    Bonjour Gilles,

    Comme d'habitude un peu de mélange et des bindings qui ne passent pas
    Côté Delphi+Python je n'ai touché que la partie utilisation de Python dans Delphi et non utilisation de Delphi pour faire des Interfaces utilisateur pour Python et encore n'ai-je fait qu'explorer deux ou trois bibliothèques. Expérience sympa, mais courte, qui m'a laissé un peu sur l'expectative
    premier test
    Après je me suis "amusé" avec d'autres bibliothèques.
    Je suis resté perplexe sur la récupération de traitement d'images via Python

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par SergioMaster Voir le message
    Comme d'habitude un peu de mélange et des bindings qui ne passent pas
    Oui mélange est bien le terme... pour les bindings,je passe

    Toutes ces "complications" et ces démonstrations "aguicheuses mais limitées dans la réalité" me lassent. Tu fais une étude et tu vérifies point par point si oui ou non c'est réalisable en Delphi, si possible en natif et si tel n'est pas le cas sans "limiter" ce qu'est capable de faire la bibliothèque écrite dans un autre langage et appelée par le code Delphi.

    Il ne me semble pas sublimer le passé mais quand Delphi ( <=7) était mon langage de développement je n'ai jamais butté sur un développement, sur une idée, un "truc à ma sauce". C'était pour moi LE langage généraliste et à tout faire.

    Avec Firemonkey, je rencontre trop d'impasses, trop de solutiosn de contournement. On va bientôt m'expliquer que pour faire de l'IA à partir de Delphi, il faut que j'intègre des bibliothèques Python ! Et comme Paul je ne suis pas adepte de Python... et si je devais "reprendre" mon projet, Python a lui seul me suffirait.

    J'assimile maintenant le Pascal à un langage de niche. Peut-être l'a-t-il toujours été ? Mais le C++ n'est pas un langage de niche alors comment peut-on m'expliquer que les cibles de compilation atteintes par C++ Builder soient limitées par rapport à celles de Delphi Firemonkey ? Et autre question, l'énorme socle de librairies développées en C++ sont-elles intégrables dans C++ Builder ? Ciompte tenu que ce dernier impose -parce que dans les faits c'est une quasi obligation- d'utiliser le LiveBindings et autres bizarreries, je n'ai même pas de certitudes à ce niveau. En attendant même si ce n'est pas raisonnable mais purement psycho-affectif, je n'ai pas l'intention d'abandonner le Pascal... même si j'estime que la solution propriétaire actuelle n'est pas à la hauteur.

    PS : j'ai commencé à faire un composant FMX pour régler ce problème de visualisation, système qui doit optimiser (limiter) les croisements de liens... Il me semble que c'est jouable. Mais combien de temps cela va me prendre ? J'ai basculé vers Qt en production dans mon entreprise parce que Lazarus était trop chronophage au niveau de la réalisation de composants adaptés à mes besoins. A la retraite maintenant, j'ai du temps il est vrai. Alors un pseudo-moteur d'IA (c'est en réalité un mixe de proba et de stats), un composant de visualisation... En lazarus j'avais participé sur ce forum à la création de composants, il y a très longtemps avec quelques passionnés... Cela existe encore de nos jours... en FMX ?

    Cordialement. Gilles
    Dernière modification par Invité ; 06/06/2022 à 15h31.

  5. #5
    Expert éminent
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Par défaut
    tu compares Delphi du jour avec Delphi 7...est-ce que tes développements n'ont pas évolués entre deux ? à l'époque de D7 je faisais 100% de Windows natif en client "lourd", aujourd'hui j'ai bcp plus de webservice ou d'interaction avec le web en général...mais Delphi continue à répondre à mes attentes.

    j'ai aussi 90% des mes développement sous VCL...FMX est vraiment à la marge

    et pour ajouter un Binding, il y a un projet Skia4Delphi qui propose de remplacer le moteur graphique de FMX (disponible aussi pour VCL) par Skia de Google...ceux qui bossent dessus sont très enthousiastes...personnellement j'aurais préféré une initiative de réécriture de Skia en Pascal
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  6. #6
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Paul TOTH Voir le message
    tu compares Delphi du jour avec Delphi 7...est-ce que tes développements n'ont pas évolués entre deux ?
    C'est là le problème. Effectivement la demande des utilisateurs a évolué. Je prends toujours cet exemple : en delphi 7, je n'avais pas besoin de gérer le texte enrichi. Mais cela fait quand même "quelques" années que mes Collègues m'ont réclamé la gestion du texte enrichi dans les bulletins scolaires. Mon premier gestionnaire a été réalisé en Turbo-Pascal ! Va falloir informer Embarcadero que l'on a changé d'époque. Pas facile de trouver une machine à écrire maintenant. Pourtant, ils en sont restés là : TMemo, TEdit, TLabel, TGrid gèrent-ils nativement le texte enrichi ? TMS Software si on aime... Je ne parle pas de l'impression avec le mini HTML de FastReport et pire, pour moi, l'incapacité de générer nativement du pdf dans toutes les cibles desktop. Allez-voir Qt pour avoir un aperçu de la différence ! Il faut quand même pas pousser ! Ils font quoi les programmeurs d'Embarcadero ? En terme de générateur de rapports, actuellement c'est Fastreport un truc antédiluvien comparé à NCReport. Peut-être Quickreport est-il plus performant ?

    Quant à mac et linux, c'est quoi le problème pour C++ Builder ? Il faut dire que la doc m'est incompréhensible :
    Nom : delphi220606.png
Affichages : 495
Taille : 70,7 KoSource : RAD Studio 11.1 Spécifications techniques

    Pour Builder, IHM FireMonkey est disponible pour macOS, avec un add-on tiers pour Linux, mais la compilation est impossible en C++ pour ces 2 cibles. Si je comprends bien, cela ne me permet pas de réaliser des programmes macOS ou Linux avec C++ Builder. PAr contre, on observe qu'en ce qui concerne le mobile RAD 11 est "complet". Dans la réalité, j'estime que Delphi a totalement raté son ciblage Linux et mac OS. Donc, on a VCL pour Windows et on a Firemonkey pour le mobile. On est très loin de Qt qui gére Windows, mac OS, Linux, Androïd et iOS, et d'autres) et très proche des produits PC SOFT Windev pour Windows et Windev Mobile pour Androïd et iOS,.. Et PC SOFT commence à développer nativement des outils pour l'IA et des outils de visualisation. Et Delphi ?

    Bon je vais aller un petit peu coder

    Cordialement. Gilles
    Dernière modification par Invité ; 06/06/2022 à 15h40.

  7. #7
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Paul TOTH Voir le message
    [...]et pour ajouter un Binding, il y a un projet Skia4Delphi qui propose de remplacer le moteur graphique de FMX (disponible aussi pour VCL) par Skia de Google...ceux qui bossent dessus sont très enthousiastes...personnellement j'aurais préféré une initiative de réécriture de Skia en Pascal
    Très intéressant ! En plus les exemples de code me parlent. A la "mimine" A l'ancienne quoi. Merci pour l'info !

  8. #8
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 593
    Billets dans le blog
    65
    Par défaut
    Citation Envoyé par Paul TOTH Voir le message
    j'ai aussi 90% des mes développement sous VCL...FMX est vraiment à la marge
    J'ai choisi la voie inverse pour toutes mes nouvelles applications

    Citation Envoyé par Paul TOTH Voir le message
    et pour ajouter un Binding, il y a un projet Skia4Delphi qui propose de remplacer le moteur graphique de FMX (disponible aussi pour VCL) par Skia de Google...ceux qui bossent dessus sont très enthousiastes
    une bibliothèque tierce, comme il y en a déjà beaucoup, mais, effectivement, intéressante en tout cas niveau graphique elle corrige certains bugs (pas toujours)

    personnellement j'aurais préféré une initiative de réécriture de Skia en Pascal
    Moi j'eusse préféré que SKIA soit intégré "nativement" dans Delphi

  9. #9
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 593
    Billets dans le blog
    65
    Par défaut
    Citation Envoyé par HTML-Dev Voir le message
    PS : A la retraite maintenant, j'ai du temps il est vrai.
    Moi - pas encore, un an ou plus si les choses n'avancent pas.
    Citation Envoyé par HTML-Dev Voir le message
    forum à la création de composants, il y a très longtemps avec quelques passionnés... Cela existe encore de nos jours... en FMX ?
    Du moins je tente d'en faire avec quelques modestes succès (tu trouveras un pdf dans ce dépôt). Gouyon aussi a fait quelques essais. Je suis prêt à ajouter mon expérience à un groupe même hors forum (dépôt git par exemple) dans la limite de mon temps

  10. #10
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Citation Envoyé par Paul TOTH Voir le message
    [...]Après, je l'ai déjà expliqué à plusieurs reprises, dans mon activité, j'utilise plus volontiers PHP pour faire du Web car mes sites Web sont à 80% en Javascript...les 20% qui restent sont plus simples à faire en PHP sur un hébergement
    Oui, j'en suis arrivé à cette même conclusion.

  11. #11
    Membre émérite
    Avatar de Gouyon
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 1 137
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par Paul TOTH Voir le message
    Pourquoi utiliser Python sous Delphi ? personnellement je ne le ferais pas...je n'aime pas Python mais une des raisons serait d'offrir à un utilisateur la possibilité de créer un plugin pour un logiciel dans un langage plus populaire que Delphi....et d'utiliser éventuellement les bibliothèques Python existantes dans ce plugin...
    Moi non plus je ne suis pas très Pythonphyle mais il se trouve que pour un projet je suis en train de faire de l'IA (réseau de neurone et deep learning) et la plus part des librairies sont sous python (TensorFlow...). Du coup bien forcé d'en passer par là.

  12. #12
    Membre chevronné Avatar de der§en
    Homme Profil pro
    Bretagne
    Inscrit en
    Septembre 2005
    Messages
    1 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Bretagne
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 062
    Par défaut
    Je vient d'installé, la dernière version (M+1 depuis ma précédente tentative) et mon problème a l'installation a disparu

    Du coup, je regarde les démos de Python 4 Delphi !

    Je vais aussi regarder du coté de Delphi VCL 4 Python.


Discussions similaires

  1. Réponses: 4
    Dernier message: 20/02/2021, 13h06
  2. Réponses: 0
    Dernier message: 18/03/2015, 10h23
  3. Réponses: 4
    Dernier message: 03/11/2009, 15h00
  4. Débutant : Delphi, Python ou Java ?
    Par Joubarbe dans le forum Langages de programmation
    Réponses: 10
    Dernier message: 11/08/2008, 12h26
  5. Réponses: 4
    Dernier message: 04/03/2005, 10h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo