Aller au contenu
Règlement du forum ×
IPTV et arnaques ×

C# vs Java que choisir ?


zaki

Messages recommandés

salut ;

j'ai une application de messagerie a faire (messagerie instantanée) en utilisant les sockets mais le seul problème c'est que j'hésite entre C# et Java, franchement je ne sais pas lequel choisir !

je demande un conseil de votre part

merci

Lien vers le commentaire
Partager sur d’autres sites

Invité HAVOC

Ouahhh que de troll que de troll lol

 

Le Java instable et moins pratique, moins logique...etc. Franchement les mecs, JAVA et C# se ressemblent sur de nombreux points, ce n'est pas étonnant qu'une des principaux responsables du développement de C# soit un ancien de chez Sun.

 

Certes C# a certains avantages actuellement sur Java, une vitesse d'exécution un poile meilleure et facile certaines fois la conception de gros projets mais il a aussi des lacunes :

- Il revient cher : Licence couteuse, plateforme Windows (y'a un projet pour le portage sous Unix/Linux mais il a des limites), IDE couteux (sauf version express gratuite).

 

Moi je te dirais qu'il vaut mieux coder ça en Java, c'est multiplateforme et parfait pour la conception d'un client de messagerie (après tout c'est un langage orienté réseau donc les sockets ça lui connait).

 

De plus, une fois que tu métrises la programmation en JAVA, tu peux te mettre au C# facilement, les langages sont similaires sur bien des principes, il faut comprendre les grandes lignes de la POO c'est tout : héritage, transtipage, interfaces...etc.

Lien vers le commentaire
Partager sur d’autres sites

Ouahhh que de troll que de troll lol

 

Le Java instable et moins pratique, moins logique...etc. Franchement les mecs, JAVA et C# se ressemblent sur de nombreux points, ce n'est pas étonnant qu'une des principaux responsables du développement de C# soit un ancien de chez Sun.

 

Here we go again this useless discussion, the JAVA camp vs. .NET camp that never ends.

 

By the way Havoc, Anders Hejlsberg never worked for SUN, He came to Microsoft from Borland.

Lien vers le commentaire
Partager sur d’autres sites

Invité HAVOC
Here we go again this useless discussion, the JAVA camp vs. .NET camp that never ends.

 

By the way Havoc, Anders Hejlsberg never worked for SUN, He came to Microsoft from Borland.

 

Oui désolé pour la coquille, il a été au début embauché par Microsoft pour développer des classes graphiques JAVA pour Windows, à l'époque il n'y avait que AWT et pas Swing. Désolé de l'amalgame.

Lien vers le commentaire
Partager sur d’autres sites

- Il revient cher : Licence couteuse, plateforme Windows (y'a un projet pour le portage sous Unix/Linux mais il a des limites), IDE couteux (sauf version express gratuite).

 

Sur windows : Visual C# Express Edition est en téléchargement gratuit en plus il y'a SharpDevelop qui est aussi un IDE C# très performant et gratuit.

 

Sur Linux : Mono .NET avec l'IDE monoDevelop, il supporte les C# 3.5 et le GTK# est très bien aussi pour les interfaces graphique.

 

Si tu te débrouilles bien dans la programmation du core de ton programme tu peux facilement le porter sur l'une des deux plateformes cités en haut.

Modifié par mouradski
Lien vers le commentaire
Partager sur d’autres sites

Invité salimdz
Sur windows : Visual C# Express Edition est en téléchargement gratuit en plus il y'a SharpDevelop qui est aussi un IDE C# très performant et gratuit.

 

Sur Linux : Mono .NET avec l'IDE monoDevelop, il supporte les C# 3.5 et le GTK# est très bien aussi pour les interfaces graphique.

 

désole HS

 

l'utilisation des projets entre Visual C# Express Edition et Mono .NET avec l'IDE monoDevelop elle est fluide ou il faut faire des modifications

Lien vers le commentaire
Partager sur d’autres sites

désole HS

 

l'utilisation des projets entre Visual C# Express Edition et Mono .NET avec l'IDE monoDevelop elle est fluide ou il faut faire des modifications

 

Si le Core de l'application, ie : la partie indépendante de l'interface graphique est totalement indépendante de l'interface, celle ci peut être directement exploitable sous forme d'assemblies DLL sur les deux environnements de travail, une autre contrainte s'ajoute : les assemblies développées sous Windows ne doivent pas contenir des appels à des ressource win32 ou autre (non managées).

 

Une manière pour garantir l'indépendance entre l'interface et le core est une bonne utilisations des événements, le core générera les événements réseau selon le protocol utilisé, les interpréte et déclenche l'événement correspondant à l'appel à l'interface, c'est cette appel qui va être portée sois en winform ou en GTK# selon l'environnement de travail.

Lien vers le commentaire
Partager sur d’autres sites

Sur windows : Visual C# Express Edition est en téléchargement gratuit en plus il y'a SharpDevelop qui est aussi un IDE C# très performant et gratuit.

 

Sur Linux : Mono .NET avec l'IDE monoDevelop, il supporte les C# 3.5 et le GTK# est très bien aussi pour les interfaces graphique.

 

Si tu te débrouilles bien dans la programmation du core de ton programme tu peux facilement le porter sur l'une des deux plateformes cités en haut.

 

There are no C# 3.5, you probably meant Framework 3.5. Also not every thing in the .Net Framework 3.5 is supported by Mono, example WPF (Windows Presentation Foundation), WWF (Windows Workflow Foundation), and some of WCF (Windows Communication Foundation) functionality, is not and will not be supported in future Mono versions.

Lien vers le commentaire
Partager sur d’autres sites

There are no C# 3.5, you probably meant Framework 3.5. Also not every thing in the .Net Framework 3.5 is supported by Mono, example WPF (Windows Presentation Foundation), WWF (Windows Workflow Foundation), and some of WCF (Windows Communication Foundation) functionality, is not and will not be supported in future Mono versions.

 

ok je rectifie :)

 

