2010-08-02 7 views
-1

Je veux quitter la programmation strictement bureautique et commencer à explorer les réseaux. Je veux faire un petit programme qui envoie juste des données de l'ordinateur A vers B exécutant le même programme.Programmation réseau?

Juste quelques questions avant de commencer ...

1) Quelle est la meilleure langue pour Python de programmation net ou C#?

2) Pourriez-vous recommander des choses pour m'aider à comprendre comment les données sont envoyées sur le Web?

Merci!

Répondre

3

Cela dépend vraiment de ce que vous faites. Les deux Python et C# ont des modules très performants pour la communication en réseau - je dirais que vous seriez aussi bien lotis soit sans aucune connaissance de ce que vous faites. La décision entre Python et C# se résume probablement à savoir si votre application se prête davantage au typage dynamique de Python ou au typage statique de C#. En ce qui concerne votre deuxième question, j'ai toujours trouvé intéressant d'examiner le trafic réseau en utilisant un analyseur de paquets tel que Wireshark. Accédez à un site Web dans Firefox et (en supposant que l'encodage GZip est désactivé dans le navigateur Web ou sur le serveur), vous serez en mesure de voir comment les données sont transférées. Cela fonctionne aussi pour d'autres protocoles. Lire les RFC pour différents protocoles peut également vous donner un aperçu. Pour quelques exemples, IRC (1459), FTP (959), HTTP 1.1 (2616). Vous pouvez les trouver au the Internet Engineering Task Force website.

Désolé pour le manque de liens, la protection anti-spam m'a abattu pour ne pas avoir assez de réputation.

+0

En ce moment, je fais des applications pour iPhone mais c'est un peu ennuyeux (je ne l'ai même pas fait depuis longtemps) maintenant je suis en train de mettre en réseau des programmes et ensuite le développement web. Est-ce que l'info de cette aide m'aidera plus tard avec le développement web? – user377419

+0

@ shorty876 Comprendre le protocole HTTP vous aidera avec le développement Web plus que la programmation réseau. Je ne dis pas que la programmation réseau ne va pas aider, mais la programmation web traite exclusivement avec HTTP. – riwalk

2

Les deux langues sont également compatibles. C'est une question de préférence personnelle.

Les ressources dont vous avez besoin dépendent de l'application que vous avez l'intention d'écrire. Les deux choses les plus importantes que vous devez savoir:

  • La couche d'application, la couche de transport, & couches Internet de l'Internet
  • Socket Programmation

Vous plongez dans un sujet très large , avec beaucoup d'informations. J'ai trouvé this book pour être utile pour moi.

+0

@ shorty876: Une fois que vous avez implémenté au moins quelques protocoles simples via la programmation de socket, vous pouvez rechercher des solutions de niveau supérieur, telles que divers mécanismes RPC, et WCF dans .NET/C#. –

2

Je ne veux pas comparer les langues, mais que vous vouliez recommandation, je vous recommande de python et twisted cadre

0

Je pense que C++ est le meilleur, si l'on considère les interactions d'efficacité et de matériel.

+0

Pourriez-vous s'il vous plaît fournir une référence pour le développement du réseau en C++. Merci à l'avance –

+0

il suffit de google it.Vous trouverez tout sur les API de socket réseau en C++. Si vous ne le faites pas, n'hésitez pas à demander. –