自2012年秋天撂下SL编码的担子,大半年时间没有动Silverlight代码了。最近由于公司负责A项目的同事LX生病住院了,临近验收。领导说:“养兵千日、用兵一时。你手快”。

故,就上了。

动手、学习、犯错,断断续续约花费了3天时间恢复手艺:具体开发的东西能忘嘛! 稍微生疏而已; 分析业务、分解问题的能力还大大增强了呢。 毕竟咱靠开发这门手艺吃饭哩。

最大的一个经验:广义的复用!

这句话非常恰当描述我此刻所要表达:“你不会,你的同事会;而你们关系又不差,那就等于你会了”。任何人,在一家公司干的时间久的人,台阶就高,身后可依靠的人、资源就越多,故越容易出活。 即:任何产出物,它的贡献属于虚拟的、广义上的团队的结果,而不单单是个人之力。

开发过程疑难项

帮助过我的同事列表

美化UI,样式

Frq

绑定菜单

WCF通信

Gjf

WCF规则

UI规则开发

gwb

zy

复杂SQL

Lj

业务沟通

Zmf

SilverLight:前台新建SilverLight的项目,后台新建普通C#类库,两者不可依赖引用。可通过WCF、链接源码方式实现前、后台通信、代码共享。下面用表格把这PHP、HTML5、SL编程的异同列出来。

 

PHP

HTML5

Silverlight

前台-页面呈现

HTML5

HTML5

微软的style

前台-逻辑算法

JavaScript

嵌入的PHP语言

JavaScript

JQuery

简化版C#类库

JQuery

前台-样式美化

CSS3

CSS3

微软自己的,原理类似CSS

前台-源码可见

100%

100%

0%

前台-插件

不需要

不需要

需要安装SilverLight5插件

前台-后台通信方式

PHP API函数

XMLHttpRequest

JSONP

WCF

前台-后台通信格式

JSON

原始格式

JSON

原始格式

JSON

原始格式

后台-逻辑算法

PHP

Node.js?

C#类库?

完整版C#类库

经验:

1 磨刀不误砍柴工:前三天,因为写SilverLight代码手生,没有动代码。 把需求文档、DB文档反反复复看了三遍,整理出规律,实践证明,后来“机器人开发2500”行代码,是因为前期理解帮了大忙。

2 抽象设计能力,复用,极大的复用UI元素、SQL片段。 能不重复写代码就不重复写代码。 业务是多样化的,程序逻辑上有通用之处,要花大力气挖掘出来,而不是一块一块的搬砖写代码。