当我每敲击一行代码时,我会想到的(稍微夸张了一些)
2008-08-25 19:18 通用C#系统架构 阅读(1454) 评论(1) 编辑 收藏 举报 为什么我们不会失业?为什么以后我们的前途会越来越好?为什么我们每天会有做不完的事情?
未来,对信息化的要求会越来越高,越来越复杂。每个公司都希望将自己的业务,全部实现自动化,彻底用
电脑管理,电脑是不知道疲倦的,不要求加班费,不会跳槽,不会有任何怨言,不知疲倦的可以做重复的劳动。
所以需要开发出N多的软件系统,制造电脑的成本越来越低,但是人力成本会越来越高。
一个性能稳定的开发基础类库,可以重复利用在10个系统里,100个系统里,可以越来越提高重复利用的价值。
一个功能定位好的软件,可以用最小的成本复制10份,100份,1000份,10000份。
为什么软件行业,相对来说有前途:
1。软件可以复制,人不可以复制。
2。买了电脑、服务器,没有配套的软件,那是废铜烂铁一堆。
3。人力成本会越来越高,电脑硬件成本会越来越低。
4。电脑软件,可以代替人的重复劳动,实现商业逻辑,而且不知道疲惫,不要求加班费,不容易出错,不会频繁跳槽。
将来,需要把N多的系统都有效的整合在一起,或者进行升级,那是更加复杂,工作量也更大,技术难度更高,
含金量也更高。以后越来越需要高水平的IT软件人才,可能需要开发新系统的需求会变得少一些,但是系统整合
的需求会变得更多,系统升级的需求,修改修改业务逻辑的需求,或者从多个系统里分析业务数据的需求会变得
更多。
新系统升级需要将原有数据都导入到新系统,还需要无间断工作,可能还需要新老系统并行工作,那技术上的
要求是比较高的。
由于我们现在没有能完美的实现管理系统,为我们将来创造了的工作机会,创造了更多的改进需求。
=============================================================================================================================================================
当我们埋头赶项目时,当你忙忙碌碌写代码时,你是否想到了? 当你每敲击一行代码时,你最好能想到一下适宜
有不妥之处,请大家指正。
您若是在程序员岗位,或者从事与程序相关的工作,请你仔细阅读以下内容。
前提
01。你是不是在做正确的事情? (做这个事情,可能是错误的,不是我们需要做的事情,例如你在开发操作系统)
02。是不是你应该做的事请? (可能这件事情已安排给别人已经做好,或者正在做这个事情,你再做这个事情就是重复劳动了)
03。是不是你最先应该做的事情? (平时需要做的事情有很多,应该安排一个先后,优先等级)
04。你是不是在正确的做这件事情? (可能需要用java开发,你却在用c#在开发)
05。你是不是讲这个功能的整体需求在脑子里或者图纸上走了一次流程? (你可能自己还没想明白,就开始写代码了,越写越乱,越乱越糟糕,你在图纸上思考问题,比写程序更有效)
06。你这行代妈是否可以不写?
07。为什么要写这行代马的充分理由有几个?
08。你写的代码,是不是在公司的公用类库里已经有这个功能的实现? (用公司共用的类库,稳定性好,已经过大家的测试验证,或者有专门的人在负责维护)
开始写代码
09。你写的这部分代码,是否符合需求分析文档? (一切应该按设计文档为依据,是项目组沟通的基础,测试的依据,公司积累的财富)
10。你写的这部分代码,是否有严谨的数据库设计?
11。你这行代码是否符合公司的编码规范?
12。写这行代码的功能部分,是否已定义接口? (有标准接口,方便别人调用,方便理解,有能进行系统集成的余地)
13。你是在写系统中的哪一部份功能?
14。你这行代码是满足否从上到下的顺序逻辑?
15。你这行代码是满足从左到右的顺序逻辑?
16。你的代码是否应该写在这个位置是最优的嘛?
17。这行代码是否应该写备注?
18。你的同事同行是否能读懂你这行代妈?
19。老外能否读懂你这行代码,美国人、日本人、德国人?
20。你的代码对你有没有重复利用的价值,在下一个系统中能重复利用?其他人能重复利用?
21。你的代码能否进行自动化测试?不用每次都人工进行测试?写一个测试脚本就可以每次自动测试?
22。你这行代码什么时候会被程序调用,程序运行是否能覆盖到这行代码?
23。你这行代码准备让谁复查?
24。你这行代码是不是有改进的余地,与以前写的代码有什么不同?
25。网上?参考资料里?其他同事是否同样的功能写得更好更简洁?
26。你的代码或者业务逻辑,能在B/S、C/S、或者分布式系统里是否能重复利用?
27。你若写的是数据库操作,能否在支持 Oracle、SqlServer 等多种常用的数据库?
28。能实现多语言环境要求?是否有多语言扩展的希望?
29。你写的代码是 Java语言的能跟C#.NET有集成调用的余地吗?如何有希望能调用?
30。你写的这部分功能,能与其他开发的系统,有机的组成一个大的管理系统吗?
31。你写的这样代码,若有变动,会不会影响其他人?
32。这行代马修改了,会不会引起其他的连锁的错误,是否可以在编译阶段发现错误?
额外要求
30。你这行代码是否会引起系统异常?
31。你这行代码是否会导致系统的崩溃?
32。你哈行代码是否会引起死循环?
33。你这行代码会不会引起并发问题?
34。你这行代码是否经得起压力测试?
35。你这行代码函数部分是否能被纪录在系统操作日志里?
36。你这行代码函数部分是否有做性能分析?
娱乐一下大家
37。你每天要是在写上千行代码?那就请你停下来,喝点儿茶,发呆休息一下,整理一下思绪,找你同事来检查一下,或者找你心目中技术上可信任的人,来给你指导一下。
38。你每天要是在写2000行代码,你的项目经理没发疯,公司没开除你,那是有问题了。
39。你每天要是在写3000行代码,你眼睛没花掉,或者应为工作劳累没有晕倒在电脑前,那至少我个人是非常佩服你了。
40。你每天要是在写4000行代吗,中国的软件行业有希望了,你可能就是中国微软的创始人,至少我们公司的其他程序员都可以下岗了。
41。你每天要在在写5000行代码,我要跟你拼命了。