Silverlight 耦合度

 
耦合度:
我们公司的同事他们都是用Flash(Flex)的,我自己也用用,对比了一下,在Blend的数据绑定上,确实比Flash要快速的多,而且前后台的分工确实真正做到了.而不会像我们公司那样,一个Java程序员在后台提供xml 或WS(WebService 数据源,通常都是在Servlet 中 用字符串拼接 xml) ,前台的Flex程序员通过 HttpService或者WebCleint来读取xml ,然后 var xml = e.Result as XML; 然后可能出现的情况就是,前台经常会在那里等xml的格式,然后再根据xml往界面上绑定,有时候后台慢一点,他们只有在那里等待后台数据来了再测试,要是有变化,往往只有更改xml的参数或者子元素了当然这个Flex程序不愿意做的事情,因为它们在绑定xml到他们的chart或者其它视觉树上时,他们可能是@userName, (这个是xml上的一个元素,它很有可能会因为xml的变化而变化), 而不是用的是User.UserName(这里的User是它的对象)而UserName这个再由给他提供数据的Linq里的getElement(“UserName”)来赋值.(因此这样才让前台和后台解耦)
 
 
除了前台的可能因后台的原因耦合,还有后台因为前台的耦合: 界面上有一系列数据例如移动的漫游数据,他们会有国际漫游,省际漫游等等,界面上需要显示三个样式的数据 所有的国际漫游的 从高到低的排序. 另外一个饼图需要的是排行前5
的数据,当然可能还有一个需要对数据可以进行过滤操作的表(当然以上界面都是用Flex来实现的), Flex程序员就需要 三个数据源 一个需要你给他排好序的漫游数据
叫:roamOrderDesc, 另一个可能就叫 roamTop5,还有一个叫:roamFilter. 虽然这三个数据的内容都是一个数据源名字叫 roam,但是因为前台的界面Flex程序员不太愿意处理逻辑,
他们只会说一句:”你后台传什么,我前台就怎么显示,我们不处理逻辑”,呵呵!晕!没办法,做为Java程序员,那我们就只有在servlet里面加入三个方法,根据参数不一样调用不同的
方法,然后生成不同的xml.每次也没办法,不然又会吵架的,再吵经理一定会开了我的,^_^,不过不知道将来要是新增一个什么功能会不会要我继续在下面的servlet里面增加方法,还
是新写一个servlet,然后突然把正在运行项目停掉,加入新的servlet,然后再重新运行项目,当然Tomcat的其它应用程序也会因为点击鼠标的手一抖被停掉,(误删掉控制台里的其它项目) 因为这种事去年就发生过,因为停一个GIS程序,导致后来整个Tomcat挂掉,(当然不是我的,不过因为是我同事,最后面对老大还是说是我搞坏的Tomcat,没办法,因为要团结团队).
      再看看SL里面怎么处理这样的问题,c#程序员可以先设计自己的后台数据,也就是我们的WS或者WCF,前台界面人员可以安心的去画界面了,不过这时候后台要告诉前台程序员,界面里
面可能有一个漫游Roam这个实体类,在Java中我们叫Pojo类, 还有一个漫游的数据提供者RoamDataProvider,里面有三个方法,GetRoamOrderDesc():List<User> ,GetRoamTop(int
top_count) :List<User>, 在 RoamDataProvider的构造方法里面先造一些数据给前台用.把这个空的SL项目,给前台让他们去设计吧!当大家都完成后,可以由后台程序员填充RoamDataProvider里面的内容, 而不用像以前那样不得不在 servlet 里面去修改东西了 .

这样好处是,在前后台之间加入一个角色,装配工,它们可以专门负责整合

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值