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

Langages de programmation Discussion :

[Débuter] Programmation objet mais conditions particulières


Sujet :

Langages de programmation

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2005
    Messages : 11
    Points : 7
    Points
    7
    Par défaut [Débuter] Programmation objet mais conditions particulières
    Bonjour, ( premier post )

    tout d'abord je vous prie de m'excuser de vous embêter avec ce sujet qui doit revenir souvent ! mais après de nombreuses rechercher sur ce site et d'autres ... et pas vraiment de réponses à mon goût je me permets de vous poser cette question mais avec quelques conditions ...
    ( j'espère que je vais pas me faire découper par un programmeur en colère après avoir lu ce paragraphe )

    Donc voilà je désire me lancer comme le dit le titre du topic dans la programmation objet !

    Cependant il y a certaines conditions qui doivent être prise en compte ...

    ---------------------------------------------------------------
    1) Je suis sur linux depuis un bon moment et je suis pro libre donc j'ai pas envie de développer en .NET ou avec des languages qui ne sont pas open source.
    D'autre part j'aimerais pouvoir développer sur linux en utilisant des logiciels disponibles sous linux

    2) J'ai déjà certaines bases en programmation. En effet, je suis webmaster depuis quelques années, et je maîtrise ( disons que je me défends ) en xhtml css php/mysql ...
    J'ai également quelques notions en bash

    3) Je ne suis pas étudiant en informatique et je désire programmer par plaisir ( je sais je sais ... encore un fou ) par goût pour linformatique et pour ma culture générale ... et cela pourra toujours me servir dans mon CV

    4) je désire donc ... après l'aprentissage bien entendu ... pouvoir concevoir des programmes avec une interface graphique ( gtk qt ... ou autres ... à voir) ou participer à des projets ...

    Ces programmes seraient principalement développé pour linux et peut etre également windows ... ( j'imagine que ca ... c'est une histoire de compiler ...gcc etc ... )

    5) Je suis ouvert à tout ... j'ai pas vraiment d'idées préconcues et je suis donc prêt à écouter vos différents avis telle la parole divine

    6) J'aimerai me lancer dedans apprendre vite bien entendu ... mais peut etre aussi commencer par quelque chose de pas trop repoussant pour le débutant que je suis, et également qui me permettent d'avoir des résultats sympathiques ...
    c'est toujours agréable d'être fier de son travail
    ---------------------------------------------------------------

    donc voilà suite à toutes ces conditions la question est

    par quoi commencer ? et dans quelles directions aller ?

    Merci d'avance d'avoir pris le temps de lire ceci

    Cordialement
    KaptainouK

  2. #2
    Modérateur
    Avatar de gangsoleil
    Homme Profil pro
    Manager / Cyber Sécurité
    Inscrit en
    Mai 2004
    Messages
    10 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Manager / Cyber Sécurité

    Informations forums :
    Inscription : Mai 2004
    Messages : 10 150
    Points : 28 119
    Points
    28 119
    Par défaut
    Bonjour (et bienvenue sur developpez.com),

    Alors au vu des restrictions que tu imposes, je vois principalement deux langages qui peuvent t'intéresser : C++ et Java.

    Le C++ est un langage compilé, qui n'est donc pas vraiment portable. Il existe des bibliothèques permettant de faire des interfaces graphiques, comme GTK ou QT.

    Le Java pour sa part est un langage interprété : son exécution est plus lente, mais au profit d'une très grande portabilité (il "suffit" d'une machine virtuelle sur une machine pour pouvoir y faire tourner un programme Java).
    Ce langage permet également de faire des interfaces graphiques, et la JavaDoc (en ligne sur le site de Sun) est très complète.

    Pour ces deux langages, il existe des environnements de développement plus ou moins complet.
    Le plus connu pour Java est Eclipse, qui doit être Open source.
    Je ne connais pas ceux pour C++, mais ca doit pouvoir se trouver très facilement.

    Après, l'un ou l'autre, je n'ai pas de conseils à te donner : chacun a son point de vue et ses arguments, plus ou moins fallacieux.
    "La route est longue, mais le chemin est libre" -- https://framasoft.org/
    Les règles du forum

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    292
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 292
    Points : 222
    Points
    222
    Par défaut
    et python.

  4. #4
    Membre actif Avatar de etranger
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    333
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2004
    Messages : 333
    Points : 268
    Points
    268
    Par défaut
    et Perl.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2004
    Messages : 54
    Points : 76
    Points
    76
    Par défaut
    Citation Envoyé par etranger
    et Perl.


    Sinon, pour C++ tu peux utiliser kdevelop qui est l'environnement de programmation le plus complet qui existe sous Linux. En plus, il doit y avoir des trucs pour créer une interface graphique via QT.

    Python peut aussi être une bonne alternative, surtout que bcp de projet sous nux l'utilise (et bcp de libs ont été porté sous Python).

    Pour perl, ben en fait je connais pas.

    Java... ben perso j'aime pas même si c'est 'à la mode'. Mais c'est aussi une histoire de gout.

    Que dire encore... a oui, je ne suis pas d'accord pour dire que le c++ n'est pas portable, en fait comme tu dis c'est surtout une question de compilation. (Il faut aussi que tes libs soient portables sous win, QT et GTK le sont).
    Java et Python sont + simple que C++, mais rien ne t'empêche de faire des trucs simple en C++ pour commencer. Mais c'est clair que pour le maitriser à fond, il faudra (bcp) plus de temps.

    Je sais c'est un peu brouillon mais tant pis. J'espère que cela t'aura au moins aidé un peu.

  6. #6
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 636
    Points : 5 943
    Points
    5 943
    Par défaut
    Salut,

    personnellement je te recommenderais le Java qui me semble le plus proche de ce que tu demande :
    • la grande majorité (voir la casi totalité) des outils sont open-source
    • 99,9% objet
    • je le trouve plus simple que le C++ notamment pour les IHM

    • Citation Envoyé par gangsoleil
      la JavaDoc (en ligne sur le site de Sun) est très complète
      toutes les classes de l'API standard y sont référencées

    C'est mon avis perso et ça n'engage personne d'autre

    [troll]Java is the best[/troll]
    Je ne répondrai à aucune question technique par MP.

    Pensez aux Tutoriels et aux FAQs avant de poster (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
    Enfin, quand une solution a été trouvée à votre problème
    pensez au tag

    Cours Dvp : http://ydisanto.developpez.com
    Blog : http://yann-disanto.blogspot.com/
    Page perso : http://yann-disanto.fr

  7. #7
    Expert éminent sénior
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

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

    Informations forums :
    Inscription : Août 2003
    Messages : 5 275
    Points : 10 985
    Points
    10 985
    Par défaut
    [troll pour apôtres du libre]Le Java libre (GPL quoi!) (GCJ) n'est pas aussi abouti que le propriétaire (Sun) -- qui a parlé de portabilité?[/troll]

    Perl pour l'objet ? Ouch! Je m'y étais tenté et avais eu bien mal. Cela reste un langage fort pratique au demeurant. Une très bonne alternative à (ba)sh dès que les choses deviennent un peu compliquées.

    Ruby sera bien mieux sur l'axe objet. Python peut-être aussi, mais je le connais bien mal.

    Quelque soit ton choix, regarde dans les forums du (/des?) langage(s) retenu(s) les bonnes approches pour commencer. Toutes ne sont pas aussi newbye-friendly et productives, notament pour le C++.
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

  8. #8
    Expert éminent
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Points : 8 586
    Points
    8 586
    Par défaut
    Citation Envoyé par Luc Hermitte
    Perl pour l'objet ? Ouch! Je m'y étais tenté et avais eu bien mal. Cela reste un langage fort pratique au demeurant. Une très bonne alternative à (ba)sh dès que les choses deviennent un peu compliquées.

    Ruby sera bien mieux sur l'axe objet. Python peut-être aussi, mais je le connais bien mal.
    Perl5 a un modèle objet très puissant mais assez difficile à programmer au début... Sinon il reste un must pour l'admin système et le traitement de données, et les objets sont très faciles à utiliser (ce qui fait que la plupart des modules du CPAN ont une interface objet).
    Pour l'instant le modèle objet le plus élégant et utilisable est sans doute Ruby (mais ce langage souffre de quelques autres défauts : plus lent que Python ou Perl par exemple). Python est pas mal aussi (beaucoup l'encensent mais ayant essayé d'abord Python puis découvert Perl, j'en suis resté au Perl, question de goût ! ).
    Perl6 devrait changer la donne d'ici un an ou deux, avec un modèle objet très puissant et bien plus facile à programmer, ainsi que beaucoup d'autres bonnes idées.

    --
    Jedaï

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2004
    Messages : 54
    Points : 76
    Points
    76
    Par défaut
    Citation Envoyé par le y@m's
    ...[*]je le trouve plus simple que le C++ notamment pour les IHM
    ...
    Bof, le seul truc, c'est que les librairies sont livrées avec le langage, mais à part ça...
    Certaines librairies comme gtk ou qt utilisent des fichiers xml pour stocker les IHM. En plus, il existe des outils pour les créer et les utiliser en C,C++ ou même Python.

  10. #10
    Expert éminent sénior
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

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

    Informations forums :
    Inscription : Août 2003
    Messages : 5 275
    Points : 10 985
    Points
    10 985
    Par défaut
    Citation Envoyé par Jedai
    Perl5 a un modèle objet très puissant mais assez difficile à programmer au début... Sinon il reste un must pour l'admin système et le traitement de données, et les objets sont très faciles à utiliser (ce qui fait que la plupart des modules du CPAN ont une interface objet).
    Je m'étais senti super bridé de ne pas pouvoir facilement créer des petites classes (pour mettre un template pattern en oeuvre) sans devoir exploser le nombre de fichiers à déployer. Surtout que mes objets étaient des objets d'implémentation et non des objets exportés que tout un chacun devait pouvoir voir.
    Bref le modèle objet objet du Perl n'est pas compatible avec ma vision du monde objet -- à moins que cela soit le contraire.

    A (re)voir avec Perl 6, donc ?
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

  11. #11
    Expert éminent
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Points : 8 586
    Points
    8 586
    Par défaut
    Citation Envoyé par Luc Hermitte
    Citation Envoyé par Jedai
    Perl5 a un modèle objet très puissant mais assez difficile à programmer au début... Sinon il reste un must pour l'admin système et le traitement de données, et les objets sont très faciles à utiliser (ce qui fait que la plupart des modules du CPAN ont une interface objet).
    Je m'étais senti super bridé de ne pas pouvoir facilement créer des petites classes (pour mettre un template pattern en oeuvre) sans devoir exploser le nombre de fichiers à déployer. Surtout que mes objets étaient des objets d'implémentation et non des objets exportés que tout un chacun devait pouvoir voir.
    Bref le modèle objet objet du Perl n'est pas compatible avec ma vision du monde objet -- à moins que cela soit le contraire.

    A (re)voir avec Perl 6, donc ?
    Tout à fait, si tu veux jeter un coup d'oeil au monde objet de Perl6, tu peux lire ce synopsis.

    --
    Jedaï

  12. #12
    Expert éminent sénior
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Points : 10 067
    Points
    10 067
    Par défaut
    Et bien Python semble être un bon choix (bon chacun prêche pour sa paroisse aussi )
    En plus, Python, ca s'apprend très vite grâce aux quelques Tutoriels proposés par Developpez.

  13. #13
    Membre à l'essai
    Inscrit en
    Novembre 2004
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 17
    Points : 20
    Points
    20
    Par défaut
    moi je dirai C++ puisque tu veut faire de la programation objet et le C++ et un longage objet a 100% et tu peut faire avec tout les technique objet pour java j'endoute que se soit le cas

    en plus pour faire de bon projet il te faut un longage rapide comme le c ou le C++ ,alors que tout le monde sait combien de temps prend java pour lancer un progrum ecrit en java

    meme si java et plus facile a apprandre et a manipuler les avantages de la programation objet sous C++ sont meilleur

  14. #14
    Expert éminent sénior
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

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

    Informations forums :
    Inscription : Août 2003
    Messages : 5 275
    Points : 10 985
    Points
    10 985
    Par défaut
    Merci pour le lien sur l'OO en Perl. J'y rejetterai un oeil le moment venu.


    Sinon, C++ n'est pas 100% objet. Il est multi-paradigmes.
    Il a en revanche, AMHA, une couverture de concepts objets plus étendue que celle du Java (meilleure gestion native des contrats (si on suit l'idiome (1) qui va bien), la possibilité de dériver, proprement et respectueusement, pour réutiliser du code sans devoir être obligé de respecter le LSP dérrière (2), ...)

    (1) Tout est question d'idiomes en C++. En respectant des conceptions, on met en oeuvre des concepts externes au langage (modélisation OO, ...)

    (2) En d'autres mots, l'héritage privé permet de dériver d'une classe dont on ne sera pas un représentant. En Java, quand on dérive on est obligatoirement un représentant (au sens "est-un"), ou alors on fait du code sale qui va briser des invariants. Ex. Pour définir une liste_triee à partir d'une liste, il faut passer par l'aggrégation et surtout pas par l'héritage.

    Comprendre que l'on peut arriver à faire des choses similaires, mais différemment.
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

Discussions similaires

  1. Réponses: 7
    Dernier message: 22/09/2005, 10h09
  2. [Débutant(e)][Conception] prob de programmation objet
    Par gregorian dans le forum Général Java
    Réponses: 3
    Dernier message: 07/07/2005, 11h20
  3. Questions sur la programmation objet en Delphi
    Par Manopower dans le forum Débuter
    Réponses: 20
    Dernier message: 15/06/2005, 15h39
  4. [ASP] Programmation objet ?
    Par Hell dans le forum ASP
    Réponses: 6
    Dernier message: 07/04/2005, 15h28
  5. Problème programmation objet
    Par Contrec dans le forum MFC
    Réponses: 54
    Dernier message: 30/03/2005, 11h30

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