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

Delphi Discussion :

Reprendre le C. Avec Delphi ?


Sujet :

Delphi

  1. #1
    Membre régulier

    Profil pro
    Inscrit en
    Avril 2004
    Messages
    536
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 536
    Points : 121
    Points
    121
    Par défaut Reprendre le C. Avec Delphi ?
    Bonjour à tous

    Je souhaite reprendre le C. Je n’ai rien contre le Pascal, mais le C reste infiniment plus concret - parce que plus proche du système. Il paraît plus complexe, mais, à l’usage, très nettement plus concret que tout autre langage. Je le pratiquais sous MSDOS dans sa version Borland C++ . Heu… Oui Ca date un peu...

    J’ai donc besoin de deux choses :

    - Je peux récupérer mes routines Pascal (en lier les fichiers objets à un projet C), et surtout exploiter les librairies utilisables avec Delphi. Les Jedi en particulier.

    - Des tutoriels et ouvrages me faisant repartir de zéro. Forcément. Lorsque je me retrouve devant ceci :



    je vois bien que ça n’a plus rien à voir avec le C de Kernighan et Ricthie. Même avec le compilateur Borland C++, j’étais très « C », plus que « C++ ».

    Or, Delphi permet de programmer en C++. Mais c’est là que le bât blesse : je dois très mal chercher, mais je ne trouve pas vraiment de tutoriels sur la programmation en C avec Delphi. Où trouver ça ?

    Et tous les conseils, pour repartir depuis la base, seront les bienvenus.

    Merci :hello:

    P.S.: j'ignore si ce manuel est adapté à Delphi ou Visual C :

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

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

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 445
    Points
    28 445
    Par défaut
    je ne comprend pas en quoi le C est plus concret...en fait je ne comprend pas ce que serait un langage concret

    les composants Delphi sont des objets, il n'y a donc pas d'équivalent direct en C. le C++ apporte la notion d'objet au C, mais à ma connaissance seul C++Builder permet d'intégrer les composants Pascal de Delphi dans le C++.

    Il n'est pas possible par contre de développer en C/C++ sous Delphi, on peut au mieux intégrer des .OBJ provenant d'un compilateur C/C++ dans Delphi via la directive {$L fichier.obj} en déclarant alors les fonctions "external".

    après il reste possible de créer une DLL Delphi avec une API C (sans objet) à l'usage d'un programme C (non++)...on fait généralement l'inverse pour wrapper les objets C++ sous Delphi, mais le même procédé peut se faire dans l'autre sens.
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  3. #3
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 459
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 459
    Points : 24 873
    Points
    24 873
    Par défaut
    Citation Envoyé par bvsud Voir le message
    - Je peux récupérer mes routines Pascal (en lier les fichiers objets à un projet C), et surtout exploiter les librairies utilisables avec Delphi. Les Jedi en particulier.
    Tu te contredis !
    Tu veux être plus proche du système mais en conservant Indy qui généralement encapsule des éléments systèmes pour que le développeur se prenne moins la tête avec des tas et des tas d'API Windows !
    Si tu veux être proche du système, il te faut donc utiliser QUE les headers Windows et coder toutes les API à la main !



    Pour avoir fait du C++Builder pendant presque 3 ans, cela ne change pas grand chose par rapport à Delphi
    C'est juste plus pratique si l'on intègre des beaucoup de DLL qui fournissent leur .h, cela fait un travail de traduction en moins !

    Attention, C++ ne veut pas dire C ! oublie conio, stdio ... !
    les Objets C++ à base TObject Delphi a ses propres règles et comportements différents des Objets C++ sans ancêtre (oui contrairement à Delphi, TObject n'est pas implicite)
    le TForm1 est un objet Delphi et se comporte comme tel !

    et ce _tWinMain c'est le bon vieux main d'un programme C en version Programme Windows et non programme DOS !
    Et c'est la même chose que le DPR

    Code C++ : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    //---------------------------------------------------------------------------
    WINAPI _tWinMain(HINSTANCE, HINSTANCE, LPTSTR, int)
    {
      try
      {
         Application->Initialize();
         Application->MainFormOnTaskBar = true;
         Application->CreateForm(__classid(TForm1), &Form1);
         Application->Run();
      }
      catch (Exception &exception)
      {
         Application->ShowException(&exception);
      }
      catch (...)
      {
         try
         {
           throw Exception("");
         }
         catch (Exception &exception)
         {
           Application->ShowException(&exception);
         }
      }
      return 0;
    }
    //---------------------------------------------------------------------------

    et la même chose en Delphi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    begin
      Application.Initialize;
      Application.MainFormOnTaskbar := True;
      Application.CreateForm(TForm1, Form1);
      Application.Run;
    end.




    Je ne crois pas que tu seras beaucoup plus proche du système en C++Builder qu'en Delphi !

    Et justement, tu te raccroches à un C MSDOS, moi aussi j'ai utilisé Bordand C++ 5.0, je ne le regrette pas du tout ! Faire les IHM en code à 100% à coup de CreateWindow, fatiguant !
    le Visual C++ est assez éloigné, rien que chez Microsoft, depuis cette époque, il doit y avoir eu 3 versions différentes de lib pour gérer les IHM
    le C++Builder c'est du Delphi avec begin end remplacé par {} et des éléments syntaxiques plus lourd.
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  4. #4
    Membre régulier

    Profil pro
    Inscrit en
    Avril 2004
    Messages
    536
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 536
    Points : 121
    Points
    121
    Par défaut
    Bonjour

    Je me suis très mal exprimé, donc j’ai été mal compris. Forcément.

    Lorsque je dis « programmer en C++ avec Delphi », ce n’est pas du compilateur que je parle, mais bien de l’IDE Delphi xe7. C’est d’ailleurs avec elle que j’ai créé ce que l’on voit plus haut (et qui, en version Debug, génère un EXE de 107,720 ko). Pas le compilateur Pascal. Le studio de développement Delphi.

    Donc, est-il une alternative commode à Visual C ? Vu que
    - j’ai beaucoup de routines personnelles que j’aimerais reprendre (quitte à les lier en version .OBJ) sans avoir à les réécrire intégralement en C.
    - les composants de la librairie Jedi son bien utiles aussi, et ils ont une version C. Idem pour les TMS.

    Ou bien repartir de zéro avec Visual C, étant donné que, de toute façon, il me faut repartir de zéro.

    @ShaiLeTroll : « Attention, C++ ne veut pas dire C ! oublie conio, stdio ... ! » . Tout à fait. Ben voilà : réapprendre un langage ayant beaucoup évolué (euphémisme) depuis les années 90.

    @Paul Toth : oui. A ton niveau, paradoxalement, rien n’est plus strictement concret. Tu sais ce qui se passe sous le capot de A à Z. Jusqu’à écrire un compilateur pour créer des animations Flash ! Tu vois des choses que, personnellement, je ne peux pas voir. Parce que je ne me situe pas du tout à ce niveau. Pour moi, le C, et à fortiori l’assembleur, sont plus concrets parce que plus « proches du système ».

    Donc, il doit bien y avoir des tutos de C++ . Pour Visual C, aucun problème. Mais pour l’IDE Delphi ?

    J'ignore si je me fais comprendre.

  5. #5
    Membre chevronné
    Avatar de free07
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    931
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 931
    Points : 1 909
    Points
    1 909
    Par défaut
    Citation Envoyé par bvsud Voir le message

    Donc, il doit bien y avoir des tutos de C++ . Pour Visual C, aucun problème. Mais pour l’IDE Delphi ?

    J'ignore si je me fais comprendre.
    Oui, il me semble avoir compris que tu parles de Builder C++, n'est ce pas ? RAD Studio intégre deux langages dans le même IDE : C++ Builder et Delphi.

    Il y a un forum Builder C++ et des tutos pour Builder C++

  6. #6
    Membre régulier

    Profil pro
    Inscrit en
    Avril 2004
    Messages
    536
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 536
    Points : 121
    Points
    121
    Par défaut
    Voilà...

    Merci, Free07

Discussions similaires

  1. Récupérer le code HTML d'une page avec Delphi 7
    Par PsyKroPack dans le forum Web & réseau
    Réponses: 5
    Dernier message: 06/02/2003, 21h56
  2. [Choix] Quel SGBD avec delphi et kylix
    Par djmcg dans le forum Décisions SGBD
    Réponses: 8
    Dernier message: 16/01/2003, 12h24
  3. Programmation WEB avec delphi
    Par mayoguy dans le forum Web & réseau
    Réponses: 4
    Dernier message: 20/08/2002, 19h03
  4. Réponses: 5
    Dernier message: 08/07/2002, 16h22
  5. Réponses: 2
    Dernier message: 20/03/2002, 23h01

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