前几天继续在讲SOA以及WCF开发的课程,谈到跨平台支持方面。我们知道跨平台总是一个很好的话题,可以谈论很多。
WCF确实从一定意义上可以实现跨平台,这其实一点都不奇怪,只要是基于HTTP协议,传输的数据又是标准的文本,怎么不能跨平台呢?
大家可以试想一下,不管你用什么操作系统,都应该可以上网吧,然后,不管你用什么开发平台和语言,应该都能解析文本内容吧,这样两个条件具备了,还有什么问题呢?
在WCF 3.5中,更是添加了对于REST的支持,应该更加方便了。如果你对于REST有些不清楚,请参考有关的资料,如wiki百科等
但是,我们后来有探讨到了大数据量的传输问题,我总结了四种方式,其中有一种就是所谓的流传输模型(Streamed),这种传输很有意思,你可以理解为在客户端和服务器建立一条输油管道,数据并不是一次性发送到客户端,而是客户端请求多少,就发送多少。(这就是流的好处)
然后,有朋友就说,这个流就不能跨平台了吧?因为我们所返回的是一个Stream对象,这个对象在别的平台不见得有(即便有,也不见得一样),因为最要命的是,它不是一次性发送给客户端的。
对,这是一个问题。然而,到底是跨还是不跨,难道不正好是一个值得思考的问题么?我们真的要在任何地方都实现跨平台么