2011-07-07 15 views

Respuesta

18

UdpClient es un contenedor alrededor de un socket usando UDProtocol. Es similar al TCPClient, todo lo que hace es proporcionar otra capa de abstracción para hacer que la programación en red sea mucho más fácil.

Actualización:

Además, yo nunca entendí por qué algunas personas prefieren UDPClient y TCPClient sobre el uso de la clase enchufe de la base. Puede darle un amplio comienzo para aprender programación en red en .NET sin demasiado dolor, pero siento que cuantas más capas de abstracción tenga, menos entenderá de lo que está sucediendo bajo la cubierta. Siento que esto hace que sea mucho más difícil a la larga depurar problemas conductuales complejos o extraños en tu código porque gran parte de lo que está sucediendo está oculto para ti, porque tienes muchas capas de abstracción. Incluso la clase .NET Socket es una capa de abstracción ya que es un envoltorio alrededor de un socket nativo (Berkeley Sockets Interface), y nunca sentí que la programación de red en C++ nativo, por ejemplo, fuera tan difícil.

Aunque, si sigues estándares, pautas y escribes código de alta calidad, es posible que no tengas ningún problema (menos problemas ambientales y circunstanciales), pero siempre recomiendo aprender la clase base Socket para que entiendas mejor. Redes NETAS. Supongo que todo depende de qué tan profundo esté interesado en aprender el marco y convertirse en un experto en el tema.

En resumen, en cualquier caso, está bien según sus necesidades y necesidades, pero siempre recomiendo aprender sobre la abstracción cualquier día.

2

UdpClient es solo una clase de conveniencia que hace que sea más fácil trabajar con Sockets.

6

Según la respuesta de danderson, suena a little like the Facade pattern.

Una fachada puede: hacer que una biblioteca de software sea más fácil de usar, comprender y probar, ya que la fachada tiene métodos convenientes para tareas comunes;

Cuestiones relacionadas