Beaucoup de monde développe encore en Winform classique :)

Lien vers le commentaire
Partager sur d’autres sites

Invité HAVOC

C'est pour ça que je dis que pour la taille et la nature du projet... autant coder en JAVA. Au fait, c'est dans un cadre universitaire ou professionnel ?

Lien vers le commentaire
Partager sur d’autres sites

salut ;

j'ai une application de messagerie a faire (messagerie instantanée) en utilisant les sockets mais le seul problème c'est que j'hésite entre C# et Java, franchement je ne sais pas lequel choisir !

je demande un conseil de votre part

merci

 

There are plenty of instant messaging applications on the net, I think it's just a waste of time to try to reinvent the wheel. Just pickup one of those that are open source, be it Java or C# and go from there.

Lien vers le commentaire
Partager sur d’autres sites

Salut

There are no C# 3.5, you probably meant Framework 3.5. Also not every thing in the .Net Framework 3.5 is supported by Mono, example WPF (Windows Presentation Foundation), WWF (Windows Workflow Foundation), and some of WCF (Windows Communication Foundation) functionality, is not and will not be supported in future Mono versions.

 

J'ai peut être pas bien compris la phrase, est ce que c'est WPF, WWF et WCF qui ne vont pas être supportés par Mono ou seulement une partie de WCF ?

Lien vers le commentaire
Partager sur d’autres sites

Invité HAVOC
c'est dans un cadre d'atelier a l'université

 

A mon avis pour un projet universitaire le choix se fait plutôt naturellement vers Java.

Lien vers le commentaire
Partager sur d’autres sites

Salam,

 

Même si le Java a su se débarrasser de l'un de ses dernier défaut l'instabilité. Je reste un accroc du C#, c'est plus simple, plus léger, plus logique :-) ... c'est juste un avis personnel sans aucune objectivité.

 

En effet, résumer Java en deux lignes n'est pas très objectif ;)

Lien vers le commentaire
Partager sur d’autres sites

Invité salimdz
Si le Core de l'application, ie : la partie indépendante de l'interface graphique est totalement indépendante de l'interface, celle ci peut être directement exploitable sous forme d'assemblies DLL sur les deux environnements de travail, une autre contrainte s'ajoute : les assemblies développées sous Windows ne doivent pas contenir des appels à des ressource win32 ou autre (non managées).

 

Une manière pour garantir l'indépendance entre l'interface et le core est une bonne utilisations des événements, le core générera les événements réseau selon le protocol utilisé, les interpréte et déclenche l'événement correspondant à l'appel à l'interface, c'est cette appel qui va être portée sois en winform ou en GTK# selon l'environnement de travail.

 

Try Mono Migration Analyzer

 

merci pour ces explications et ces informations

 

je pense que le développement en webforms il est mieux

Lien vers le commentaire
Partager sur d’autres sites

mais c'est un atelier de 3mois et je veux qu'il soit de qualité

 

Pourquoi ? Java ne serait pas un gage de qualité? Vu la quantité d'offres de recrutement de développeur Java j'ose imaginer que ce langage à ses qualités.

 

Je ne pense pas que le choix du langage soit le plus déterminant dans la qualité de ton applications, les fonctionnalités et la qualités de ta programmation ( sécurité, optimisation, maintenabilité...) priment plus.

 

Pour faire un client de messagerie je pense tout de même que Java est mieux car multiplateforme ce qui est fort intéressant, contrairement à C# qui pour l'instant est plutôt ancré à la plateforme Microsoft... et quitte à programmer une application pour Windows uniquement sans portabilité, autant le faire en C++ ce qui la rendra nettement plus rapide.

 

Où sinon tu peux encore exploiter le langage Python qui a en ce moment le vent en poupe (et je pense que c'est justifié vu ses qualités). Personnellement j'ai mon stage en Mai (sur Alger d'ailleurs!) et pour la création d'un module spécifique pour Linux j'ai choisi de bosser en python même si ma formation m'a "initié" qu'aux langages C, Java et PHP. J'ai fais ce choix pour diverses raisons :

- Tout d'abord parce que c'est une très bonne occasion d'apprendre un nouveau langage !

- C'est un langage très exploité dans le monde linux.

- Performant est adapté à mes besoins (manipulation de données XML, envoi de données via internet, GUI en GTK...).

- Code claire et concis, parfois jusqu'à 5 fois moins de lignes qu'en JAVA (enfin parfois... après on n'est pas dans un monde parfait).

 

Voilà... En tout cas, il ne faut pas hésiter à sortir des sentier battus, je pense que la qualité d'un projet universitaire réside aussi dans son originalité.

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...