分类为‘杂7杂8’的日志

30

live spaces 要关了,本来想移几篇过来装装门面,却没看上眼的。

都是四年前的事了,阅历多了。可是当年困惑的,现在依然。

也许当年意志坚定一点,不转C#或许会好一点。这谁又知道呢。

程序员的工作就是把一件麻烦事变成另外一件麻烦事,而编程本来就是一件麻烦的事情。

哈哈。独”乐乐”,不如众”乐乐”。

附上老文

Java 框架到底怎么了?

如果你作为一个Java 程序员从事j2ee开发的话,你一定会使用到众多应用程序框架。没有任何一个语言会象java 语言社区那样活跃,任何一种新的程序理念都会很快在网上出现相应的开源实现。对应最常用的网站开发模式MVC,每一层都会有很多框架,Struts, Tapestry 属于控制器层(C), Velocity 框架属于视图层(V), 你使用的数据持久层可能是 Hibernate, iBatis, OJB, 或者是 JDO 的众多开源实现中的任何一个,比如 JPOX 。 但是你的选择太多,未必是件好事,并不是任何人都能采用正确的框架来做正确的事情。如果你的开发平台是 .net, 那么你也许会避免这种情况,通常你只要安装一个 Visual Studio .net 作为开发工具,然后安装一个 MSDN 来查找资料就可以了。对于程序开发人员来说,这是非常两难的事情。我本人很喜欢 Java ,无论是学习还是实践,它的确给我们提供了很多。但是为什么我觉得 .net 那样“一站式”解决方案在很多时候是正确的呢?

作为一个Java 程序员,我觉得Java一些比较明显的问题,首先是Java 太复杂,其次Java 太面向程序员了,而不是面向用户。相对 C++ 来说, Java 已经很简单了。现在Java 程序员数量如此多就说明了这点。但是正如有人曾经说过的那样,“在linux 上,你很容易区分出谁是高手”,在 Java 领域中就不那么容易了。我就经常发现身边的同事还在犯很低级的概念性错误,他们甚至在无法准确地区分什么是接口,抽象类和 Servlet的情况下仍然可以从事多年的j2ee 开发。但为什么又说 Java 复杂呢,因为它完成一件事情,需要太多不同的技术来实现了。这样对于那些概念不很清楚的程序员来说,你如何能保证他们作出正确的选择呢?而众多框架中有没有多少提供“一站式”服务的。最近冒头的 Spring 框架提供的服务在众多的框架中算是最多的了,但是它又有个新问题,就是它还是太面向程序员了,而不是用户。为什么这么说呢?框架本来就是面向程序员的,这难道不对吗?Spring 虽然提供了众多选择(但是还是不够多,它本身没有ORM ),但它没有提供简单的使用方式,所以我们只能说它是面向程序员的。绝大多数java框架都存在这个问题,就是学习曲线比较高。我觉得学习曲线的高低是区分一个框架是否是面向程序员还是用户的关键,我想这主要表现在框架的易用性上。其实框架最终的用户还是程序员,之所以用“用户”和“程序员”来区分,是因为一些面向“程序员”的框架比较难以使用,虽然提供了大量的基础设施和零件,但是还是要求程序员自己来组装。而面向“用户”的框架就简单一些,用户只要按照说明书来使用就可以了。

, , ,

19

复刊号

落花流水意思就是流水帐,这里就是一个写写流水帐的博客。

我是很懒的一个人,写博客不适合我。要不是国家网络技术突飞猛进,不会去弄一个国外的服务器。有了服务器,就顺手装了WordPress。
06年的时候我最后一次更新博客,至今的三年发生了很多事,英格兰输给了葡萄牙、C罗的眨巴眼、谈恋爱、结婚、去艾瑞上班、英格兰欧洲杯小组赛淘汰、曼联夺欧洲杯、曼联三连冠、卖了C罗、英格兰提前进入南非世界杯、我老婆帮我生了儿子。

3年来我娶妻生子,我老婆比较好哄。比较节俭,人也算长得漂亮。我们之间没有什么共同爱好。我喜欢的她统统不喜欢;她喜欢的我也没兴趣。主要我们各自忙于自己工作,也没空培养共同爱好。

结婚照

结婚照

09年的9月24日,她帮我生了儿子取名张智帷,儿子特好玩。每次换尿布他总有办法尿你一身。

张智帷

张智帷

事业上这三年来总体上是差强人意的,我变得越来越懒、对工作越来越没有兴趣、对自己越来越没信心。

07年时候换了工作。由于新团队是微软班底,放弃了钟爱的JAVA开始用C#。我不喜欢C#!至今如此。
技术部老大是很厉害的人,他观察独特而且一语中的。他对我的代码总有着很高要求。每次讨论方案,他总能指出代码中很多不足。经常让我觉得程序会运行在异常恶劣的环境来处理各种变态的需求。好不容易满足了各种需求,提交其他部门测试。他们只是看一看,觉得我做到并不是他们想要的。只好推翻需求从头再来。

08年花了一年都扑在一个项目上。项目失败、我信心没了……

09年至今一直对老项目修修补补。有了失败经验,没人给我项目,有了项目我也不敢接。

多变的需求、颠来倒去的算法、无尽的重构,弄得我焦头烂额。我有一个毛病——做什么项目都喜欢弄个大的架构,又不喜欢追求细节。往往刚刚架构还没写好,需求已经变了。从没这么没有信心过。一直在考虑程序员是否真的适合我。

我和一个同事抱怨:需求老是在变,好不容易弄出来的东西上头总不满意。
同事告诉我说:领导们自己没搞清楚要的是什么,我们自己只有摸着石头过河了。
我又问:为什么每次摸石头过河的都是我?为什么其他同事都走的是大马路?能不能和他们换换岗?我去开发一些需求明确的产品,让他们也去河里摸石子。
同事安慰我说:还是别换的好,跟公司的核心竞争力产品保持一致比较好,不然很容易被边缘化。

我苦笑道:早已被边缘化。

二〇〇九年十月十九日星期一

于艾瑞新办公楼