您的位置:首页 > 其它

Yok很生气, 后果很严重

2005-01-30 16:49 267 查看
借首页发发牢骚

事情是由一个同事的辞职引起的. 他辞职理由之一使用是公司的一个二次开发平台会影响个人发展. 部门经理听了很不解, 接着他一个个把使用过这平台的人找去谈话, 询问对使用此平台的感受. 结果我说, 它确实对个人发展不利, 并且顺便提出, 我要辞职. 几位新来的同事倒没有说什么, 我估计是因为面对着经理不敢说实话, 因为平时的谈话中感觉到他们也有点牢骚的.

有必要先介绍一下这个二次开发平台. 这个系统的开发模式很特别, 并不用写程序, 只需在它的"表单设计器"上像做excel那样画表单出来, 设置一下表单单元格对应数据库什么字段, 用什么控件去展现, 然后在某地方写一些相应sql语句就可以对其进行增删改查的操作了. 再配合他们的工作流引擎, 就可以很方便的处理以表单传递,审批为核心流程的业务. 如果类似的项目用这个平台来搭建, 确实能节省很多传统开发方式用于写代码的时间, 而且在最近的项目中也体现出他的成效.

现在的主要矛盾是, 几个新来的同事, 在公司半年了, 每天做的是调研, 需求分析, 画界面, 写sql, 从来没有写过真正的程序. 用这种方式进行开发是否会对个人发展不利? 首先从开发人员的不同发展方向进行区别对待. 如果是想往项目管理, 需求分析的方向发展的, 或者这对他们是一件好事, 因为编码对他们来说可能是"无谓"的事情. 如果想往技术方向发展呢? 我觉得这绝对是一种灾难! 在应用的层面上做软件能够学到什么?

经理意识到我们出现这样的想法是一种危机, 于是今早专门开了个会, 说了一大堆道理. 他强调了两个观点. 第一是采用平台化组件化的开发方式可以大大减少重复工作以减少开发时间, 我觉得他有点在偷换概念. 主要矛盾不是使用平台组件, 而是在操作,应用的级别去做一个软件. 我也很喜欢使用很多组件, 框架, 在使用和阅读他们的代码的过程中我得益不少, 节省了很多无谓的工作, 并且学到了很多设计上的值得借鉴的地方. 例如nhibernate的Dialect和UIPAB的MVC配置都是典型的依赖倒置, 可以抽象地处理不同的具体事物. 昨天才偶然发现, 我做出来的东西原来和Spring.Web有几分相似.

第二是他在强调写代码是如何的不重要, 这我也是十分反对的. 底层的代码是一切的基础. 至少对于新人来说, 有重头做起的必要, 而且写程序也不只是懂语法, 类库, 控件那么简单, 更重要的是要有良好的设计.对于我的经理, 一个曾经是delphi程序员的人来说, 或许他心目中写程序就是那么简单, 这要归功于delphi功能强大的IDE和控件. 因为控件+数据库这种模式已经能把一些事情做的很好了, 所以在delphi的圈子里极少有讨论设计的, 通常就是控件, 报表, 数据库, 或者一个细微而具体的功能该怎么实现(语言的影响有那么大?不信看我上一篇blog. 另外澄清一下免得挨骂, 我并不是鄙视用delphi的人, 例如那个二次开发平台就是一个很精彩的delphi作品). 他并且作个假设说明写代码如何不重要: 我现在擅长.net, 现在软件技术日新月异, 日后推出新的语言, 是不是我必须重新学习, 去和那些毕业生竞争? 最重要的是要会怎么把一个软件做好, 理解需求什么什么的. 我想跟他说的是, 他把技术理解的太简单了, 在精通了一个语言平台的语法, 架构之后, 往更高层面学习的已经是和语言不太相关的了. 就拿我去年读的令我收获不少的两本书来说: <<设计模式>>, 用c++和smalltalk描述, 是10年前出版的; <<敏捷软件开发>>, 用java和c++描述, 两年前出版, 但是很多理论还是源于<<设计模式>>一书, 只是糅合了一些适合现代软件开发的东西. 这些很早就形成的经典理论, 对于我这个使用才出生了四年的.net的人来说依然十分有价值. 这是一个毕业生能够马上体会到的么? 别说毕业生了, 就算是我, 在技术方面都还有很多未熟悉, 甚至很多从未接触. 并且随着我的知识的增长, 我会发现有越来越多我需要但是还不懂的东西. 在今后很长一段时间里, 我依然会专注于技术.

我同学后来说道: 那你说,“行,那我们这些技术吹捧者离开吧”

这些话我都没有说出口, 我选择了沉默. 因为这个会议的目的是要稳定人心, 无谓找茬.

最后, 几个老同事兴致勃勃的附和了几句, 会议结束.

还是离开吧...

牢骚发完了. 请前辈们对使用这样的方式进行开发是否会对个人技术发展不利发表一下意见, 也给我这种沉迷技术的人的职业规划提点建议
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: