2010-01-28 3 views
1

이것은 Java와 .NET의 오래된 논쟁에서 유래되었지만 SOA/웹 서비스 측면에서이 두 기술의 장점에 관심이 있습니다.SOA/웹 서비스 : Java on Tomcat 또는 IIS의 C# (.NET)?

웹 서비스를 작성하는 새로운 프로젝트를 시작합니다. Java 또는 C#으로 작성하는 경험이 많지 않으며 Microsoft 스택 (IIS 실행 중) 또는 Linux 스택 (Tomcat 실행 중)을 사용할 수 있습니다. 지금까지 나의 연구에서, 두 언어의 복잡성은 거의 같다.

저는 MySQL 데이터베이스를 실행할 것입니다 (SQL Server는 궁금합니다). 따라서 데이터베이스 액세스는 나머지 스택에 영향을 미치지 않습니다.

나는 REST 서비스 (SOAP도 가능)를 소비하고 SOAP 서비스를 노출 할 것이다.

사용 용이성, 복잡성, 일반적인 개발 시간, 총 소유 비용 (특히 유지 관리 비용) 등의 측면에서이 두 기술의 장점 또는 단점은 무엇입니까? 기존 보안 및 인증 프레임 워크 (예 : CAS, LDAP 또는 OAuth)와 더 잘 통합되어 있습니까?

답변

2

나는 자바를지지하고 C# 경험이 거의 없지만 솔직히 말해서 거의 평등하다고 말할 것이며, 프로그래밍에 익숙하고 익숙한 언어를 사용해야합니다.

웹 서비스 (SOAP 또는 REST)를 노출 및 사용하는 것은 오픈 소스 라이브러리를 통해 쉽게 수행 할 수 있습니다. (일반적으로 약간의 정보가 있지만 현재 JDK에 내장 된 것들이있을 수도 있습니다. 오픈 소스 커뮤니티 뒤에), 가장 인기있는 봄 중 하나입니다. 이렇게하면 SOAP을 만들고 소비하고 REST를 노출하거나 소비하는 모든 복잡성과 배관 작업을 수행하게됩니다.

SOAP를 들어

: SOAP를 들어

http://blog.springsource.com/2009/03/08/rest-in-spring-3-mvc/

http://blog.springsource.com/2009/03/27/rest-in-spring-3-resttemplate/

: 나머지

http://static.springsource.org/spring-ws/sites/1.5/

참고 봄이 하나 개의 옵션입니다 (하지만 좋은 하나),하지만 내 전반적인 요점은 배관을 직접 작성하지 말고, 기존 프레임 워크를 선택하여 사용하십시오. 사용하는 언어가 중요하지 않아야합니다.

언급했듯이 C#에 대해 많이 알지 못하지만 일반적으로 핵심 JDK 및 오픈 소스 Java 커뮤니티의 좋은 부분을 차지하고 언어로 빌드하므로 멋진 코드가있을 수 있습니다. C#의 기본 요소는 Spring이 Java에 대해 수행 한 작업을 반영합니다.