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

C# Discussion :

polymorphisme et paramètre par référence.


Sujet :

C#

  1. #21
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Citation Envoyé par maa Voir le message
    Après je trouve que VB est quand même mieux intégrer à Visual Studio.
    Hein ?

    Citation Envoyé par maa Voir le message
    L'intellisens
    Double hein ? tu lui reproches quoi à l'intellisens de Visual C# ?

    Citation Envoyé par maa Voir le message
    la correction des erreurs sans avoir à recompiler
    c'est possible aussi en C# et C++ ...

    Citation Envoyé par maa Voir le message
    le fait de pouvoir définir des namespace par défaut au projet,
    Personnellement je n'en ai jamais eu besoin ...

  2. #22
    maa
    maa est déconnecté
    Membre actif
    Avatar de maa
    Inscrit en
    Octobre 2005
    Messages
    672
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Octobre 2005
    Messages : 672
    Points : 288
    Points
    288
    Par défaut
    c'est possible aussi en C# et C++ ...
    Pas par défaut en tout cas. Ou alors une option m'échappe ? Avec Resharper oui, mais ça ralentis pas mal.
    ****************************************

    - I don’t write plumbing code anymore
    - I use PostSharp
    - And you?


    ****************************************

  3. #23
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Je l'ai toujours fait en C# et C++ avec VS2005 sans toucher à aucune option. Je lance un programme, je le met en pause, je modifie mon code et je le "resume" (comment on dit ça en français ? ) et là il applique les changements au code et continue l'exécution du programme ...

  4. #24
    maa
    maa est déconnecté
    Membre actif
    Avatar de maa
    Inscrit en
    Octobre 2005
    Messages
    672
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Octobre 2005
    Messages : 672
    Points : 288
    Points
    288
    Par défaut
    non tu n'as pas compris.

    Je ne parle pas d'éditer du code à l'exécution mais du fait que Visual Studio souligne les erreurs au fur et à mesure que l'on écrit. Avec C#, il faut recompiler pour avoir la listes des erreurs.
    ****************************************

    - I don’t write plumbing code anymore
    - I use PostSharp
    - And you?


    ****************************************

  5. #25
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Un des "avantages" de VB c'est les objets de l'assembly Microsoft.VisualBasic et le namespace My (Computer, Network, Mouse...). Mais je me demande bien pourquoi ils ont rendu ça spécifique à VB... rien n'empêche de référencer cet assembly dans un projet C# et d'utiliser ces objets !

  6. #26
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par maa Voir le message
    non tu n'as pas compris.

    Je ne parle pas d'éditer du code à l'exécution mais du fait que Visual Studio souligne les erreurs au fur et à mesure que l'on écrit. Avec C#, il faut recompiler pour avoir la listes des erreurs.
    Ah ? pas chez moi... la plupart des erreurs s'affichent au fur et à mesure.

  7. #27
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Ahhhhh
    Et ça sert à quoi ?
    Et puis oui en plus ... les erreurs qu'il montre VB de cette manière ce ne sont que les erreurs de syntaxes ? parce que si c'est le cas, Visual C# 2005 le fait aussi ...

  8. #28
    maa
    maa est déconnecté
    Membre actif
    Avatar de maa
    Inscrit en
    Octobre 2005
    Messages
    672
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Octobre 2005
    Messages : 672
    Points : 288
    Points
    288
    Par défaut
    Et puis oui en plus ... les erreurs qu'il montre VB de cette manière ce ne sont que les erreurs de syntaxes ?
    non, toutes les erreurs que l'on obtiendrait si on compilait.

    Et ça sert à quoi ?
    à gagner du temps.
    ****************************************

    - I don’t write plumbing code anymore
    - I use PostSharp
    - And you?


    ****************************************

  9. #29
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Ouai bon en même temps dans un projet bien organisé la compilation ne prend que 5 secondes. Chaque langage a ces avantages et ces inconvéniants ...

  10. #30
    maa
    maa est déconnecté
    Membre actif
    Avatar de maa
    Inscrit en
    Octobre 2005
    Messages
    672
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Octobre 2005
    Messages : 672
    Points : 288
    Points
    288
    Par défaut
    Non là il faut avouer... c'est +1 pour VB (même si j'en suis pas un féru défenseur). Ca prend pas mal de temps si tu as un gros projet et que tu dois le compiler 3 ou 4 fois avant d'avoir corrigé toutes les erreurs.
    Mais pire que tu t'en rend compte à la compilation que tout une parti de code est à revoir à cause d'une erreur de conception qui ne compile pas c'est un peu dômmage... il vaut bien mieux corriger l'erreur en temps réel.
    J'attends avec impatience la sortie de Resharper pour VS 2008 pour combler ce manque.
    ****************************************

    - I don’t write plumbing code anymore
    - I use PostSharp
    - And you?


    ****************************************

  11. #31
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    En même temps choisir un langage pour une seule fonctionnalité ... et puis il y a toujours ReSharper comme tu dit, donc rien ne nous empèchera de rester dans notre C#

  12. #32
    En attente de confirmation mail
    Inscrit en
    Août 2006
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Août 2006
    Messages : 550
    Points : 669
    Points
    669
    Par défaut
    VB.NET a hérité de l'expérience de ces prédécesseurs.

    - Les paramètres optionnels
    - La liaison tardive
    - ParamArray
    - Redim preserve
    - ... et d'autres que j'oublie surement

    Si VB6 n'était pas vraiment un langage très structuré, je pense que vb.net est devenu un langage qui mérite d'être pris en compte pour de grand projet.

    Actuellement, nous sommes arrivés au point ou les développeurs sont d'accord pour dire que les langages s'equivalent, malgré quelques irreductibles qui considèrent que le langage qu'ils ont choisi est le meilleur.

    Personnellement, je suis VBiste et j'ai une légère préférence pour VB

  13. #33
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Points : 6 334
    Points
    6 334
    Par défaut
    Juste pour en revenir aux paramètres optionnels, j'utilise une technique dans mon projet InfoBox qui permet d'avoir un pseudo comportement optionnel. Les paramètres obligatoires (le message) est un paramètre standard, tout le reste passe dans un params.
    Le tout associé à une bonne documentation, et tout le monde est content.
    Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.

    Bonnes pratiques pour les accès aux données
    Débogage efficace en .NET
    LINQ to Objects : l'envers du décor

    Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter

  14. #34
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Points : 6 334
    Points
    6 334
    Par défaut
    Juste pour réagir à ce que tes arguments :
    Citation Envoyé par Kelpan Voir le message
    - Les paramètres optionnels
    Peuvent être pratiques mais une surcharge de méthode utilisant une valeur par défaut est viable aussi. C'est dans ta liste, à mon avis, la fonctionnalité la plus intéressante.
    Citation Envoyé par Kelpan Voir le message
    - La liaison tardive
    Discutable, il y a des avantages et des inconvénients à ce concept.
    Citation Envoyé par Kelpan Voir le message
    - ParamArray
    params en C#
    Citation Envoyé par Kelpan Voir le message
    - Redim preserve
    A t'on encore besoin de réallouer des array à l'heure des collections typées ?
    Je ne le pense pas.

    Ceci dit, je respecte ton point de vue et apprécie au plus haut point que pour une fois, quelqu'un à le courage de dire "je préfère VB.NET" plutôt que "VB.NET c'est mieux".
    Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.

    Bonnes pratiques pour les accès aux données
    Débogage efficace en .NET
    LINQ to Objects : l'envers du décor

    Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter

  15. #35
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    En fait, je pense que VB.NET est plus ou moins équivalent à C#, à condition d'utiliser Option Strict On. Sinon c'est limite dangereux, il donne même pas un warning pour des trucs qui devraient être complètement interdits !

  16. #36
    Membre habitué Avatar de TSalm
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    361
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 361
    Points : 177
    Points
    177
    Par défaut
    et pis d'abord, y'a pas un langage meilleurs qu'un autre

    Ca dépends de ce qu'on doit faire, de la taille du projet, et si on est à l'aise avec

    Mais perso, je suis d'accord, j'adoooore C#
    Même si je trouve que le D est bien meilleurs

  17. #37
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Citation Envoyé par TSalm Voir le message
    Même si je trouve que le D est bien meilleurs
    Heureusement que ce langage est toujours en cours de conception ...

  18. #38
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    547
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 547
    Points : 627
    Points
    627
    Par défaut
    Citation Envoyé par Kelpan Voir le message
    VB.NET a hérité de l'expérience de ces prédécesseurs.

    - Les paramètres optionnels
    - La liaison tardive
    - ParamArray
    - Redim preserve
    - ... et d'autres que j'oublie surement
    <troll incoming !>
    -l'operateur d'[in][de]crementation.

    Ha non ... =D

    Plus serieusement, de toutes facons, pour les programmeurs .Net, la finalité est la meme, puisqu'on programme tous sur le meme langage in fine. De fait, je pense que VB.Net est un bon langage en soit (apres je n'aime pas du tout la syntaxe totalement illisible (subjectif inside)), et on peut faire au moins autant de chose qu'en C# (apres c'est le Fx qui va limiter de toutes facons).

    Juste pour note, les late-binding implicites, je trouve plutot tres dangeureux qu'un vrai avantage.

  19. #39
    En attente de confirmation mail
    Inscrit en
    Août 2006
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Août 2006
    Messages : 550
    Points : 669
    Points
    669
    Par défaut
    Citation Envoyé par SirJulio Voir le message
    Juste pour note, les late-binding implicites, je trouve plutot tres dangeureux qu'un vrai avantage.
    Ce n'est pas le fait que la langage permette les liaisons tardives qui est dangereux, c'est l'utilisation que le développeur en fait.
    Un développeur se doit d'être rigoureux et ne pas programmer n'importe comment.
    Le fait de ne pas tester si le diviseur est égale à 0 avant d'effectuer une division est tout aussi dangereux. Pourtant C# ne t'oblige pas à le faire.

    Le réel problème que je constate actuellement, c'est que beaucoup de monde se prétend développeur à partir du moment qu'il connait le langage. (qui deviennent de plus en plus accessible).
    Combien de fois, ai-je vu quelqu'un poser un problème sur ce forum avec un source sans que mon cerveau se retourne tellement il y a de choses aberrantes ? ... pas beaucoup...

    Franchement, je ne suis pas d'accord pour dire que c'est le langage qui doit s'adapter à ces "pseudo-développeurs".

  20. #40
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    547
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 547
    Points : 627
    Points
    627
    Par défaut
    Je reformule, dangeureux n'etait sans doute pas le bon terme.

    Je trouve qu'il est risqué de masquer un appel tardif, surtout connaissant le surcout en performance que coute ce type d'appel. Je ne vois meme pas l'interet (a part l'aspect candy de la chose) d'autoriser ce genre d'appel. Ou comme on l'a vu dans ce thread, les problemes de conversions implicites de pointeurs managés (A& = B& passe à la compil mais plantera à l'execution).

    Bref, comme tu dis la rigueur est importante, est dans ce cas quel est l'interet de cette option Strict desamorcable en VB (ce n'est pas un troll. y a t'il une raison historique ?).

Discussions similaires

  1. Passage de paramètres par référence
    Par margagn dans le forum Framework .NET
    Réponses: 2
    Dernier message: 08/05/2007, 23h08
  2. [POO] Passage de paramètre par référence.
    Par abidi_niz dans le forum Langage
    Réponses: 3
    Dernier message: 12/10/2006, 12h20
  3. [C#] passage de paramètres par référence
    Par SesechXP dans le forum Windows Forms
    Réponses: 3
    Dernier message: 03/08/2006, 12h48
  4. [C#] Envoie des paramètres par référence
    Par efficks dans le forum C#
    Réponses: 4
    Dernier message: 29/11/2005, 23h53
  5. [EJB] Passage des paramètres par référence
    Par salome dans le forum Java EE
    Réponses: 2
    Dernier message: 05/07/2005, 11h25

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