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

  1. #1
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    septembre 2015
    Messages
    252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : septembre 2015
    Messages : 252
    Points : 268
    Points
    268

    Par défaut Quelques réflexions d'un débutant

    Bonjour,

    j'avais demandé quelques informations, il y a quelques semaines et je me suis astreint à utiliser une version personnelle complète de PureBasic pendant ce laps de temps en portant ou essayant de porter des projets personnels développés en Lazarus ou en Qt, le tout sous Windows 7 et 10, ubuntu-16.04.3-desktop-amd64 et macOS High Sierra 10.13.1 (64 bits).

    • Installation : rien de particulier à signaler. Comparé à Qt ou Lazarus, c'est même plus simple. L'environnement est immédiatement fonctionnel.

    • Recompilation de l'environnement : Impossible.... j'en reparlerai plus loin

    • Facilité d'apprentissage. RAS : ce n'est pas du langage objet mais cela ne me dérange pas plus au niveau de l'apprentissage (J'ai commencé avec du fortran )

    • Documentation : bien. La documentation intégrée est vraiment utile, exhaustive et efficace. Le forum que je suppose "officiel" est réactif même s'il est indisponible depuis peu (Server move in progress). Il est animé par quelques spécialistes dont le nombre est proportionnel à la notoriété du produit. L'accueil est sympathique, les réponses profitables. En tant que néophyte, j'ai reçu un soutien sans faille et patient. Merci.

    • Ce qui me convient dans PureBasic : C'est un outil immédiatement utilisable, bien conçu et je reste fasciné par la petitesse des exécutables produits. Les sources des projets sont globalement portables même si j'ai ressenti rapidement que le développement du produit était d'abord Windows et porté ensuite dans les autres OS. C'est usuel... comme Lazarus. J'ai trouvé certaines approches très ingénieuses comme le GadgetIconList (l'équivalent d'une Grid). Le prix également est intéressant même pour une utilisation en entreprise mais je me demande avec un abonnement à vie comment le modèle économique peut être pérenne. J'en reparlerai en conclusion.

    • Ce qui ne me convient pas dans PureBasic
      • En entreprise, j'accueille des stagiaires ou des CDD. Il y a des objets, des méthodes que doivent utiliser ces programmeurs mais dont ils ne doivent pas lire les sources. C'est le "capital", le savoir-faire spécifique à la société. En Lazarus et en Qt, il est possible de recompiler l'environnement de telle manière que les utilisateurs puissent utiliser les objets, les méthodes sans qu'ils ne disposent des sources. Là, je serais obligé de compiler des bibliothèques externes pour les procédures et fonctions. "On" faisait cela autrefois. Mais c'est une régression.
      • L'impossibilité de recompiler l'environnement et son code fermé rend également très difficile la création de certains Gadget. Par exemple, nous avons besoin de 2 gadgets gérant le HTML (un champ de saisie et une grille) : à mon avis, c'est très très difficile à réaliser; On peut théoriquement évidemment partir d'un Canvas ou réaliser un wrapper sur les objets de l'OS. Quand "on" a l'habitude des héritages de la POO, "on" n'arrive même pas à imaginer l'énormité du travail nécessaire.
      • Le positionnement des objets visuels n'utilise pas la notion d'ancrage. J'ai ressenti un manque.
      • L''utilisation importante d'API (Windows) rend parfois le portage énigmatique mais on peut rencontrer le même problème sous Lazarus et de manière plus rare sous Qt.
      • C'est un langage événementiel. J'ai ressenti une impression de pauvreté au niveau des évènements traités. Par exemple, le survol d'un bouton ne peut pas être intercepté sauf à recréer son propre Gadget à partir d'un canvas.
      • L'accès aux bases de données hormis PostgreSQL et SQLite est largement en dessous de ce que proposent Lazarus et Qt. Le chargement dans les Grids ressemble plus à celui de Qt qu'à celui de Lazarus.

    En conclusion :

    A la redécouverte de ce produit (je l'avais essayé il y a plusieurs années), ma perception a été équivalente à celle de Lazarus autrefois : une approche ingénieuse, "universitaire" mais également une sensation de manques, de limitations. Ce n'est pas un produit ouvert. C'est le choix de son auteur. Comme pour Lazarus, je pense qu'une approche à la Qt serait préférable : une version tout public (sans les sources) gratuite ou comme maintenant ("quelques euros à vie") et une version professionnelle, plus chère, payante à chaque évolution par abonnement ou non, avec le source et un soutien technique par abonnement également.

    En attendant, j'ai bien l'intention d'utiliser ma version personnelle pour porter et créer certains de mes programmes personnels. Et chapeau l'artiste ! (Le développement de cet environnement n'est la réalisation que d'un seul développeur... Mais potentiellement, c'est également une faiblesse quant à la pérennité d'utilisation dans une entreprise pour des projets importants dans leur longévité d'autant que le code source de l'environnement est fermé.)
    Cordialement. AD.

  2. #2
    Responsable Purebasic

    Avatar de comtois
    Inscrit en
    avril 2003
    Messages
    1 202
    Détails du profil
    Informations forums :
    Inscription : avril 2003
    Messages : 1 202
    Points : 6 400
    Points
    6 400
    Billets dans le blog
    8

    Par défaut

    Si PureBasic te convient pour un usage personnel, c'est déjà ça


    En entreprise, j'accueille des stagiaires ou des CDD. Il y a des objets, des méthodes que doivent utiliser ces programmeurs mais dont ils ne doivent pas lire les sources. C'est le "capital", le savoir-faire spécifique à la société. En Lazarus et en Qt, il est possible de recompiler l'environnement de telle manière que les utilisateurs puissent utiliser les objets, les méthodes sans qu'ils ne disposent des sources. Là, je serais obligé de compiler des bibliothèques externes pour les procédures et fonctions. "On" faisait cela autrefois. Mais c'est une régression.
    C'est une suggestion à faire sur le forum officiel.

    Il n'y a qu'un forum officiel pour PureBasic, c'est celui en anglais.
    Les forums français et allemand sont mis à disposition des utilisateurs, bien que les développeurs peuvent y intervenir parfois, ils ne prennent en compte que les demandes faites sur le forum anglais.
    Vous souhaitez participer à la rubrique PureBasic (tutoriels, FAQ, sources) ? Contactez-moi par MP.

  3. #3
    Responsable Purebasic

    Avatar de comtois
    Inscrit en
    avril 2003
    Messages
    1 202
    Détails du profil
    Informations forums :
    Inscription : avril 2003
    Messages : 1 202
    Points : 6 400
    Points
    6 400
    Billets dans le blog
    8

    Par défaut

    Citation Envoyé par ApproxDev Voir le message
    Le développement de cet environnement n'est la réalisation que d'un seul développeur... Mais potentiellement, c'est également une faiblesse quant à la pérennité d'utilisation dans une entreprise pour des projets importants dans leur longévité d'autant que le code source de l'environnement est fermé.
    C'est vrai que c'est une petite équipe, à l'origine il n'y avait qu'une personne Frédéric Laboureur alias 'Fred', l'auteur de PureBasic. Depuis quelques années Il y a aussi un allemand Timo Harter alias 'Freak' qui participe grandement au développement de PureBasic durant son temps libre (sinon il est développeur chez Deutch telecom). il est notamment l'auteur de l'IDE et je crois qu'il a largement participé au développement (pour ne pas dire entièrement) des libs Vector, canvas, sans doute XML ? Il a participé à l'amélioration de la biblio 'gadget', et depuis qu'il est dans l'équipe j'ai l'impression qu'il y a plus de rigueur

    D'autres participent bénévolement à la traduction de la doc, 'Andre' pour la doc allemande, 'Mesa' pour la doc française (et bien d'autres avant lui); quelques anglo-saxons pour la doc anglaise (essentiellement des petites corrections).

    Par expérience je peux te dire que la longévité d'un produit ne dépend pas de la taille de la boite. Combien de logiciels développés par des grosses boites qui sont aujourd'hui abandonnés ?
    PureBasic existe depuis 2001.

    Pour mon boulot j'ai utilisé un logiciel vendu par un grand groupe, lorsque j'ai appelé la hot-line pour régler un problème, on m'a répondu que le développeur avait quitté la société, que plus personne n'était capable de maintenir le produit (pourtant il était toujours en vente au catalogue du groupe). On m'a filé le numéro de téléphone d'un client de ce groupe qui connaissait bien le produit pour me dépanner ! Grand groupe, mais un développeur !


    Il n'y a pas d'obsolescence programmée avec PureBasic, ça devrait te rassurer


    [EDIT]

    d'autant que le code source de l'environnement est fermé.
    Là aussi j'ai vu des logiciels avec code source fermé, lorsque l'auteur a abandonné le développement et ouvert le code, personne n'est intervenu dessus, et pourtant il y en avait du monde pour le réclamer.

    Par exemple un éditeur 3D deled , depuis que le code est dispo pas une seule ligne a été modifiée.

    C'est le cas pour d'autres logiciels ouverts, leur survie ne tient souvent qu'à la bonne volonté d'une personne ou deux 'Ogre3D' par exemple. Bien que la liste des participants comporte plusieurs personnes, les développeurs actifs se comptent sur les doigts d'une main.

    Le moteur physique 'bullet' n'est maintenu que par une personne. Et on pourrait en citer bien d'autres dans ce cas.

    Pour info la version Amiga de PureBasic est open source, tu t'y colles ?
    Vous souhaitez participer à la rubrique PureBasic (tutoriels, FAQ, sources) ? Contactez-moi par MP.

  4. #4
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    septembre 2015
    Messages
    252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : septembre 2015
    Messages : 252
    Points : 268
    Points
    268

    Par défaut

    Bonjour,

    Citation Envoyé par comtois Voir le message
    Pour mon boulot j'ai utilisé un logiciel vendu par un grand groupe, lorsque j'ai appelé la hot-line pour régler un problème, on m'a répondu que le développeur avait quitté la société, que plus personne n'était capable de maintenir le produit (pourtant il était toujours en vente au catalogue du groupe). On m'a filé le numéro de téléphone d'un client de ce groupe qui connaissait bien le produit pour me dépanner ! Grand groupe, mais un développeur !
    Cela conforte mes propos. Un seul développeur ne garantit aucune pérennité puisque le développement est intimement lié à celui-ci... sauf si le code est ouvert.

    Quant à la vie d'un produit, elle ne dure que le temps de son adéquation avec les besoins... ou le temps de la pérennité de la société qui le développe, à moins qu'il ne soit supplanté par une innovation ou un concurrent plus performant.

    Voilà pourquoi j'ai toujours privilégié les produits OpenSource (avec les licences adéquates) qu'ils appartiennent à une société commerciale (qui ouvre son code sous certaines conditions Qt, Delphi) ou purement communautaire comme Lazarus qui est un clône de Delphi 7, comme mariaDB de MySQL, LibreOffice....

    Citation Envoyé par comtois Voir le message
    Pour info la version Amiga de PureBasic est open source, tu t'y colles ?
    Je ne connais pas Amiga et nos clients non plus d'ailleurs. Mais quand j'étais enseignant, je suis rentré (j'ai dû rentrer) de nombreuses fois dans le source de Lazarus (que l'on peut recompiler à souhait) pour y modifier des unités, des composants ou même fréquemment pour y développer et y inclure mes propres composants dans les 3 OS. Donc je connais le temps que cela prend ... et la garantie que cela apporte . Pour Qt, je n'ai pas eu ce besoin (mais il présente les mêmes possibilités de recompilation que Lazarus) car l'environnement dispose de la ressource de la société commerciale en plus de celle du développement communautaire.

    Citation Envoyé par comtois Voir le message
    Si PureBasic te convient pour un usage personnel, c'est déjà ça
    Oui, mais à mon avis, il peut ne pas se limiter à un usage "personnel". Je ne connais pas suffisamment PureBasic pour estimer son implantation en entreprise. J'estime qu'il a la "carrure" avec les réserves que j'ai émises. Mais je ne sais pas s'il est promu comme tel.
    A priori, les éléments dont je dispose ne militent pas en ce sens. Le choix d'une plateforme de développement est stratégique pour une SSII. Il faut former les programmeurs. Mais avant, il faut les convaincre, les faire adhérer, répondre aux questions, préciser les limites et les solutions de contournement. C'est dans tous les cas un investissement... et une ou des comparaisons. Aussi je ne formule pas une critique mais une simple comparaison avec les outils que j'utilise tous les jours. Évidemment mon positionnement est peut-être tout à fait iconoclaste mais le conformisme a aussi des limites .

    Au plaisir de vous lire. Cordialement. AD.

Discussions similaires

  1. Quelques questions d'un débutant!
    Par trexiic dans le forum Débuter
    Réponses: 3
    Dernier message: 15/09/2015, 09h02
  2. comprendre quelque fonction on matlab (débutant)
    Par roubas dans le forum MATLAB
    Réponses: 1
    Dernier message: 01/12/2008, 22h13
  3. [Débutant] Quelques questions bêtes...
    Par Stomp dans le forum Windows
    Réponses: 1
    Dernier message: 25/01/2006, 22h19
  4. [Débutant]Quelques questions de principe sur l'API win32
    Par silver_dragoon dans le forum Windows
    Réponses: 4
    Dernier message: 19/03/2004, 19h38
  5. [MFC] Quelques questions de débutant...
    Par Sephi dans le forum MFC
    Réponses: 4
    Dernier message: 20/02/2004, 18h25

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