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

Merise Discussion :

Conception non-objet


Sujet :

Merise

  1. #1
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Points : 5 360
    Points
    5 360
    Par défaut Conception non-objet
    Bonjour,

    Dans ma vie professionnelle, je programme essentiellement en Matlab et Python dans le cadre de modélisations scientifiques. Dans un but d'auto-formation, je programme depuis deux ans en C (algo, structures de données, programmation système) et j'aimerais m'attaquer à la résolution de problèmes plus complexes.

    Je me suis documenté sur les techniques de conception de logiciels. Les ouvrages traîtant du génie logiciel se concentrent beaucoup sur les modèles à base d'objets et les design patterns. Dans ce domaine, le paradigme objet est omniprésent, si bien que je n'imagine pas faire le design d'une application sans utiliser des classes, l'héritatge ou les Design Pattern.

    Y a-t'il des méthodologies de conception efficaces qui ne soit pas basées sur le paradigme objet et qui permettent de définir une architecture logicielle adaptée pour le développement d'une application écrite avec un langage procédural comme le C? Chacune des références de la littérature me conduit invariablement vers la conception objet. Cela veut-il dire que pour réaliser de gros projets, il FAUT utiliser C++ ou Java? Dois-je diviser mes modules C comme s'il s'agissait de classes C++?

    Quelqu'un auait-il une piste, une expérience, une référence bibliographique, pour m'orienter vers des bonnes pratiques et design pattern destinés à une approche procédurale de la conception de logiciels?

    Meilleures salutations


    Thierry

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    124
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 124
    Points : 89
    Points
    89
    Par défaut
    Regarde du côté de Merise...
    C'est une méthode qui a fait ses preuves, c'est un raisonnement sur les données, donc pas sur les objets (même si ils ont essayé de faire un Merise-Objet qui n'a pas marché du tout)...
    Mais bon perso je préfère largement la programmation objet, y'a bcp plus d'avantages (réutilisation, encapsulation (protection), polymorphisme ...)
    C'est toi qui voit

  3. #3
    Membre habitué
    Inscrit en
    Mai 2005
    Messages
    335
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 335
    Points : 196
    Points
    196
    Par défaut
    djflex68 +1

    merise marche tres bien

  4. #4
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Points : 5 360
    Points
    5 360
    Par défaut
    Merci pour vos réponses. Je ne connaissait pas Merise. En ce qui concerne la programmation orienté-objets, je suis convaincu. Je veux simplement apprendre plusieurs approches et ne pas me limiter au paradigme objet dans ma façon d'envisager mes développement.

    Avez-vous des références à me donner concernant Merise (Livres, tutoriel, FAQ)? Je vais faire un tour sur le web et voir ce que je trouve.

    Merci pour tout!

    Thierry

  5. #5
    Membre habitué
    Inscrit en
    Janvier 2005
    Messages
    491
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 491
    Points : 172
    Points
    172
    Par défaut
    sur le site:

    http://sqlpro.developpez.com/cours/modelisation/merise/

    ou encore sur google tu trouvera ton bonheur

  6. #6
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Points : 3 510
    Points
    3 510
    Billets dans le blog
    2
    Par défaut
    juste pour mettre mon grain de sel.....
    si tu veux t'attaquer à des problèmes 'plus complexes', la conception objet est toute indiquée.
    Tu peux d'ailleurs faire du "données - traitements" avec de l'objet et tu verras par toi même que l'objet "pur" apporte pleins d'avantages.
    Pour des design patterns traitant de problèmes complexes et ayant été mis en oeuvre dans le monde C++, je te recommande le site de Douglas Schmidt (www.cs.wustl.edu/~schmidt)

  7. #7
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Points : 5 360
    Points
    5 360
    Par défaut
    Merci pour les liens!

    Je vais étudier les deux approches (objets et procédural). Je suis relativement à l'aise avec Python, Java et C/C++ et fait actuellement de gros efforts pour structurer mon approche de la conception et me perfectionner avec les méthodes de modélisation actuelles.

    Avec le C, je fais essentiellement de l'algo. Mais le monde Linux raffole du C et foisonne de projets avec implémentation en C. J'ai essayé d'adapter un modèle objets en cherchant une implémentation en C, mais ce n'ai vraiment pas naturel, et je me suis finalement retrouvé avec du C++. Je trouve que le concept de "composant" est beaucoup plus difficile à mettre en forme et à manier sans avoir accès aux classes.

    Je ne cherche pas à faire compliqué pour faire compliqué. Je recherche différentes méthodologies pouvant m'aider à construire un logiciel de qualité dans différents contextes. Je cherche à comprendre comment ont procédés ces programmeurs (ils foisonnent dans le monde Linux) qui ont implémenté des cathédrales (Linux lui-même, Apache, MySQL, Python, ...) en C.

    Est-il dans tous les cas mieux d'utiliser une approche objets? (Si oui, les langages procéduraux ont-il encore un avenir??? Aie Aie, débat ouleux) Une architecture logicielle à base d'objet peut-elle être "simulée" par une impémentation procédurale (arrive-t'il qu'on pratique de la sorte?...)? Ce sont les questions d'un débutant qui ne cherche pas remettre en question l'état-de-l'art actuel, mais qui cherche à progresser. Merci encore pour vos réponses. Je vais essayer de creuser dans les directions que vous m'avez indiquées.

    Meilleures salutations

    Thierry

  8. #8
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Points : 3 510
    Points
    3 510
    Billets dans le blog
    2
    Par défaut
    Pour te donner une idée, le gestionnaire de fenêtre X-Windows avec Motif, Openlook et autres du monde Unix est écrit en C. Cependant, si tu regardes le code, tu verras que l'approche est complètement objet. Ils emboitent les structures C pour simuler de l'héritage et utilisent beaucoup les pointeurs de fonctions pour simuler des appels "virtuels". Bref, ils font de l'objet avec un langage procédural.
    J'ai moi même beaucoup développé en C chez un éditeur, il y a 10 ans :-(, et je peux t'assurer que pour structurer nos applications, nous en sommes arrivé au même conclusions que X-Windows.
    L'objet a ceci d'intéressant qu'il "t'oblige" ou "t'aide" à mieux structurer ton appli. Je ne veux pas dire que les langages procéduraux génèrent des applis mal structurées mais que l'objet, par essence, t'amène plus facilement à structurer ton appli (il y a quand même des applis de m..de en objet !)

    Donc mon avis de vieux est que je ne vois pas pourquoi tu n'irais pas vers l'objet.

    NB: en école d'ingé, j'avais fait une carte d'acquisition avec logiciel de pilotage en assembleur. On a fait une version de ce même logiciel en C puis en C++ et la différence était totalement négligeable. Et je peux t'assurer que la faire en C++ a été bien plus simple et surtout c'était plus facile à lire.

  9. #9
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Points : 5 360
    Points
    5 360
    Par défaut
    Merci!

    C'est justement une question que je me posais en lisant le tuto "Les règles de codage pour programmer orienté objet en C" écrit par Aymeric Lesert et disponible sur Developpez.com:

    http://c.ftp-developpez.com/downloads/c/regle.pdf

    N'ayant pas encore eu le courage de me plonger dans de gros codes du monde linuxien pour en examiner la structure, je me demandais si l'approche de structuration objet étant pratique courante en C.

    Ainsi, il est possible, avec plus ou moins de confort, d'utiliser une conception objets sans trop se préoccuper du langage cible (du moins dans une première phase). Je vais me concentrer sur la conception objet et étudier cela plus en détail. Merci pour vos remarques qui me sont d'une aide précieuse.

    Salutations

    Thierry

  10. #10
    ego
    ego est déconnecté
    Rédacteur

    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    1 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 883
    Points : 3 510
    Points
    3 510
    Billets dans le blog
    2
    Par défaut
    Pour info, les premiers compilateurs C++ passaient par une génération de code en C puis un compilation du code C généré !
    Donc c'est possible !!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Table Parents-enfants -> conception des objets dans BO 6.1.3
    Par webvince18 dans le forum Designer
    Réponses: 4
    Dernier message: 04/10/2006, 17h27
  2. conception orientée objet
    Par yvon_huynh dans le forum Langage
    Réponses: 1
    Dernier message: 07/08/2006, 13h09
  3. [Conception] non affichage de $erreur
    Par carelha dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 03/08/2006, 09h24
  4. Réponses: 8
    Dernier message: 22/05/2006, 09h25
  5. "Mixer" objet et non-objet ?
    Par zapho dans le forum UML
    Réponses: 5
    Dernier message: 19/03/2004, 14h43

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