跋涉中文网N`9Z%b3m TZ 跋涉中文网
`esc&\$@&s$O_3A3v
跋涉中文网$t6rO Q;B}p_k程序员眼的社会
NCO.f0h+T:f
7Q,|%`2R(O4n@"\
(WS+s$CfD,R'z Tc/pchinabin
%_E!z9Sp
Slg/g6xp
跋涉中文网I
rR'C&voL#A工作了2年,想法改变了许多。
G;B b-p~8[,j3x
P
跋涉中文网0V+^~X(voV.o我是个程序员,大部分工作是自己设计程序架构并编码实现,有时也需要对现有的系统做些改进或移植到其他平台。跋涉中文网6I%SB4@:I$NtG!T,ME
I W8El1I优化扩展原系统时,由于原系统本身设计的不合理,结果发现,修改它还不如重新开发。
(jLl.P/?8fl也许是其他程序员太烂,写的程序难以维护,也许是我水平太烂,该不了别人的程序。跋涉中文网cw-[#Ea4\*h
;T4J rO2Tw#N从我专业的角度看这个社会,无疑这是个很烂的程序。
)Z4@]2RA层次划分不清晰,模块之间耦合太高,接口复杂难以扩展,而且全局变量太多,bug众多,资源管理不完善,内存泄露严重,进程间通讯协议繁琐,易死锁。
9O,EB"\*um"D&qk
跋涉中文网P2Qe;oF9jU/?为什么会这样?跋涉中文网1d+z&Mcj'z;a.gx\
一个小程序,一个人就可以轻易搞定,不用划分什么层次,模块,设计什么接口,也不需要考虑扩展性。跋涉中文网@4}?kg9[&iS#Q4K
当需求越来越多的时候,如果难以扩展,重构是必要的。跋涉中文网yEWvQ8d
跋涉中文网A,a6a!p%i)yY我见过一些程序员上来就编码,直接在原程序上修改,大部分情况下也能实现功能。
%X,Z5q6u@F;G周而复始系统最终崩溃,每次修改都是在原来脆弱的架构上压了一块大石。跋涉中文网2uR}"on6{l!YT1_&zX*OA
每次修改都降低系统的可靠性。
h.nb8e1n%F*L5yD
跋涉中文网_r9Q!@/i pRs这种程序是程序员的噩梦。跋涉中文网 V&O?'aU9ks
跋涉中文网$TFW!V+b,FN&J这个社会就是一个巨大无比极其复杂的程序。
}N5`R#L*F,[它充满了问题,对接手它的程序员来说,要么继续随波逐流,要么重构,要么重写。跋涉中文网'D-R%e,`J:aF
Bi
.d*G#zPt2IXR$sM当程序问题太多以至于很难改进时,程序员就郁闷了,他只能重构,甚至重写,要么就走人。
WK6x#Sk }^
%?-Yv&g-e2`1|但是无论重构还是重写,都是一个长期的过程。而我们的人生就这么几十年,真是应了那句话“君生我为生,我生君已老”!
:Y|,E0B__
7Y8m!R$R0uG]悲哀
ep5W!{ S;]s%e2|