저는 현재 15 명의 개발자로 구성된 팀을 관리하고 있으며, WCF와 웹 API의 사용에 대해 토론하면서 팀이 완전히 반대되는 두 팀으로 나뉘는 기술을 선택하는 데 어려움을 겪고 있습니다.
웹 API 사용을 지원하는 팀 A는 다음과 같은 이유를 제시합니다.
- 웹 API는 현대적인 서비스 작성 방법입니다 ( Wikipedia )
- WCF는 HTTP에 대한 오버 헤드입니다. TCP, Net Pipes 및 기타 프로토콜을위한 솔루션입니다.
- [DataContract] 및 [DataMember] 및 해당 속성으로 인해 WCF 모델은 POCO가 아닙니다.
- SOAP는 JSON만큼 읽기 쉽고 편리하지 않습니다.
- SOAP는 JSON과 비교하여 네트워크에 대한 오버 헤드입니다 (HTTP를 통한 전송)
- 메소드 오버로드 없음
WCF 사용을 지원하는 팀 B는 다음과 같이 말합니다.
- WCF는 구성을 통해 여러 프로토콜을 지원합니다
- WCF는 분산 트랜잭션을 지원합니다
- WCF에 대한 많은 좋은 예와 성공 사례가 있습니다 (웹 API는 아직 어리지만)
- 양방향 통신에 탁월
이 논쟁은 계속되고 있으며 지금 무엇을해야할지 모르겠습니다. 개인적으로, 우리는 올바른 사용 장소에만 도구를 사용해야한다고 생각 합니다 . 다시 말해, HTTP를 통해 서비스를 노출하고 싶지만 TCP 및 이중에 대해서는 WCF를 사용하려면 웹 API를 사용하는 것이 좋습니다.
인터넷을 검색하면 확실한 결과를 얻을 수 없습니다. WCF를 지원하기위한 많은 게시물이 있지만 그 반대의 경우도 있습니다. 이 질문의 본질은 논쟁의 여지가 있지만, 결정을 내릴 좋은 힌트가 필요하다는 것을 알고 있습니다. 우연히 기술 을 선택 하면 나중에 후회하게 될지도 모릅니다. 열린 눈으로 선택하고 싶다.
우리의 사용법은 주로 웹용이며 HTTP를 통해 서비스를 노출합니다. 경우에 따라 (예 : 5-10 %) 분산 트랜잭션이 필요할 수 있습니다.
지금 어떻게해야합니까? 이 토론을 건설적인 방법으로 관리하려면 어떻게해야합니까?