Работаю в магазине, который в основном делает настольные WPF-приложения с WCF. Меня наняли для работы в Интернете, я знаком с веб-API, но никогда не делал WCF. Я начинаю новый SPA, используя Angular. Я планировал использовать веб-API, но меня просят использовать WCF. Мне кажется, Angular предназначен для использования веб-API. Есть ли веская причина НЕ использовать WCF?
2 ответа
Основные различия между WCF и WebApi заключаются в том, что WCF представляет собой богатую, но строго типизированную среду, а WebApi - менее сложную среду, которая способствует быстрой разработке. Размер полезной нагрузки является еще одной проблемой для WCF, и, хотя многие из них можно настроить и уменьшить, сделать это трудоемче, чем с WebApi.
Я должен также упомянуть, что WebApi может работать в гораздо большем количестве мест, чем WCF, так как Microsoft стремится к более широкому внедрению с ASP.NET 5. Теперь вы можете запустить ASP.NET 5 на Mac и других системах. В то время как WCF получает все меньше и меньше любви от Microsoft, ASP.NET в ближайшие годы получит массу улучшений, которые не будут доступны приложениям, использующим WCF. Таким образом, мы могли бы также подумать, что технология устареет в какой-то момент, и с этим возникнут проблемы с техническим обслуживанием.
WCF имеет устоявшуюся архитектуру и уделяет большое внимание конфигурации прямо из коробки.
Плюсом WCF является то, что это поддерживает широкий диапазон изменений с минимальной перекомпиляцией двоичных файлов.
Недостатком является то, что он имеет свою собственную кривую обучения ... и в зависимости от своих вкусов, сильный уклон к конфигурации XML.
Если вы разработчик, вы можете найти Web API более привлекательным.
Если вы системный администратор, вы можете найти WCF более привлекательным.