«сетевое программирование» обычно относится к сокетам, это самый низкий уровень сетевого взаимодействия и имеет дело с передачей байтов по сети — все остальные системы связи построены на основе сокетов.
Большинство проектов не используют сокеты напрямую, потому что есть простые системы более высокого уровня, которые вы можете использовать, но я думаю, что все же стоит изучить основы, потому что это не так уж сложно и поможет вам справиться с проблемами в этих системах более высокого уровня.
Следующий уровень — это WebClient и друзья, это относительно простые классы, реализующие протокол связи поверх сокетов (например, HTTP).
Определенно стоит потратить время на то, чтобы научиться их использовать, потому что они просты и чрезвычайно полезны (например, если вы хотите получить файл из Интернета или связаться со сторонней службой).
На самом высоком уровне у вас есть WCF, это обширная (и, по моему личному мнению, чрезмерно сложная и перепроектированная) структура, которая дает вам интерфейс класса для внешней сетевой службы, пытаясь (безуспешно) скрыть все детали связи .
WCF очень популярен в крупных организациях и «корпоративных системах», поэтому, если вы хотите получить работу по разработке корпоративных систем для крупных организаций, изучение WCF — это очень разумный карьерный шаг.
Итак, мой совет, начните с сокетов, изучите только основы — это поможет вам понять, как все работает внутри (это станет очень полезным, когда вам придется отлаживать сетевые проблемы).
Затем перейдите к классам более высокого уровня, напишите простую программу, которая использует WebClient для чтения страницы из Интернета, чтобы вам было удобно с этой концепцией, не беспокойтесь обо всех дополнительных параметрах, они есть, и вы можете их найти. позже, когда они вам понадобятся.
Изучение основ сокетов и WebClient должно занять всего несколько часов, после этого (если вы хотите работать на больших системах) научитесь использовать WCF.
Тогда у вас будут знания WCF для вашего резюме, и вы будете знать, как просто получить что-то через Интернет с помощью нескольких строк кода, не используя гигантский фреймворк, когда он вам не нужен.
20.08.2012