对于一个中小型企业来说,它可能有如下信息系统:
- 内部论坛(内部BLog);
- 文档管理系统;
- 财务报销系统;
- 业务流程系统(工作流管理);
- KPI系统;
- 邮件服务器
- 补丁管理系统
- ... ...
中小型企业不可能一次性上马所有这些系统,于是这些系统之间的互通怎么办呢?如果是一个公司的作品或许好说,但是如果开发这些系统的是不同的公司呢?
是不是你想说使用什么sso或者passport之类的技术方式?
一年前我也这么想,因为我一直以来从事于Web application,特别是.net,我能想到的只有这些:session,cookies,passport等等。
但是当我真的面对这种企业应用和需求时,才知道真实情况是什么样的。
那就是使用“域”,使用微软的域。
事实上我之间一直排斥域,谁愿意使用域,直接登陆本机多好,使用域的话就意味着别人可以使用你的电脑,虽然可以有严格的权限划分,但是始终是让人感觉不爽的。
用户一登陆操作系统,就已经登陆了N个使用域认证的应用系统:工作流也好,文档管理系统也好,邮件服务器也好。反正全登陆了。
否则的话你就必须先操作系统,然后再独立登陆其他系统,不停的切换,要死人的。
简单的例子:我最近写文档的比较多,每次版本变动我都要save as 一下,过程繁琐,保留不方便。很多程序员使用了VSS进行版本控制,其实还是太麻烦。
更优的方式是:登陆域,在sharepoint上双击文件,office会打开,保存的时候office会自动保存新的版本到sharepoint上,同时版本控制。
回过头对比,在技术体系上:
Sun是在java上作标准,等着其他企业(个人)完成工具和应用,完成各种基于java的包,这种标准式式的开放真的很聪明,但是对于终端用户来说直接好处不大,虽然确实java也产生了很多开源的应用。
Microsoft在.net(不只是.net)上是同时在完成标准的设计和对应工具的完成。微软让程序员更懒,更方便。
但是,微软同时在完成产品的设计,特别是面向中小型企业。
很多产品是普通程序员所不了解的,Microsoft在这方面也缺乏合适的宣传策略(俺这么认为)。
对于微软大家的认知或许是:Microsoft、Windows 、Office、VB、VC、VS.net 、C#.这些词语都是同开发有关系的,但是同企业有关系的直接应用又有多少人知道呢?
而对于SUN:Sun,Java,j2ee,跨平台,标准,服务器(sxxxx)
最聪明的是Google,呵呵。管你什么标准,管你什么工具,它做的是全是应用,全是基于互联网的应用,全是直面普通用户。
胡言乱语ing,到处结束.