十年磨一劍--從程序員到架構師

一个.net程序员,一个企业应用的开发者,喜欢系统架构,数据库,领域驱动,面向对象,表现层技术。关注重用的理论和实践。设计原则:简单,快速,适应变化能力强,表现层灵活多变...

博客园 首页 新随笔 联系 订阅 管理

2010还有几个小时就要过去了,在这一年收获还是挺多的,感慨也挺多,趁着手上的工作终于告一段落,聊聊一些我的想法。

从事企业开发已近8年,时间真的很长,但是对于像我这样经常为了某个想法而兴奋不已的人来说,真的很短,有时候一夜就闭着眼睛架构系统而过去了(失眠真是个非常可怕的东西,期望来年,能够好好地克服这个毛病)

 

从ASP到.net,一直做的就是企业开发,即我们常说的管理系统,和数据打着交道。

用户的需求无穷无尽,企业的信息化依然漫长。

技术不断发展,而数据库编程这份以前很有前途的职业也似乎渐渐暗淡下来

圈子里还是不断地弥漫着各种管理系统没有技术含量,程序员没有前途的说法

但是以我看来,有没有前途也好,有没有技术含量也罢,针对的只是某个人,对某个人来说,可能一无是处,对某个人来说,可能就是他的全部

 

我曾经也在这条路上寻思了很久,也认为做管理系统没有半分技术含量,也认为只有写操作系统,进入微软才会有程序员的价值。

但是随着时间的推移,我的积累,我的经验让我知道我不会放弃

因为我对它我还没有参透,没有悟透。

它是我现阶段人生价值的一个体现,也是我目前最纯粹的追求之一。

 

我很庆幸自己是一个程序员,我很感谢上帝给我的这份职业

 

信息化技术,何时才能真正地达到巅峰呢?

信息化是一个企业,乃至一个社会迈向高科技文明的的第一步,也是最基础的一步。

可能大家都有看过《小兵传奇》这部网络小说吧

里面的超级电脑,掌管着这地球,这宇宙的一切信息

如果没有强大的信息化技术,如何才能做到呢?

 

对于企业来说,信息化的重要性更不必说

但现在很多的企业系统却是有很大的局限

很多数据只对系统人员开放,而像信息的生产者或消费者却很难拿到自己拥有,或所需要的数据,而要透过系统现有的功能拿出来,如果不能达到要求,就要改程式或加程式

很多流程只对系统人员开放,企业的管理者甚至不知道这个流程是如何运行的,流程不规范,无效率,或者为某些人的利益而效应的情况有很多

系统只对系统人员开放,管理者想要透过系统完成某项管理意愿,得到的答复却是几个月后早已过时的且有太多不合要求的旧系统。

 

系统开发的速度还是太慢了,适应变化的能力还是太弱了

动不动就要用户等个几周,几个月,谁都受不了

 

依我看,快速开发是当前信息化技术的一个基本方向

一切技术,如果不能提供快速开发,价值就会大打折扣

 

快速开发不是代码生成,代码生成一般只用在建立专案的第一次,但是系统是需要不断地发展,变化来适应外部环境的发展的,所以,系统也需要不断地修改和维护

如果代码是自动生成的,那肯定不能有效地达到这个目的

 

快速开发也不是所谓的智能表单系统,普通的用户永远都不能代替专业的IT人员来完成系统的开发或所谓的定制的。

除非这个企业确实是只需要一个固定的,简单的,永远不变的系统

但要真正做到信息化,只一个这样的系统是远远不够的

必须依靠我们这些程序员,通过代码来完成,来实现

 

快速开发更不是所谓的拖拖拉拉控件,这种依靠人力的行为怎么能称为快速开发

一个表,一个程式可能可以

如果是十个表,百个表,上千支程式呢?

也这样吗?

 

快速开发是在真正地理解了信息系统本质后所开发的直指要害的代码,少而精,简单于是灵活。

 

没错,快速开发其实就是简单,拨开一切遮住眼睛的迷雾,你会发现,简单才是最美的

举个例子,你觉得Jquery够简单了,但是我认为其依然复杂

我自己写的document.getElementById虽然简单简陋

但是规范化后,系统中只需要getElementById这个功能,我为什么又要把整个jquery库引进来呢?

 

能简单就简单

能不要就不要

用到多少,就拿来多少

系统中80%以上的代码是真正的业务逻辑代码,而不是为了各种绚丽的技术而使用的代码

 

系统开发简单化以后,从需求到上线可能只需要几十分钟或几分钟

我想,这才会是企业的上层,企业的管理人员真正需要的

这样才能为系统化,信息化做更多的工作

才能更快速地实现管理者的各种想法,各种要求,各种idea

才能体现系统化价值,让管理者思考如何更进一步地系统化,信息化

最终实现良性循环,社会大量地需要IT人才,促进信息化技术的更一步发展

 

路漫漫兮其修远,吾将上下而索求

2011,我来了!

posted on 2010-12-31 16:04  Kevin Zou  阅读(685)  评论(4编辑  收藏  举报