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

Affichage des résultats du sondage: Quel langage choisir pour Dotnet ?

Votants
1020. Vous ne pouvez pas participer à ce sondage.
  • C#

    611 59,90%
  • VB.NET

    206 20,20%
  • C++

    59 5,78%
  • Delphi

    84 8,24%
  • Autre (précisez)

    9 0,88%
  • Sans opinion

    51 5,00%
Dotnet Discussion :

Que choisir ? C# , VB.NET, C++, Delphi ? pourquoi ? [Débat]


Sujet :

Dotnet

  1. #421
    Membre expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 239
    Points
    3 239
    Par défaut
    Citation Envoyé par Kelpan
    Oui, avec moins de maturité apparement...


    Pitié. Merci de nous épargner vos reflexions immatures...
    Je pensais que la qualité d'un développeur ne s'appréciait pas selon le language.

    De plus, vous donnez vraiment l'impression d'être à des années lumière de la réalité d'un projet. Tout cela manque visiblement d'expérience...
    Lol, faut pas prendre au mot ce que j'ai dit en "râlant" C'était juste pour détendre l'atmosphère et montrer que les avis fermés avait peu d'intérêt (comme par hasard j'ai pris l'avis opposé au mien )

    Evidemment, je suis très loin de penser cela !
    D'ailleurs si tu lis attentivements les posts suivants, tu verras que mon avis est tout à fait contraire à cette vision des choses...

    Pour résumer ma pensée : Vouloir faire du VB6 avec VB .Net, c'est courrir le risque de perdre beacoups de temps par la suite mais faire du VB .Net "propre" est possible et même plus rapide que de C#. Je crois juste que la majorité des développeurs VB .Net viennent de VB 6 et que pour cela, il ne peuvent que difficilement apréhander (??? : désolé pour l'orthographe, je suis pas très bon... ) les notions propres à .NET

    ==> Imprécision VB 6 dans une macro == aucun danger
    ==> Imprécision VB .Net dans une application == danger !

    Encore un petit truc avant de finir:
    Je tiens à m'excuser de la manière dont j'introduis parfois mes idées... Je vois dans vos échos qu'elle vous semble un peu déplacée... Je m'en excuse profondément... Quand à mon immaturité, je crois qu'elle n'est qu'apparente, je suis capable d'une très grande maturité mais quand je m'énerve (par exemple quand j'ai l'impression qu'on s'en prend à un langage que j'aime bien, que ce soit VB .Net ou JavaScript, ou à mon avis en général, je le reconnais) il m'arrive de ne pas réfléchir avant de parler (comme Epiméthée quoi !) et de dire des conneries sans intérêt... Je voulais vraiment vous dire que de mes humbles 15 ans je m'en excuse profondément.
      0  0

  2. #422
    Membre expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 239
    Points
    3 239
    Par défaut
    Un excellent comparatif, extrêmement object entre C# et VB .NET
    http://www.lacoude.com/docs/public/VBversusCsharp.aspx

    Each language has its inconveniences and its advantages. C# is not very well covered by the academic world even though getting technical training is easy. As a consequence, C# has a smaller community than VB.Net. However, C# programmers are likely to be highly trained technicians with abilities for self-education. Most of them will have some C++ background. Because Visual Basic has been around for a very long time under different forms, VB.Net has a very large community. That said, some Visual Basic programmers, when they come from the scripting world, will be more familiar with using objects than coding them.
      0  0

  3. #423
    Membre expérimenté Avatar de davcha
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    1 258
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 258
    Points : 1 539
    Points
    1 539
    Par défaut
    Y'a de belles bétises dans ton papier quand même, Fremy.
      0  0

  4. #424
    Membre expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 239
    Points
    3 239
    Par défaut
    Citation Envoyé par davcha
    Y'a de belles bétises dans ton papier quand même, Fremy.
    Quel papier ? Quelles bétises ? Non mais j'aimerais savoir quand même... histoire de plus recommetre la faute...
      0  0

  5. #425
    Membre expérimenté Avatar de davcha
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    1 258
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 258
    Points : 1 539
    Points
    1 539
    Par défaut
    Ce papier : http://www.lacoude.com/docs/public/VBversusCsharp.aspx.

    Sinon, pour citer quelques bétises :
    - l'absence du mot clef "final" en C#.... Ouais, effectivement, en C# c'est "sealed"...
    - Fonction IsDBNull inexistente en C#, mais bon.. Comme y'a l'objet System.DBNull et effectivement Convert.IsDBNull ça n'a aucune importance.
    - Le coup de la fonction overridée qui s'appelle elle-même. Très jolie d'ailleurs, ça nous démontre qu'une conception pourrie en C# ne fonctionne pas... comparaison très utile donc.
    - Absence de AddressOf en C#, mais bon, on a les délégués, c'est pas fait pour les chiens.
    - Absence de paramètres optionels en C#.... ce qui est en fait une bonne chose.
      0  0

  6. #426
    Membre expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 239
    Points
    3 239
    Par défaut
    Euh....
    * Je pensais que sealed c'était NotInheritable moi...
    * VB .Net possède aussi les Délégués... Délégués != AdressOf
    * En quoi les paramètres optionels sont ils mauvais ???
    J'ai déjà vu des sources C# qui ressemblais à ca :
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ... void f1(String s1, String s2, String s3) { /* ... */ }
    ... void f1(String s1, String s2) { f1(s1,s2,""); }
    ... void f1(String s1) { f1(s1, "", ""); }
    ... void f1() { f1("","",""); }
    En VB on aurait eu :
    Code VB : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ... Sub f1(Optional s1 as String = "", Optional s2 as String = "", Optional s3 as String = "")
       ' ...
    End Sub
      0  0

  7. #427
    Membre expérimenté Avatar de davcha
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    1 258
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 258
    Points : 1 539
    Points
    1 539
    Par défaut
    sealed/NonInheritable, c'est pas la question, l'histoire est qu'il y a des erreurs dans ce papier, et c'en est une : "final" existe en C#, c'est juste qu'il a une autre dénomination.

    AddressOf et les délégués, c'est sensiblement la même chose, dans la mesure où AddressOf ne fait rien d'autre que de créer un délégué.

    Les paramètres optionels, ça peut réduire la lisibilité du code et mener à des bétises du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Public Overloads Function foo(bar as long = 0, foobar as long = 0)
    End Function
    Public Overloads Function foo(bar as long = 0)
    End Function
    Dans un tel cas, c'est joyeusement ambigü.
      0  0

  8. #428
    Rédacteur
    Avatar de The_badger_man
    Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2005
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 745
    Points : 8 538
    Points
    8 538
    Par défaut
    Citation Envoyé par FremyCompany
    J'ai déjà vu des sources C# qui ressemblais à ca :

    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ... void f1(String s1, String s2, String s3) { /* ... */ }
    ... void f1(String s1, String s2) { f1(s1,s2,""); }
    ... void f1(String s1) { f1(s1, "", ""); }
    ... void f1() { f1("","",""); }
    plus simple :
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    void f1(params String[] para)
    {
     
    }
    arguments variables en nombres
      0  0

  9. #429
    Membre expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 239
    Points
    3 239
    Par défaut
    Citation Envoyé par The_badger_man
    plus simple :
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    void f1(params String[] para)
    {
     
    }
    arguments variables en nombres
    Lol, c'était pour l'exemple, j'avais pas envie de taper des types différents

    Parfois c'est un object X, un object Y, un Integer, ...
      0  0

  10. #430
    Rédacteur
    Avatar de The_badger_man
    Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2005
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 745
    Points : 8 538
    Points
    8 538
    Par défaut
    je me doute bien. C'était pour alimenter le débat
      0  0

  11. #431
    LLB
    LLB est déconnecté
    Membre expérimenté
    Inscrit en
    Mars 2002
    Messages
    967
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 967
    Points : 1 410
    Points
    1 410
    Par défaut
    - Absence de paramètres optionels en C#.... ce qui est en fait une bonne chose.
    Bien utilisée, c'est une fonctionnalité qui peut être vraiment pratique.
    Les paramètres optionels, ça peut réduire la lisibilité du code
    Comme toute fonctionnalité : mal utilisée, c'est moche.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Public Overloads Function foo(bar as long = 0, foobar as long = 0)
    End Function
    Public Overloads Function foo(bar as long = 0)
    End Function
    Tu peux considérer que le problème vient de programmeur (mais je comprends que ça puisse arriver involontairement). Tu peux aussi, et surtout, considérer que le problème vient de l'implémentation de cette fonctionnalité. Le compilateur devrait détecter l'ambigüité (je suis étonné que VB ne le fasse pas). Surtout que ça ne devrait pas être compliqué à faire.

    Mais pour moi, ce n'est pas un problème dû à la fonctionnalité. Car tu pourrais tout aussi bien reprocher au langage d'autoriser la surcharge, précisément pour la même raison. Il existe d'ailleurs des langages qui possèdent les arguments optionnels, mais pas la surcharge (OCaml...).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    void f1(params String[] para)
    Non. Ce n'est vraiment pas pareil. D'une part, c'est moche de créer un tableau pour ça. Et surtout, c'est dangereux. La taille du tableau ne faisant pas partie du type, le compilateur ne peut pas vérifier que l'appel est correct. Je serais triste si une fonction d'une bibliothèque plante à l'exécution, juste parce que j'ai mis un argument de trop !


    Et sinon, pour répondre à la question de départ, j'ai choisi F#. La puissance de la programmation fonctionnelle, la concision des langages dynamiques, la sûreté des langages à typage très fort, tout ça combiné aux avantages de .NET. Dommage qu'il ne soit pas proposé dans le sondage (et j'ai l'impression d'être le seul développeur F# de tout le forum).
      0  0

  12. #432
    Membre éprouvé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    764
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 764
    Points : 909
    Points
    909
    Par défaut
    Je viens de voter... et j'ai choisi le C#. Mais pourquoi ?

    - C# / VB : uniquement pour la syntaxe, car je n'ai aucune idée des autres différences qui peuvent exister !
    Le C# a le même type de syntaxe que le C++ et le Java, langages déjà bien établis dans le domaine de la programmation objet, tandis qu'il me semble que le VB est moins courant (pas taper, je dis ça comme une impression personnelle, et parce que j'ai déjà vu dans mon école des cours de Java et de C++ (et de C et de Matlab et autres "langages" plus ou moins bizarres...) mais jamais de VB)

    - C# / C++ : parce que le C# a été conçu spécialement pour .NET, contrairement au C++...

    - C# / Delphi : euh... j'avoue... je ne connais pas du tout Delphi :p
      0  0

  13. #433
    Membre expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 239
    Points
    3 239
    Par défaut
    Effictivement, seul VB a une syntaxe VB

    Delphi s'en rapproche un petit peu, sans que cela soit comparable
      0  0

  14. #434
    Rédacteur
    Avatar de abelman
    Inscrit en
    Février 2003
    Messages
    1 106
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 1 106
    Points : 2 629
    Points
    2 629
    Par défaut
    Citation Envoyé par davcha

    Les paramètres optionels, ça peut réduire la lisibilité du code et mener à des bétises du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Public Overloads Function foo(bar as long = 0, foobar as long = 0)
    End Function
    Public Overloads Function foo(bar as long = 0)
    End Function
    Dans un tel cas, c'est joyeusement ambigü.
    Avant d'affirmer ce genre de chose, prenez la peine de tester svp!!
    D'abord la syntaxe vb n'est pas bonne, et le compilateur VB détecte bien ce genre d'erreur (que l'on mette overloads ou pas)
    Voir fichier image joint
    Images attachées Images attachées  
      0  0

  15. #435
    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
    En ce qui me concerne je trouve ça utile

    Code vb.net : 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
     
     
    ' Exemple de fonction avec une dizaine de paramètres
    Function MaFonction( _
        Optional Byval Str_Param1 As String = "", _
        Optional Byval Str_Param2 As String = "", _
        Optional Byval Str_Param3 As String = "", _
        Optional Byval Str_Param4 As String = "", _
        Optional Byval Str_Param5 As String = "", _
        Optional Byval Str_Param6 As String = "", _
        Optional Byval Str_Param7 As String = "", _
        Optional Byval Str_Param8 As String = "", _
        Optional Byval Str_Param9 As String = "" _
       )  As Integer
     
    End Function
     
    Public Sub Test()
        ' J'appel ma fonction avec les paramètres qui m'interessent ....
        ' ex : param2 et param8
        Int_Result1 = MaFonction(Str_Param2:= "P2", Str_Param8:= "P8")
    End Sub
      0  0

  16. #436
    Nouveau membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2007
    Messages : 35
    Points : 27
    Points
    27
    Par défaut Salut
    Bonjour
    Je viens de lire une partie de ce Topic (oui, une partie seulement , en faite ça commence à faire long quand même)

    Ce que j'en comprends :
    Le C# est équivalent au VB.NET du point de vue des performances (durée d'exécution, occupation mémoire,...) et seul reste la différence de syntaxe.
    Donc il faut choisir le langage avec le quel on est le plus alaise.

    A moins que je ne raconte des grosses conneries???
      0  0

  17. #437
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    652
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 652
    Points : 730
    Points
    730
    Par défaut
    Citation Envoyé par Polack77 Voir le message
    A moins que je ne raconte des grosses conneries???
    Il y en a de belles dans ce topic, mais pas vraiment dans ton post :)
    Il ne rentre juste pas dans les détails hors-syntaxe qui peuvent faire préférer un langage à l'autre, et c'est pas forcément plus mal.
    (bon ok, qui peuvent faire préférer C# à VB.NET vu qu'il est quand même nettement mieux. NA :)
      0  0

  18. #438
    Membre averti Avatar de npuzin
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    265
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2007
    Messages : 265
    Points : 423
    Points
    423
    Par défaut
    A voté :

    C++ : rarement justifié
    Delphi : bientôt au musée des langages de programmation
    C# ou VB : peu importe

    Mais j'ai voté C# quand même car je préfére sa syntaxe.

    Bon développements .NET
      0  0

  19. #439
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    113
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 113
    Points : 48
    Points
    48
    Par défaut
    mois j'ai voté C# , je viens de démarrer avec .Net,
    Bon J'ai choisis C# parce que je suis un programmeur Delphi, et je voudrez migrer vers les produits microsot ,
    Bon il y a bouceaup de cause : Politique , géographique,Emploi, Technique,...
      0  0

  20. #440
    Membre à l'essai
    Inscrit en
    Mai 2008
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 29
    Points : 21
    Points
    21
    Par défaut je vote pour C#
    moi j'ai voter pour C# méme si j connais VB.NET plus que C# (mais j suis entrain d'apprendre et de m'approfondir dans C#) et j l'ai choisi parce qu'il est multi plateforme (on m'avait dit que VB n'est pa multiplateforme) et il a le syntaxe proche de ce lui de java que j métrise déja
      0  0

Discussions similaires

  1. Que choisir : Delphi ou C++ ?
    Par Gwipi dans le forum Débats sur le développement - Le Best Of
    Réponses: 30
    Dernier message: 18/07/2010, 11h43
  2. Que choisir ? Delphi ou Java ?
    Par Jean-Yves dans le forum Débats sur le développement - Le Best Of
    Réponses: 89
    Dernier message: 19/04/2008, 15h40
  3. [VB.Net] Que choisir tableaux ou collections ?
    Par Pasiphae dans le forum VB.NET
    Réponses: 2
    Dernier message: 16/03/2006, 15h35
  4. [D2005] - Que choisir Winform ou VCL.NET ?
    Par RamDevTeam dans le forum Delphi .NET
    Réponses: 2
    Dernier message: 07/02/2006, 05h25
  5. Que choisir ? : ASP ou ASP.NET ?
    Par Allen dans le forum Général Conception Web
    Réponses: 2
    Dernier message: 24/01/2006, 14h03

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