程序员的历程感悟同样感受.docx

上传人:b****5 文档编号:2872064 上传时间:2022-11-16 格式:DOCX 页数:12 大小:32.09KB
下载 相关 举报
程序员的历程感悟同样感受.docx_第1页
第1页 / 共12页
程序员的历程感悟同样感受.docx_第2页
第2页 / 共12页
程序员的历程感悟同样感受.docx_第3页
第3页 / 共12页
程序员的历程感悟同样感受.docx_第4页
第4页 / 共12页
程序员的历程感悟同样感受.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

程序员的历程感悟同样感受.docx

《程序员的历程感悟同样感受.docx》由会员分享,可在线阅读,更多相关《程序员的历程感悟同样感受.docx(12页珍藏版)》请在冰豆网上搜索。

程序员的历程感悟同样感受.docx

程序员的历程感悟同样感受

JSF历程:

一个程序员的JavaWeb之路 

 

要:

一个没有Java经验,完全不懂Web编程的程序员,也能用JSF写出复杂的Web程序?

本文作者向读者介绍了自己的JSF历程,以亲身经历证明JSF是程序员通往JavaWeb世界的捷径。

  说实在的,我的JavaWeb之路,其实没有什么特别的,之所以写成文字,将自己的经历拿出来和读者共享,是希望给刚刚投身Java的程序员们一个参考。

我相信每个Java程序员都有自己独特的Java历程,每段Java历程都有值得大家去分享的理由。

经验也好,教训也罢,如果能够在Java程序员彷徨徘徊之际,给予他们一点帮助,让他们鼓起勇气,继续前进,那就不枉此文了。

 

  为了让您对文章内容有个大致的了解,以便决定是否要浪费时间看下去,下面列出了文章的目录:

 1.前言:

此文的目的

 2.Hello,world!

我的全部Java经验

  初遇Java,我的真实感受

  缺乏IDE的Java

  别了,Java

 3.一片空白的Web

  不懂Web的老程序员

  程序人生的十字路口

  鱼与熊掌,不可兼得

 4.用JSP写的第一个Web程序

  Jbuilder引领我的JSP之旅

  Jbuilder老矣,尚能饭否?

  JavaWeb里的汇编、C和C++

  JSP繁琐的Form处理

  Sun所宣称的JSF优点

 5.因为无知,我选择了JSF

  傻人的傻福

  JSF的UI组件

  JSF的事件和生命周期 

 6.结束语:

享受Java,享受程序人生 

----------------------------------------------------------------------------------------------

2.Hello,world!

我的全部Java经验

  初遇Java,我的真实感受

  关于Java的最初记忆已经很遥远了,遥远到连年份都已模糊。

是什么吸引我注意Java的?

是它奇怪的名字?

还是它WriteOnce,RunAnywhere的宣言?

我没有确切的答案。

只记得那是上个世纪九十年代,我正是一名快乐的程序员,做着自己喜欢做的事,拿着令人羡慕的不菲薪水,生活紧张有序,人生充满期待。

  那时还没有如今这么方便的互联网,看书和上机实践是程序员学习新技术的唯一手段。

我手边经常摆放着大量的计算机书籍,各种各样的语言、系统、平台、技术以、内核以及奥秘等等,我都兴趣盎然。

写完程序,偶有闲暇时,翻翻书,写段小程序,体验一下新的技术,是我那时最好的娱乐。

  我就是在这样的情形下认识Java的。

当时Java刚被发明出来,我不知道从哪里搞来一篇文章,是介绍Java的,具体内容早已忘到爪哇国去了,只记得里面有一个“Hello,world!

”的例子。

程序员没有不知道“Hello,world!

”的,尤其是学过C语言的。

我就是在C语言教材里第一次碰到“Hello,world!

”的。

由于C相当的普及,以至于在屏幕上打印“Hello,world!

”,都成了各种编程语言入门教程的八股格式了。

  我照着那篇介绍Java的文章里的例子,原封不动地敲到电脑里面去,当屏幕上果真打印出那句著名的“Hello,world!

”时,我一点也不惊奇。

Java的“Hello,world!

”没有什么特别的,和C一样,甚至还不如C,至少,C有Borland公司的IDE,Java有吗?

