“...但是如果你没有学习掌握GoF设计模式,只能说明你还是一个技”
“会Java的人越来越多,但是一直徘徊在语言层次的程序员不在少数”
“...甚至有人提倡"蓝领程序员",这些都是对现代编程技术的不了解所至...”
随便列了几条,我的观点是模式的确,似乎非常非常的重要,但就算吃透了又能咋样?不还是“蓝领程序员”吗?不还是“技工”吗?搞得好像好的程序员必须懂模式似的。模式这些玩艺变成一些没什么技术的人,整天挂在嘴上吹嘘的调调,骗钱的工具。
骗钱的
随便列了几条,我的观点是模式的确,似乎非常非常的重要,但就算吃透了又能咋样?不还是“蓝领程序员”吗?不还是“技工”吗?搞得好像好的程序员必须懂模式似的。模式这些玩艺变成一些没什么技术的人,整天挂在嘴上吹嘘的调调,骗钱的工具。
骗钱的
也许到这个时候,软件真的是一个产业了。
软件蓝领是解决软件行业的产业化必然,这样才能建成一个真正的金字塔结构,如果你不想做底层那么就尽量做到高层。
而作为建筑这个行业的荣耀或辉煌离不开建筑工人,但却不是建筑工人所带来,在建筑行业成熟之前,能工巧匠能反映一个“技”的境界,但是无论古代不成熟时期还是现在建筑成熟的阶段,设计师恐怕永远是必须存在,而且是这个行业的最耀眼的星星实际上还是建筑师,甚至是开发商。
建筑行业是开发商出钱、建筑师牵头、结构师配合计算,辅助设计师绘图制图人员完成工程图纸的绘制,工程队承包工程建设,大量的工人建设,监理人员和设计师负责监督项目的执行情况。
现在只能说对软件工人的要求比较高,如同古代的能工巧匠实现各种设计师的设计,甚至自己偶尔做一些小小的设计,雕刻出精美的雕塑,做出优雅的结构,但是这样的能工巧匠在当今社会却也越来越少应该来说已经不算蓝领工人只能算匠。
如果有一天中国软件发展出现大量的软件蓝领我觉得也没有什么,因为我们可以选择做一个产业的上层建筑,有开发商、设计事务所、监理工程师、工程承包方和蓝领工人,你可以选择你自己的发展方向,最后说的是只有分工没有贵贱之分,一个结构的关键施工人员,例如钢结构中最优秀的焊工恐怕工资水平亦不低于一些设计师。
总体说来,我觉得中国需要软件蓝领,但是并不应该过分强调,我想在这里讨论的人,更多的是想做设计师。
其实纵观建筑和军队的建设,也许能更多的让我们看到软件的发展的方向。
就像只要设计人员而由机器自动完成程序最后的编制和组装,看上去像天方夜谭,但是若美国人可以告诉全世界,他可以派无人机器去打一场战争,恐怕现在大家越来越看得到这种前景,而不再认为是天方夜谭,如同一场没有地面部队的南斯拉夫战争,让中国意识到我们和对手的差距,恐怕软件业也有一天会让我们意识到这种差距。所以不要过分学习印度,因为它没有带来优秀的思想,我们可以走相同的路,但是要看得更远,还是多看看美国人在做什么吧。
--->>>>作个你说的那种代码生成工具不是件难事,可是它丧失了人对项目的控制,做出来的项目也是那种不伦不类的软件项目,这种软件质量是不敢保证的。
>>>>>>>
其实我我告诉你,你的理解在现实中是错的。代码生成工具和丧失了人对项目的控制没有任何联系,项目的控制是由项目经理来做的,深层次更是公司来控制的,呵呵,得知道一个软件过程成熟得公司或组织是不会考虑你一俩高手或项目经理个人离开得。代码生成工具是居于公司的开发框架来做得,是公司级得不是某个项目组自己在做得,然后做他得人走了就不行,或者他得工具不是居于公司的开发框架而作,是自己乱发挥,个人程能公司是不卖帐的了。其实我们都知道要按一个框架开发,必须遵循框架的规约或约定,代码生产器是生成出符合框架的规约或约定的代码,说很简单的就DAO,由很多不同的实现方法,但公司框架是这样实现的那么就应该生成这样的DAO,而不是其他的,进一步说,你会问我,DAO不就是DAO吗,那还有什么,但我只举一个例子就行了,DAO里面A公司是用了jdbc来直接系列化的,但B公司是封装了Hibernate来系列化的,更有C公司是要用
ejb来实现系列化的或者使用OJB等等其他O/R Mapping工具,呵呵,还有很多关于框架的要求,这里就不说了,我的观点是代码生成工具不只是提高效率还可以保证制品的质量的一个很好的手段,人工编码容易因各种因素出现"误",并且比不上代码生成工具更能保证代码风格的统一。
记住了,过程,人和工具是质量保证的三大要素,而人不是指多厉害的技术高手或项目经理,是熟练公司的开发方法和工具,熟悉公司的开发过程的人。这里不能深入,因为太多的东西了。老实说我心里也很反感什么蓝领软件人,但这只是因为我们程序员的“高傲”的心里作怪而已,但潮流不能因为我们“高傲”的心而止的,我现在就已经看到了,你要是接触日本外包项目的话,感触就更多了。我老觉得日本人可能早就知道有这么一天了,对产业链他们也分析过,所以把下游的东西包给我们,然后过了十年或者更长时间我们中国上游的能力就会削弱......题外话。