今天与朋友对Architecture进行了一番讨论,最后这哥们搬出了《The Unified Software Development Process》的资料证明给我看
呵呵,俺不敢妄言UML三巨头的RUP有错,但如果行而上,是不是有迷失自己的危险?!
说实话,对UML和RUP,小朋友我还初在似懂非懂的阶段。
UML这种东东给我带来对软件研发的思考,首先是从不同的角度去分析软件的合理性,但每个人有每个人的角度,从自己的角度去看问题,得到不同的结论。
为了让研发的相关人员能在一个统一的平台上进行交流,就有了UML和rational的Unified Software Development Process。
如果对这种交流方式求一个极限,两个人如果水平相当,并且能够面对面的去交流,是否还需要用UML?!当然如果记录交流的结果用于本别人交流还是需要UML的。
所以UML和RUP只是记录和交流开发思路的手段,用来描述和规范看问题的角度和结论,但不等于能替你思考。
但一切事务的本质还是发现问题,分析问题,解决问题。
UML和RUP能够促进对软件的研发的正确理解和交流。apple以前有句广告词:“Use your head!”
如果由于描述和手段不符合RUP的规范就放弃自己的思路是否是对自己的不负责任?!
俺的思路是先有对自己对软件的理解,然后用UML和RUP或其他更好的软件开发的东东去规范和指导并修正自己的理解,再反作用于UML。
实现大脑中软件设计的迭代,才是软件设计的本质。才是使自己的软件设计思路不断进化的动力。
最近流行一个烂了街的词--“优雅”!
这不是一个优雅的设计!
这个实现思路更优雅点!
如果真把构架设计当做一件艺术品!
那完全用工业级的标准去限定自己对构架的思考会不会影像自己的创造力?!
就像用“流水线”式的点彩车间是生产不出来有生命力的《星空》的,也就不会有凡高这种牛人了。
因为你不能保证RUP中的东东都是真理。UML本身就是不断改进和容纳新思想的过程。
UML,自己的大脑等一切东东都是不断在进化,只有两者互相作用才能适应客观世界的发展。
说到最后好像都不知道自己再说些什么,但冥冥中一种感觉:
“尽信RUP,不如没有RUP!!!”