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 est le meilleur des deux langages selon vous ?

Votants
1184. Vous ne pouvez pas participer à ce sondage.
  • Je suis intéréssé par Java et C#

    240 20,27%
  • C#

    377 31,84%
  • Java

    368 31,08%
  • J'apprécie le fait d'avoir l'alternative Java ou C#

    108 9,12%
  • Ni l'un ni l'autre

    36 3,04%
  • Sans opinion

    46 3,89%
  • Autre avis ? (précisez...)

    9 0,76%
C# Discussion :

C# versus Java [Débat]


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de jerome.fortias
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    164
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 164
    Par défaut
    Au risque de me facher avec les anti-MS (quoi cela n'existe pas) aprés avoir fait et du Java et du C# voila mon petit point de vue de petit chef de petits projets avec de petites équipes.

    Sur les aspects clients, portails, pocket PC, je préfère largement C#, qui est plus productif et moins verbeux que Java. Les outils de développement tels que Visual Studio, y compris la version gratuite Express, ou SharpDevelop (gratuit), ainsi que des clients Subversions ou l'utilisation d'outils UML compatible tel que StarUML permette de disposer du meilleur du gratuit et du payant. Le framework .net 3.5 est au passage une merveille et des outils comme MS Workflow Foundation mérite un vrai détour.

    Intervenant dans un environnement SAP, là aussi je préfère C# alors même que Java était plus présent des 2002 dessus.

    La forcee de C# et de .net c'est que c'est moins confusant, le choix d'outils externes d'haricots étant plus faible et l'offre étant superbe, tels que DUndas pour les charts, ou encore GridEx de Janus... Ce sont tous ces éléments qui font que je préfère C# nettement à Java ou la quantité d'outils fait qu'on se noit trop dans la technique en oubliant l'objectif premier de notre activité : FACTURER et avoir un client heureux.

    Par contre dans le domaine du bancaire, de l'assurance côté serveur d'application, là je préfère JAVA qui même si la machine virtuelle est moins performante permet de disposer d'outils particulièrement matures pour des mapping de l'intégration et pour avoir une approche SOA efficace et multi-systemes.

    En final, le top c'est l'interopérabilité .net Java...(jusqu'à avoir Eclipse comme EDI sur les compilos MS .net)....

    L'article cité en page précédente est plus qu'affligeant...C'est consternant quoiques cela est peu respectueux des sternes....

  2. #2
    Membre chevronné Avatar de npuzin
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    265
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2007
    Messages : 265
    Par défaut
    Je rentrerai pas dans les querelles d'experts entre la syntaxe du C# et celle du Java, pour moi cela reste de la POO et la petite facilité de langage par ci par la n'est pas un élément de choix stratégique.

    Je vous ferez juste part de mon expérience sur ce que je connais tres bien le: .NET avec C#.

    Nous avons développé pendant 3 ans à 5 développeurs un ERP complexe en .NET.

    Nous avons longuement hésité entre Java et .NET il y a 3 ans, et nous avons consulté 3 consultants extérieurs pour nous aider (qui n'ont pas forcément étaient très impartials puisque je pense qu'ils nous ont préconisé ce qu'ils connaissaient le mieux).

    Nous avons choisi .NET principalement car nous avions des interfaces complexes a developper et que nos utilisateurs font beaucoup de saisie et ils veulent qqchose d'ultra rapide.

    Il y a 3 ans déjà et ça n'a pas tellement changé, java n'était pas réputé pour sa rapidité au niveau des interfaces, ni pour sa facilité de développement d'interfaces.

    C'est pour cette raison que la balance a penché en faveur du .NET.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Je dirais le Java, vu que je ne connais pas le C#.

  4. #4
    Membre actif

    Inscrit en
    Mars 2002
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 30
    Par défaut
    Citation Envoyé par okeefe
    même si mono est là, je vois pas pourquoi j'irais foutre du ms dans un système linux... on choisie linux par choix, c'est certainement pas pour apporter les bug ms avec nous
    Attention a ne pas partir sur un troll à 2 euros ...

    Le fait est que le code de l'api de dotNet n'est pas ouvert, ce qui est difficilement acceptable par un linuxien

    Alors si on fait un débat C# VS JAVA, parlons plutot de rapidité de développement, des possibilités qu'offre un langage et pas l'autre, du déploiement, de la maintenance, enfin bref les vrais argument qui joue en faveur de chacun de ces deux langages !
    Pour la rapidité de developpement, c'est pas les langages, mais les IDEs qu'il faut comparer.

    Les possibilités qu'offre les langages sont equivalente, m$ a fait une copi quasi conforme...

    La seule vrai difference, c'est la portabilité perdu au profit d'une meilleur integration a windows...

  5. #5
    Membre émérite
    Avatar de Geronimo
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 156
    Par défaut
    Clément, tu dis qu'il faudrait comparer la différence des IDE, mais là encore, cela risque de dépendre de chaque IDE...
    Sur le plan vitesse à l'exécution, sais-tu si avec C# on garde le (petit) avantage de la vitesse du C/C++ ? (merci de ne pas troller sur Java + ou - rapide que C++, un débât entier y est consacré)

  6. #6
    Membre expérimenté Avatar de Epictète
    Inscrit en
    Mars 2002
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 219
    Par défaut
    Citation Envoyé par Geronimo
    Sur le plan vitesse à l'exécution, sais-tu si avec C# on garde le (petit) avantage de la vitesse du C/C++ ?
    Cette question est bien connue, mais elle est mal posée, la question est qu'en est il de la rapidité d'exécution du code managé (.NET, n'importe quel langage, y compris C# ou C++) versus le code non managé (compilateur natif, C, C++ ou Delphi, ...).

    La réponse est : Ca dépend.....

    Ca dépend de ce que fait le code, de la taille du code, de la ram dispo, de la machine, et de plein d'autre choses.

    Parfois le code non managé sera plus rapide, et parfois c'est l'inverse...

    Mais de dire que l'un ou l'autre est plus rapide est donc faux, parce que cela dépend de la situation.

    Cependant il est évident que à terme l'avenir est au code managé, Java ou .NET au choix, pour pleins de raisons...

  7. #7
    Membre actif

    Inscrit en
    Mars 2002
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 30
    Par défaut
    Quand je vois tous les problèmes qu'on a avec les interfaces graphique en Java... alors que le langage est prevus a la base pour etre portable...

    Réussir a porter les interfaces graphiques 100% windows vers une autre bibliotheque corresponds a mon avis a du suicide... AWT, Swing et SWT de java apporte chaqu'une autant de problème que de solution

    - AWT utilise les librairie native de chaque OS, donc les fonctions se reduissent au plus petit denominateur commum... c'est a dire, pas grand chose de fonctionnel. Le look est plate forme dependant.
    - Swing 100% java, est plus lente que des librairies natives. Le look est independant de l'OS.
    - SWT le look est a moitier dependant de l'OS, mais on pert le garbage collector -> retoure des fuites de memoire -> la me-merde quoi !

    Alors dire qu'on va faire tout ca avec gtk dans mono ... Lol !

    Pour moi, dotNet sera portable quand 90% des application dotNet fonctionnerons aussi bien sur windows que sur Linux, sans modification du code...

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2002
    Messages : 33
    Par défaut
    dire que l'argument de la portabilité n'est pas valable parce que dans un an si tout se passe bien C# sera portable c'est un peu faire preuve d'optimisme orienté à mon sens. Avancerais-tu cela aujourd'hui pour un projet à entamer comme argument à ton manager pour l'infléchir en direction de C# ? moi non.

    d'accord pour dire que dévolepper des IHM avec Java c'est pas la panacée. Mais aujourd'hui la force de java est plutôt au niveau du serveur et de l'architecture J2EE et aussi du fait de son universalité : de l'IHM (un peu lourde d'accord) au serveur d'application à la generation de pages dynamiques, la gestion des transactions de la sécurité et de l'ensemble des activité de l'entreprise il n'y a qu'un language : Java.

    Et puis d'une manière bassement pragmatique : la majorité des développements d'applications dans l'industrie sont en Java, la majorité des postes à pourvoir dans le développement le sont autour des technologies Java / J2EE (un rapport de 1 à 5 entre C# et Java sur jobserve.com le plus gros site d'emploi anglo-saxon) et maintenant que la plupart des entreprises ont migré vers cette technologie il me semble qu'il va etre délicat de les faire migrer de nouveau vers C#.

    J'imagine plutot qu'il va y avoir une sorte de paix armée entre J2EE et .Net grâce aux WebServices.

  9. #9
    Membre à l'essai
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4
    Par défaut Java Vs C#
    Certes, Java est de plus en plus opté dans plusieurs domaine pour plusieurs raisons mais le C# a l'aussi sont publique

  10. #10
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par escalebur Voir le message
    Certes, Java est de plus en plus opté dans plusieurs domaine pour plusieurs raisons mais le C# a l'aussi sont publique
    Java a surtout un existant beaucoup plus important : .Net (et C#) n'existe que depuis moins de 10 ans, Java depuis plus de 15 ans.

    Quelqu'un a-t-il des stats sur l'usage respectif des plateformes .Net et Java sur les nouveaux projet ?

  11. #11
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Par défaut
    Plus important que le langage (syntaxe/grammaire) c'est la librairie qui est importante.

    Les libraires .Net sont clairement un avantage quand on veut faire une application windows, en particulier une application graphique. Celles de Java sont avantagées dés qu'on cherche a être multiplateforme (malgré tout mon respect a Mono).

    Coté versions des langages/librairies, je trouve autant de défaut à la rapidité des évolutions .Net qu'a la lenteur des évolutions de Java. J'ai a peine le temps de monter en compétence dans une version de .Net que la suivante arrive, remettant pas mal de choses en cause. Quand a Java, ca me donne de plus en plus l'impression d'un patchwork hétérogène de packages, chacun ayant sa logique propre.
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  12. #12
    Membre actif
    Homme Profil pro
    Architecte serveur
    Inscrit en
    Septembre 2011
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2011
    Messages : 64
    Par défaut
    Au temps pour moi.

    Je vais pas supprimer mon message en ce sens que vos réponses sont intéressantes, même si j'aurais vraiment du tourner 7 fois ma langue dans ma bouche avant de parler (et vérifier mieux ce que je pensais vrai).

  13. #13
    Membre extrêmement actif
    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 273
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 273
    Par défaut
    Citation Envoyé par Bluedeep Voir le message
    Java a surtout un existant beaucoup plus important : .Net (et C#) n'existe que depuis moins de 10 ans, Java depuis plus de 15 ans.

    Quelqu'un a-t-il des stats sur l'usage respectif des plateformes .Net et Java sur les nouveaux projet ?
    Non moi, je peux mesurer au nombre d'appel d'offres que la segmentation est plutôt sur l'utilisation ou pas d'open source. Aujourd'hui j'aurai tendance à dire que .Net est très demandé dans le dev commando ou de proximité, et Java reste très orienté serveur. Cependant, difficile de faire une stat. Mais ce que je vois c'est que ces deux technologies sont souvent mutuellement exclusive. C'est l'un ou l'autre; les seules transitions sont des migrations.

    Disons que .Net a pour lui une productivité supposée supérieure dans certains domaines (IHM principalement) et de séduire certains décideurs par le côté closed source, suivi par un éditeur.
    Dans les arguments pro .Net on me dit souvent :
    - Plateforme homogène
    - IDE performant
    - Productivité
    - Développement client simple
    Dans les arguments pro .Java on me dit souvent :
    - Maturité technologique
    - Portabilité
    - Technologie orientée serveur

    Je crois que le clivage entre les deux vient bien souvent de la perception de l'open source des décideurs.

  14. #14
    Membre éprouvé
    Avatar de _skip
    Homme Profil pro
    Développeur d'applications
    Inscrit en
    Novembre 2005
    Messages
    2 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur d'applications
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 898
    Par défaut
    Il est clair que dans le cas d'un client full-microsoft (windows, AD, exchange, sharepoint, SQL server), c'est presque dommage de venir avec du java même si ce dernier ferait parfaitement l'affaire. Question d'homogénéité technologique aussi.
    De l'autre côté, il m'est arrivé de voir des clients exiger du java pour les mêmes raisons, serveurs majoritairement linux, BDD oracle etc...

    En fait, je me demande même si c'est vraiment le choix du développeur. En revanche décider d'acquérir des compétences approfondies sur l'un ou l'autre de ces langages est clairement coûteux. Cela fait 3-4 ans que je n'ai plus fait de .Net, c'est clair que c'est comme vélo mais lorsqu'on s'y remet après une absence, on pédale nettement moins vite.

    Sans être exclusif, maîtriser en profondeur .Net et java avec toute la connaissance de l'écosystème que ça implique, je pense que c'est dur. Il y a des gens ici qui sont experts des 2 technos?

  15. #15
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par B.AF Voir le message
    Non moi, je peux mesurer au nombre d'appel d'offres que la segmentation est plutôt sur l'utilisation ou pas d'open source.
    Possible.

    Aujourd'hui j'aurai tendance à dire que .Net est très demandé dans le dev commando ou de proximité, et Java reste très orienté serveur.
    En dehors du fait que je ne comprends pas ce que tu entends pas "dev de proximité" (pour commando, j'ai une idée), je ne vois pas bein en quoi .net serait moins orienté serveur que java : dit autrement,on ne voit pas en quoi la relative faiblesse supposée de java (sous toutes réserves : n'ayant pas utilisé de java depuis près de 10 ans, je ne m'hasarderais pas à émettre une opinion la dessus) sur les applis "stations de travail" lui donnerait un avantage en terme de techno serveur.

    Cependant, difficile de faire une stat. Mais ce que je vois c'est que ces deux technologies sont souvent mutuellement exclusive. C'est l'un ou l'autre; les seules transitions sont des migrations.
    Assez d'accord, même si de facto, dans beaucoup de boite, on a des applis dans les deux technos qui échangent des infos entre elles.

    Disons que .Net a pour lui une productivité supposée supérieure dans certains domaines (IHM principalement) et de séduire certains décideurs par le côté closed source, suivi par un éditeur.
    Il n'existe pas d'open source en .net ? ah bon.

    Dans les arguments pro .Net on me dit souvent :
    - Plateforme homogène
    - IDE performant
    - Productivité
    - Développement client simple
    Les IDE java ne sont pas performant ? (c'est une question, encore une fois je n'ai pas touché aux technos java depuis des éternités, même en archi, et bien sur encore moins en dev.)

    Dans les arguments pro .Java on me dit souvent :
    - Maturité technologique
    - Portabilité
    - Technologie orientée serveur
    Pour la portabilité c'est une évidence. Pour les deux autres points, on peut penser qu'au bout de 9 ans .Net a atteint une certaine maturité technologique; quant à la techno orientée serveur, encore une fois, là je ne vois pas trop en quoi .Net est inférieur sur ce point. (mais ma méconnaissance des technos java fait que j'ai peut être raté quelque chose).

    Je crois que le clivage entre les deux vient bien souvent de la perception de l'open source des décideurs.
    Possible.

  16. #16
    Membre confirmé
    Inscrit en
    Mars 2002
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 66
    Par défaut
    Je tient a spécifier qu'un programme java est portable sur toute les plate-formes car le même .class interprété sur différente plate-forme est interprété par la JVM de la plate-forme. Comme le C# n'utilise pas de machine virtuelle, le code sera portable, mais devra être compilé sur chaque système avant d'être qualifié de portable. Je tient aussi a souligner que go-mono veut implémenter C# pour unix, mais comme l'a si bien spécifié ClémentCunin, il y a bien d'autres plate-formes que windows et unix. Alors, à quand la véritable portabilité de C#?

    La portabilité n'est pas un argument car C# sera bientôt portable? Alors, nous pourrions aussi dire que la rapidité non-plus: ne croyez-vous pas que Sun travaille sans-cesse a améliorer la rapidité de ses JVM? Nous ne pouvons argumenter sur ce qui n'existe pas déjà, car nous entrerions dans un autre débat: Microsoft fera-t-il du meilleur travail que Sun durant la prochaine année?

  17. #17
    Inactif  
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 51
    Par défaut
    Citation Envoyé par neo.51
    Csharpdevelopp est un IDE C# entièrement gratuit, et pour ce qui est du choix de la plateforme, le projet go-mono avance à pas de géant : on a déjà tout ce qui est asp.net qui marche avec apache. Je pense que d'ici 1 ans on pourra développer des solution .NET sous linux de manière fiable.
    Quelques questions, à ce propos :

    -Quel est le degré de maturité de cet IDE (Csharpdevelopp ) ? Peut-on faire du travail "serieux" avec (càd en entreprise) ?
    -Quels sont les impacts de la nouvelle politique de brevet de Microsoft sur ce type d'initiative (en particulier Mono) ? Est-ce que Microsoft est en train de se couper de la communauté Open-Source ? Si oui, je pense que .Net, malgré ses qualités techniques eventuelles (c'est pas moi qui vais trancher ce débat ) n'a pas beaucoup d'avenir face à Java, largement soutenu par le monde Open Source et Libre

  18. #18
    Inactif  
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 51
    Par défaut
    Question un peu annexe au débat : que valent les initiatives "d'intégration" de Java dans .Net de Microsoft, style J# ou JLCA ?
    Pour J#, si c'est vraiment un langage .Net à part entiere, je suis etonné qu'un en parle aussi peu. Ca permettrait aux developpeurs Java de se diversifier, le cas echeant, voire de faire une approche "par la bande" de .Net...

  19. #19
    Membre actif

    Inscrit en
    Mars 2002
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 30
    Par défaut
    Pour faire une conversion de Java à C#... Le langage en lui meme ne pose pas de problème, a 2-3 mots clé pres c'est la meme chose... Ce qu'il faut réapprendre, c'est l'api dotNet. Donc très peu d'interret dans l'absolu pour J#

    voire de faire une approche "par la bande" de .Net...
    Je pense pas que la communauté libre soit vraiment sencible a se genre d'arguments...

  20. #20
    Membre actif

    Inscrit en
    Mars 2002
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 30
    Par défaut
    JLCA = Java Language Conversion Assistant

    Un utilitaire pour convertir un programme java en c#...
    http://msdn.microsoft.com/vstudio/downloads/tools/jlca/default.asp

    Quelqu'un a-t-il testé la chose ?

Discussions similaires

  1. vba versus java
    Par lemacdupc33 dans le forum Langages de programmation
    Réponses: 3
    Dernier message: 30/05/2017, 10h52
  2. Temps de compilation C++ versus Java
    Par ZeRevo dans le forum Eclipse C & C++
    Réponses: 0
    Dernier message: 16/12/2011, 13h34
  3. Que choisir : PHP versus Java ?
    Par Sniper37 dans le forum Général Conception Web
    Réponses: 164
    Dernier message: 28/04/2009, 16h50
  4. Vitesse : C Versus Java
    Par ToTo13 dans le forum C
    Réponses: 15
    Dernier message: 01/10/2006, 09h19
  5. WinDev versus Java
    Par Tijee dans le forum WinDev
    Réponses: 4
    Dernier message: 29/01/2006, 10h15

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