FMS与视频会议一些想法(FMS方案的麻烦)

       利用Flash+FMS的方式开发可以忽略视频传输的底层工作方式,提升开发效率。同时由于客户端是Flash文件的形式嵌入WEB页,因此也可以很好的嵌入到其它的BS系统里面。这些优势可以说对于开发视频系统有着极强的吸引力。

       初看起来,Adobe还提供了一套视频控件,并且还是开源的,似乎一些基本的功能都涵盖进去了。如果你是有着Windows桌面开发经验的程序员,你的脸上一定开始浮现出欣喜的笑容了。因为所有这些似乎都在给你指出一条光明的道路:你可以通过类似“搭积木”的方式很快的“搭建”自己的视频会议系统了!如果有什么需求稍稍不符的地方,顶多需要对现有控件做一些稍稍的修改就形了!

       那么现实是否有这么完美呢?经过一段时间的接触你一定会慢慢的觉察到我们心目中“完美新娘”光辉艳丽的另一面了。经过一段时间的开发我发现FMS2+Flash8.0主要有以下缺点:

1.       资料缺乏。如果你决定开发一个项目你所要做的第一件事情是什么?找资料!肯定如此,并且这个活动将贯穿着项目开发的始终。帮助、官方文档、已出版书本、网友文章、技术社区等。如果你做ASP.net你一定可以找到数亿的网页和成千上万的得到网友认同的各种参考书。但是你要是找FMS呢?呵呵,肯定没有那么幸运!因为它的新,所以书本少的可怜,网友讨论也不多,即使有,也很少有切入正题的。曾经在网上好不容易找到一本参考书(名字就不提了),欣喜若狂的跑几个书店才找到,买回来细细一看,里面内容的确不咋的。所以你要真的要做开发的话,趁早用官方文档吧,几个PDF文档,包括了客户端和服务器端的API库,比较全,等你看完这些你会发现那些费尽心思买来的中文版书本啊原来很多内容只不过是它的翻译而已,让人悲哀,不过确是事实。不过E文不好的那就凄惨了,努力提高吧!:)好书也不是没有,O'Reilly出版的Flash Communication Server不错,不过仍然是E文,希望能够有一天能够见到这本书的中文版!(有志同道合的朋友可以联系我一起翻译!J)

2.       缺少成功的先例。开发一个系统我们常常会看看别人的东西,以期得到一些灵感,少走一些弯路。首先是Demo,然受是别人的产品,或者开源项目等。但是FMS方面的视频系统可供参考的东西少的可怜,下过一个所谓的开源免费的视频聊天室看过,安装之后觉得实在是一塌糊涂,于是作罢。想要做这个的话只能自己构思,或者参照其它的非FMS方案了。

3.       AS2.0的先天不足。“完全OOP、类似Java的语言…”这些都是AS2.0的“强大特点”,但是我们知道之所以说这些“强大”,那是因为它是和AS1.0脚本比的,一门语言要作为一种高效的快速开发语言这些特点只能是一个基本的“入门资格”罢了。C#,C++,Java,Pascal…哪个不是“完全OOP”?那么为什么这些语言可以获得成功呢?我想,最大的原因不是语言语法的本身,而应该是在语言的基础上有一套成熟的开发库和应用程序框架。VS的MFC,Delphi的VCL等,这些东西可以大大的提升我们的开发效率,同时在开发的过程中,形成一套相对固定的思路和方法。而AS2.0就缺少这样的Framework,这个是AS2.0的先天不足,平时在Flash写东西把AS当作“脚本”的时候不一定能够感觉出来,但是一旦将这个Flash文件当成一个Application就可以感觉到在控制整个程序运行的时候是多么的不方便!

4.       IDE的不成熟。把Flash8.0说成是一个可以和VS或者Delphi相提并论的IDE似乎有点牵强,在Flash8.0里面还是可以感觉到Adobe正在推进Flash向IDE过渡,里面也确是提供了不少IDE才具有的功能,但是这些东西和成熟的IDE产品比起来还是有点“嫩”。代码自动完成等于没有,有时候为了填写一个API得自己记住那么一长串的名字;帮助很烂,在想要查找的API按F1弹出的帮助页面并不能定位到你想显示的内容;Demo比较劣质;编译困难,出错提示不完全。程序跟踪?用Trace吧,累到你吐血!服务器端的调试也很麻烦,只能到FMS Console界面里…总之,Flash8.0做开发还不可能享受到一般IDE的功能,“革命尚未成功,通知仍需努力”。

 5.       视频组件的质量。开始找到的FMS控件是V2版本的,适合Flash MX。有的同学可能看都不看直接就加到Flash8.0里面,小心为妙,最好用MX,实在想“霸王硬上弓”也可以,不过遇到错误的时候你也应该马上想到“版本冲突”这一条。控件代码AS1.0写的,如果想修改的话,很痛苦,并且我自己玩的时候还发现不少bug。所以,你要用这些控件“尝尝鲜”还是可以,但是真正用作开发建议还是“三思而后行”! Flash也提供了一些界面控制组件,和一般IDE里面的Button等类似,但是感觉用起来不爽,似乎没有Windows里面那种换肤的吧?想做点漂亮的你可以自己“画”,呵呵,要真能那样送你一句话:“NB大了!”。

 6.       FMS和Flash语言不一致。开发视频系统是做的客户端和服务器之间的交互程序,所以一般两个端的程序一起写。Flash8用的脚本是AS2.0,FMS用的脚本是类Javascript1.5脚本,虽然AS2.0类似Javascript,但是毕竟不是Java,并且Adobe提供的客户端和服务器端的库API也不一样,所以写的时候脑子要快速的在这两种脚本之间切换,也许你会说“习惯就好”,但是你要是编了一天的程序呢?呵呵,应该会有种“精神分裂”感觉的!建议你这个时候出去散散步。另外,平时写程序的时候把AS2.0的文档和Javascript1.5同时打开吧,这样会方便很多。

       好咯,就写这么点。“Everything must be paid”,西方的谚语说的很好,“你必须为一切东西买单!”你在获得FMS+Flash方案的高效性的同时你也必须付出相应的代价。这里列出这么多FMS2+Flash方案的缺点目的不是为了吓退大家,而是让大家在动手之前做好足够的心理准备,以便更好的为自己的项目设计方案、统筹安排从而增加成功的几率,机会总是偏爱有准备的人嘛。相信大家在经过一段时间的探索研究之后,大家一定会深深的喜欢上这种“时髦优雅”的技术的!后面有时间会把一些编程的小技巧贴出来。:)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值