2010-11-07 3 views
5

je veux savoir comment puis-je faire quelque chose comme skype ou yahoo messenger? J'ai mentionné yahoo ou skype parce que vraiment je veux que le messager manipule beaucoup d'utilisateurs en ligne.pour développer un messager internet que dois-je faire?

Je suis un développeur java, mais je n'ai aucune idée pour ce genre de projets ou pour la VOIP et le réseautage?

Puis-je développer quelque chose comme un messager uniquement avec Java? et quelles autres technologies, frameworks ou quoi que ce soit d'autre dont j'ai besoin pour gérer ce projet? À la fin, puis-je le développer tout seul?! ou j'ai besoin d'une équipe pour commencer?!

+3

est-ce pour le plaisir? sinon, abandonnez, vraiment. il y a des tonnes de messagerie instantanée, y compris celles en format opensource. – Andrey

Répondre

6

Je suppose que ce dont vous avez besoin le plus est la connaissance sur programmation réseau. C'est la première étape vers votre objectif: vous apprendrez à communiquer de manière raisonnée entre deux hôtes et entre plusieurs hôtes (un lien pour la programmation de Java here, here et a book here). Concentrez votre attention sur les protocoles (ceux de bas niveau) (et peut-être sur la cryptographie) et essayez d'identifier le bon pour vos besoins. Vous devrez comprendre même si vous voulez écrire votre propre protocole de messagerie instantanée (haut niveau) ou utiliser l'un des protocoles existants (Jabber, MSN, Yahoo, objectif, etc.)

Deuxièmement, vous pouvez jeter un oeil à un projet open source qui tente de mettre en œuvre quelque chose de similaire afin de mieux comprendre comment structurer l'architecture de votre projet, les communications client et ainsi de suite. Vous pouvez commencer à regarder quelques lib (here est un pour Java et Jabber, here pour Yahoo) sur le web aussi. Enfin, vous pouvez commencer à concevoir votre projet et décider si le travail à faire est plus qu'une seule personne peut supporter dans un délai raisonnable et essayer de convaincre les gens de travailler avec vous. Ou vous pouvez également rejoindre un projet open source si vous en trouvez.

0

Vous voulez probablement faire des recherches sur socket. Beaucoup d'applications de socket faites par java btw. Pour une application de chat simple, c'est. Cependant, le chat vidéo ou la voix sur IP nécessite beaucoup plus d'efforts.

0

Explorez java.net Apprendre la programmation de socket, n'est pas si compliqué. A propos de la gestion de plusieurs clients, votre serveur doit avoir plusieurs threads. Un pour chaque client.

Développer un simple messager n'est pas une affaire d'enchères dans Java. On peut le faire tout seul. Probablement, vous pouvez même gérer plusieurs clients avec multi-threading.

3

Pourquoi réinventer la roue. Il existe de nombreux logiciels open source en JAVA disponibles qui prennent en charge la messagerie instantanée, les discussions multiples, la présence ainsi que les appels vocaux et vidéo. Skype est basé sur SIP + sa propre technologie propriétaire. Donc, skype ne fonctionnera qu'avec skype. Oubliez l'interopérabilité

Gtalk utilise XMPP (www.xmpp.org) pour ses chats, mais utilise libjingle (pour les sessions RTP) pour les appels audio/vidéo. (Le protocole libjingle et Jingle sont très similaires, ils ne sont pas identiques, et ne sont pas interopérables)

Yahoo, Facebook ... il y a beaucoup de GI qui passent maintenant à XMPP. (Pourquoi..???à cause de interfonctionnement)

Donc, si vous voulez créer votre propre IMs qui interfonctionnement avec Gtalk, Yahoo ... tous les disponibles IMs, utilisez XMPP bibliothèques. Pour commencer, vous pouvez télécharger la version JAVA de XMPP - SMACK. Utilisez son APIs simple et votre messagerie instantanée est prête. Donc, si vous voulez vraiment faire quelque chose d'intéressant, proposez de nouvelles fonctionnalités, contribuez à la communauté Open Source, faites breveter votre idée/technologie ou vendez-la aux gros calibres. :)

Questions connexes