用文本编辑器写代码,用字符界面输出信息,用命令行执行程序,没有比这个更落后的了。

Java没有打动我,被塞到了书堆的最底层。

于是,“Hello,world!

”成了我唯一的也是全部的Java经验。

  缺乏IDE的Java

  我曾经是“文本-字符-命令行”的狂热爱好者。

在大学时代,我们学习单片机,一块电路板上安装了集CPU、RAM和其他一些模块于一体的集成块,配上一些辅助电路,装在一个塑料盒子里,外加一个直流电源,那是我最初的笔记本电脑。

虽然屏幕只有一行,虽然一行只能显示16个字符,虽然每个字符只有16个段,但当通电后屏幕上蓝色的字符开始闪烁时,我会立刻变得十分兴奋。

胳膊下夹着我的心爱的笔记本电脑,往返于宿舍、食堂和实验室,是我最骄傲的记忆。

  单片机之后是DOS,同样是“文本-字符-命令行”的天下,不过,已经有一些界面优美的程序出现了,最著名的莫过于PCTOOLS了,一个软件集成了几乎所有的操作,并且用一个功能键就代替了冗长的命令行。

那时我们用容量为360K或720K的软盘,里面有操作系统、Basic编译程序、PCTOOLS,揣在书包里,辗转于各个机房,用饭票换上机时间,在单色显示器前用行编辑器写代码,即便经常因为超时被机房管理员呵斥,依然乐此不疲。

  别了,Java

  我错过Java的另一个原因,是我首次接触Java时,正是Component(组件)和OO(面向对象)的天下,我沉迷在PowerBuilder、C++Builder和Delphi的世界里如鱼得水,无暇他顾。

Drag-and-Drop技术让开发变得如此轻松,是我在大学通宵达旦写C程序时不曾预料到的,而OO和面向过程的巨大区别,让我以往的经验似乎派不上用场了,我正忙于改变自己,适应潮流。

  所以,第一个Java程序没有给我留下太多的印象:

字符界面、命令行以及用文本编辑器写的代码,这些都是已经被Windows只手遮盖的东西了;虚拟机似乎也没什么必要,Windows已经一统天下,再加上一个“中介”,不是多余吗?

Java的类,和C++的类有本质区别吗?

好象还不如C++那么完善。

“WriteOnce,RunAnywhere”对我没有任何意义,因为我只写Windows程序!

Java,在我看来,只不过是编程语言芸芸众生中毫不起眼的一个角色,没有C的三头六臂,没有C++的大家风范,也没有VB的善解人意,更比不上PowerBuilder的特立独行,也许用不了多久,Java就会销声匿迹。

  我不曾预料到,这个看似平凡的Java,居然成为影响世界的语言。

后来Java之树在服务器端生根发芽,枝叶逐渐蔓延到桌面应用,大有在如日中天的Windows下撑出一片荫凉之势时,确实有点出乎我的意料。

而当程序员招聘广告上Java字样越来越多,我才意识到Java的时代正在到来。

而此时的我,只有一点“Hello,world!

”的可怜经验。

毫无疑问,我已经在Java的世界里掉队,是不争的事实了。

  是Borland公司改变了程序员的生活。

著名的Turbo系列集成开发环境,终结了落后的命令行方式。

全屏幕编辑、在线帮助、编译错误定位以及单步调试等等,给程序员注入了新的活力。

在一个漂亮、清晰、完善的集成开发环境里编写代码、编译、运行、调试,是所有程序员的梦想,Borland做到了。

在TurboC里,一切操作都简单到只需按一个功能键!

因此,自从开始使用TouboC以后,我就再也不愿意回到命令行了。

这也解释了为什么当Java的第一个例子以命令行方式运行完成后,我就束之高阁了。

如果Java的最初版本是伴随着一个IDE一起发布的,或许我的Java经验就会和Java的年龄一样大了。

 

----------------------------------------------------------------------------------------------

3.一片空白的Web

 

  不懂Web的老程序员 

  如果说Java我至少还写过一个程序的话,那么Web方面我真的是一文不名了。

为什么会这样?

象我这样一个自诩为老程序员的人,居然会不是Web专家?

就算不是Web专家也不要紧啊,难道竟然没有写过若干个大型的Web程序?

