权限管理、用户权限系统、开源用户权限系统、信息化建设标准基础数据管理平台
代码改变世界

不懂接口、反射、委托、设计模式足足写了5年的代码 -- 写给初学者(谈美女生成器不谈代码生成器)

2009-10-14 17:59  通用C#系统架构  阅读(13928)  评论(101编辑  收藏  举报

  今天心情比较好,就把自己的思想、理解画个比喻图什么的,给大家分享分享,觉得有些收获,就帮我点一下推荐,觉得无聊,就不看内容,看看图就可以了,反正你也点进来了,对吧。
  有了某个思想或者理念,往往能引导很多人,例如我们小时候,定位为考大学,然后一直从小学努力到高中毕业,引导我们10来年不断进步。
   写程序的大多是爷们,正常的爷们都会喜欢美女,那我就做个比较粗俗的例子吧,看图如下:



   我是比较喜欢讲实话,不喜欢装B的人,有话就讲有屁就放的那种,一般想说的话就直接说了,脑子里很少转几圈,前些年遇到的挫折比较多了,开始有些提高了,说话前,脑子会思考一下,这个话这么说出去了?会有什么结果?会不会得罪某些人?会不会不好收场?会不会有什么不好的影响,说实话也变得有些狡猾了,变得更圆滑一些了。
   时代不同,所处的环境不同,能看到、学到知识也不同,能看到学到的太少了,也容易变成井底之蛙,能看到学到的太多了,也容易啥都懂,啥也不深入,没有一个能象样的拿出手来。
   其实很早的时候,我就听过我们一个同事讲C#里的继承、接口什么的,当时是仔细听了,感觉也听懂了,但是说实话,那时候只是懂了个云里雾里,根本就没能理解得非常深入。
   你可能问我,什么叫深入理解?我打个接口的比方,我参观了我们公司的化工厂,镇海炼化的化工厂,让人吃惊的设备、庞大的生产产区,就是把这些设备当废铁卖,足够让一个人腰缠万贯了。这么多设备,如何能有机的连接在一起?从原油里提炼出各种产品来?若这些硬件设备,看成是软件系统,我们会想到哪些?
   1。分工、职责明确原则:每个装置都有明确的分工,都应明确的功能定位,该干啥的,就应该干啥,职责定位不能乱套,你不能指望汽车飞起来,飞机潜入海底吧,该干啥的就应该干啥?一个函数不要写太长,也有这个味道,应该干啥的都区分好,别写个上千上万行的代码出来。
   2。输入、输出明确原则:每个装置都有明确的输入输出,甚至都有阀值限制、严格输入输出的参数,应该流进来什么?进行什么样的处理,最后流出去什么?往小了讲,类似我们天天写的一个函数、往大了讲,就是类似我们公司开发的一个个子系统,每个函数,每个子系统都应该有明确的功能定位,不应该重复、不应杂乱无章。
   3。接口、规范原则:流入的口径、螺纹、材质,流出的口径、螺纹、材质等,都应该是有些行业规范的,否则一个装置架构完毕后,要流到下一个装置去处理,那不是流不下去了?或者可以中间用特殊的管道,把这2个设备都连接上,这个管道的2头,跟这些设备都有标准可以接,就像有些电脑的转接头一样,例如usb转啥啥的等等。
   4。可替换、可升级可更新原则:一个庞大的化工厂,往往会进行一些维修、升级某个装置或者某个设备的情况,你总不能要求整个化工厂全体都升级,那不是开玩笑的,好像建立一个上规模的化工厂要几百亿,这钱都是用火车拉,也能拉几节车厢的,不是想更新了就更新了,想不要了,就不要了。
   例如,我们车子的一个螺丝坏了,我可以选择A公司生产的相同型号的螺丝,也可以采用B公司生产的相同型号的螺丝,这就是因为这些螺丝,都能有相同的功能,都能满足规定的要求规范。

   当然以上讲的,虽然跟程序毫无关系一样,但是你深入理解到这个程度了,接口到底是干什么用的,你就可能很明白了,给别人讲也可以讲得很通了,自从我参观了化工厂的实地后,我的身心真的感觉提高了很多,给了我了一个震撼力的灵感,让我的想象空间彻底放开了,那一瞬间我感觉,我又大大的升华了一次。

   我们软件开发需要走的路还很长,与传统的行业比,差距还有些明显,毕竟很多其他行业都发展了上百上千年了,软件行业只有几十年而已,我们很多的理念、思想都需要从一些传统行业提炼升华。

   学东西不在于多,现在网络上知识实在是太丰富了,你永远都学不完,但是你做为开发人员,有些内容是必须要懂的,你看了100个知识,但是这些知识的性质都一样的,那你看1000个也没用,都是在原地踏步,有个质的提高是很难的。
   若你是初学者,我建议你必须要懂的几个知识点:继承接口反射委托设计模式 等等,还有些希望大家一起补充一下,我一时也想不起来了,就是最基础的那些。
   有的人工作了5年,其实跟第一年的水平是一样的,都原地踏步了,有的人工作了3年,水平就很高了,因为他每天都在提高,每天都在学习新的知识,不同的知识,每年都有质的变化,而不只是量的变化。

   实践虽然是很重要的,但是有个理论指导,概念的引导,可以让你持续努力好几年,会支撑你完成你的理想,心目中想实现的功能、目的等等,就像当初的共产主义,让很多人去拼命努力。
   写程序也一样,需要有个明确的理念来引导,这样我们才不容易迷失方向,有个奋斗的目标。

   附上几个化工厂的图片,给大家想象一下,我们的软件系统集成等等是不是像一个化工厂一样?有很多类似的地方哈哈,工作一天了,累了也休息一下,娱乐一下。

      

    







 


导读:
疯狂.NET架构通用权限后台管理工具演示版2.0下载
一步步教你如何用疯狂.NET架构中的通用权限系统 -- 如何控制用户显示的菜单权限
一步步教你如何用疯狂.NET架构中的通用权限系统 -- 在页面中的调用权限讲解
一步步教你如何用疯狂.NET架构中的通用权限系统 -- 数据集权限的调用权限讲解
疯狂.NET 通用权限设计 C\S后台管理,B\S前台调用源码样例程序源码下载之 --- 操作权限
疯狂.NET 通用权限设计 C\S后台管理,B\S前台调用源码样例程序源码下载之 --- 角色权限
疯狂.NET 通用权限设计 C\S后台管理,B\S前台调用源码样例程序源码下载之 --- 数据集权限

淘宝店地址:
http://list.taobao.com/browse/0/n-8ddf3d8a90550373fa749337efe29f03---------------40--commend-0-all-0.htm







C# ASP.NET 通用权限设计、通用权限管理、通用权限组件、单点登录、集中式权限管理、统一授权体系、分级管理分级授权


微信扫一扫加好友