代码改变世界

关于我自己

2010-08-24 11:56  Nana's Lich  阅读(410)  评论(2编辑  收藏  举报

很多认识或者不认识我的人都以为我是Web开发者,其实这是个误会。

这也不怪别人,毕竟我展现出来的东西有很大一部分是和Web相关的。

 

其实我的主攻方向是C/S和纯桌面应用,B/S只是顺带(这个我在自我介绍上写了)。

因为研究的都是奇怪的玩意,别人也总说我摆弄的都是奇怪的技术。

 

我没法用两三句话说明白我研究的到底是什么,粗略回想一下我接触过的技术有:

Windows消息、Windows外壳集成、COM、Automation/ActiveX、ActiveScripting、GDI、Windows Socket、Windows IPC、Windows Scripting;

为了诊断问题我也具有网络协议知识和浅薄的分析能力,兴致高涨的时候我也会破解几个防护不太严密的软件玩。

.NET中有很多和C/S、B/S都重叠的东西,不过由于种种原因一旦提到.NET大部分人想到的都是ASP.NET。

 

主攻C/S和桌面应用并不意味着我对Web方面了解得比较少。

作为solution provider我不能让程序“能用就行”,我还必须得保证在用户手里我的solution可以在大部分时间中如同用户的预期去工作,因此我也在Web的方面下了不少功夫(只不过在Windows开发上下的功夫更多):

JavaScript,我必须知道每一种pattern、每一个细微的变动会导致什么样的结果;

DOM,在知道标准API的同时我必须对不同浏览器提供的DOM的差异有充足的了解;

CSS——好吧,我承认我不擅长这个,我关心的只有一些常见的兼容问题,剩下的交给那些真正的CSS专家去做。

 

其实除了在网页上使用以外,JavaScript,或者说“ECMAScript”,也是一种可以用在其它地方的粘合剂:ECMAScript不仅具备灵活的语法,世界对ECMAScript有了解的人也是个庞大的数字。

我在JavaScript上投入精力很大程度上也是由于我常常需要通过ActiveScripting或者其它的脚本引擎/宿主技术来给程序嵌入ECMAScript支持。

 

早些时候我也使用Flash,但是Flash在IE里总是有一点问题,虽然我知道怎么work around,但是作为solution provider经常使用不够完善的work around并不合适。而且COM和ActiveX编程经验告诉我,这种问题存在是由于Flash Player在实现IDispatchEx接口的时候犯懒了。

最近我在考虑用Silverlight,但目前还没到必须使用它的时候。