退一万步吧,大型的Web程序没有写过可以理解,一两个实验性质的网页总编过吧?

很不幸,我没有。

  我确实是一个老程序员,程序可以为我作证。

我写过很多程序,有些是大多数年轻的程序员甚至不曾听说过的。

比如Z80、MCS51、8086、汇编、寄存器、中断等等,恐怕有些读者不知道我在说什么。

汇编语言,最接近CPU的编程语言,年轻的程序员也许听说过,但用过的就凤毛麟角了。

DOS下的debug,汇编语言的调试软件,曾经是我最爱用的工具,研究病毒和破解加密程序就是靠它。

当然,汇编语言离业务逻辑太远了,再加上莫尔定律下飞速发展的硬件能力,现在甚至连操作系统的核心代码都不用汇编来写了。

  之所以提到汇编语言,只是为了说明我是老程序员。

汇编语言的经验在现在没有任何用处了,即使是单片机,如今最次的也都C了。

从汇编到C到C++,编程语言层出不穷,作为程序员的我,始终追随着编程语言的步伐,边学边用,不敢有丝毫的懈怠。

唯独在Web领域,我远远落在了时代的后面。

  程序员是一个活到老学到老的职业,3个月不抬头看路,你的眼前就会冒出许多技术的新面孔。

先是OO,我写了很多C++的程序;然后是Client/Server,我又写了很多PowerBuilder的程序;后来到了Browser/Server,我还想写很多Web程序,可是,我已经没有写程序的机会了。

原因很简单,当Web渐成程序员们的口头禅时,我做“管理”了。

 

  

  程序人生的十字路口

  我走过的路,和很多程序员一样。

22岁,学生们带着从老师那里学来的若干理论,投身到程序员的行列,工作稳定,学习的机会又多,他们满怀期待;25岁,程序员变成了高级程序员,虽然辛苦,虽然有压力,但薪水不菲,他们充满感激;28岁,高级程序员晋升到资深程序员,登上作为程序员的职业顶峰,见多识广,在技术领域里呼风唤雨,他们踌躇满志。

30岁,资深程序员还是资深程序员,虽然还是那样德高望众,虽然还是那样受人尊敬,但他们来到了程序人生的十字路口,他们开始不知所措了。

  “做管理还是做技术,这是个问题”。

一直做管理的人,他们不存在这个问题,管理可以从26岁做到62岁;先做技术后做管理的人,有问题但不严重,虽然他们的技术底子可以让他们更专业,但管理经验的不足,通常会成为他们继续晋升的障碍;一直做技术的人,他们的问题就大了,没有人希望你继续做技术,你自己也知道应该转向管理,可是,如果你偏偏生就了一付不喜欢管理的脾气,你该何去何从?

  继续做技术吧,你的性价比不如年轻程序员,因为你受雇的公司通常没有核心技术,也不需要技术积累,或者,即便有核心技术,即便需要技术积累,你的成本还是高于重新培养一个新人。

很低的价钱就能招到一个有潜力的程序员,签个培训协议,就能稳定三五年,随时要求加班而毫无怨言。

再说了,炒掉你并不需要付出很高的代价,事实上,根本就没有代价,如果你得到了一笔遣散费,那是因为同情。

  这是我的无奈,也是很多老程序员的无奈,更是中国软件行业的无奈,而归根结底,我不知道到底是谁的无奈。

程序员被划入吃青春饭一族,与舞女和模特同类,这多少有些中国特色。

所以,当我30岁的时候,我把自己归入了老程序员的行列。

为了能够体面地生活,像我这样的老程序员接受面试时,都知道必须为自己争取一个管理职位。

我会告诉主考官我喜欢管理,我管理过某某项目,并大谈软件开发的过程、文档、规范和质量。

学而优则仕,难道是程序员的唯一出路?

 

  鱼与熊掌,不可得兼

  我见过很老的美国程序员,也和很老的印度程序员一起工作过,他们的程序就像他们的年龄一样,让人放心。

当你向他们要一个程序时,他们会谨慎地告诉你,他们需要一些时间考虑一下,然后,他们会给你一个清单,列出他们认为可能存在的问题。

你接过来一看,很多问题确实是你没有考虑到的。

他们开始动手写代码的

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1