漫谈:该死的面向对象
写下这个题目的时候,心中想到的是另外一句话:“该死的英语四级”。
当 努力想得到一种东西却得不到的时候,就会套用经典的“该死的xxx”句型,伴有举出应该抵制xxx的N种理由、到论坛上发帖力辩xxx是否有用等症状,这 在弗洛伊德的经典精神分析体系中被称为吃不着葡萄就说葡萄酸综合症。此类病症在我国较为普遍,尚无特效药,较难治愈,偶尔痊愈者有时还会就下后遗症,具体 表现如考过四级之后散布“四级这么简单没过的都是白痴”等言论等等,给众多家庭带来了苦恼,给社会带来了沉重的负担。
不幸的是本人也身染此 病,现在正陷入自身的苦恼和因给他人带来苦恼而更加的苦恼之中不能自拔。根据市级以上医院的三维彩超诊断,本人应该属于后遗症阶段,具体表现为散布“面向 对象这么简单学不会的都是白痴”之类言论。其实前一段时间,由于医院的精心治疗,我的症状已经有所好转,然而最近轻心大意,不遵医嘱,接触了不适环境,又 使病情出现了反复,让我后悔莫及。
具体地说,我是到若干企业进行了面试,那真是一些难忘的场景。
HR:我们这个职位一般不要毕业生,要求有实践经验的。
Me:您写的要求技能,我觉得我有点基础,不知可不可以试一试?
HR:那,你给我解释一下,什么叫虚拟?
Me:虚拟?
HR:对,虚拟。
Me:……您是指……虚拟的什么?
(虚 拟的东西可多呀,虚拟机?VMWare?JVM?.NET?Win32VM?还是虚拟电路?EWB?虚拟现实?VRML?虚拟光驱?虚拟PS?模拟器?虚 拟人生?……我研究过JVM结构,还自己写过基于堆栈机原理的、运行自己设计的汇编语言的虚拟机器,它是指这个?那我也许可以……)
HR:就是“虚拟”这个概念,你给我解释一下。
(这个问题还真有难度,如此泛泛地解释“虚拟”,我还真要仔细组织一下语言。)
Me:呃……我想,虚拟在计算机领域一般指用软件来模拟一个真实存在的事物……
HR:不对。
Me:……(迷茫中)
HR:你根本不懂什么叫“虚拟”。
(我开始冒汗,毕竟是高人,我觉得我对虚拟也算有所理解了,可在人家看来都不值一提。难以想象,高人们的思想都到了什么境界!)
HR:这样吧(递给我一张纸),你给我写一个例子,一个虚拟的例子。能写出来吗?
(我开始绝望,写什么?难不成把我写的虚拟机代码在这里都默写一遍?就算我能记得住,你就给我这一张纸?)
我迟迟不能动笔,HR摇头。
HR:那你了解面向对象吗?
Me:了解一点!(我如获至宝,赶快擦干汗)
HR:那你给我说说面向对象吧。
(也 这么泛泛地说?我……面向对象还有什么可说的么?那哪是两分钟能说得完的?我设计OO虚拟机的时候,设计动态联编虚方法表的时候,为了解决多继承,可谓绞 尽脑汁;为寻找用面向过程来模仿面向对象的方法而费尽心思;为了发挥面向对象的最大优势而努力引入垃圾收集;设计正则表达式解析器的时候为构建递归解析 树,对parse方法进行了各种重载以适应& | *三种运算符,等等,面向对象在我心中早不是一个整体,而是融合到各种设计思想当中去了,现在让我泛泛地说,还是相当有难度……)
Me:面向对象,……我想,泛泛地说,就是三条原理,封装性,继承性和多态性……(那时我像一个混日子的大学男生,或者一个刻苦努力的大学女生,在死记硬背)
HR:不行,你对面向对象掌握也不好。
(太对了,我这么回答,要是有人能觉得我掌握得好才怪。可我究竟应该怎么回答呢?我深切地感受到自己语言功底之差。)
HR:(语重心长地)面向对象,虚拟这些东西,都是很基础的,应该掌握好,要是……
(慢着!!!!我有种被愚弄的感觉,也怪我笨,居然没有听出来他的意思!)
Me:您说的虚拟是指虚拟方法吧?virtual方法?
HR:对。
我吐血。
Me:这个,这个我知道,就是指子类重写基类的方法,目的是用统一的接口访问不同的功能实现……(此处省略10000字)
HR:那你再给我写一个虚拟的例子(注视着纸上刚出现的潦草的图形,一个方框派生出三个方框,及各种乱七八糟的标注,若有所思)。
我在纸上写:virtual void func(int x);
HR:(沉思片刻)你会SQL语言吗?
Me:(考虑片刻后,我再也不敢轻易说我会了)学过一点……
HR:那,你给我写一个命令,比如这有一个表(迅速在纸上画了方格状图形),你写一条,来查询第5000条至第6000条记录。
Me:这……这不是标准SQL,关系数据库理论中没有这种成份,它类似于集合……
HR:(打断)不过现实应用中都需要这种非标准的东西,需要你很熟练,用的时候拿来就用。
我终于败下阵来。
当 时我想那个HR不是我的冤家派来玩我的吧?还是本来就不想要我却看我挺能装B的所以故意戏耍一番?不过这都不重要了,因为我从人才市场上直接被救护车拉走 了,我的旧病复发了。后来医生告诫我,我切不可再去那个人才市场,以免性命不保。然而,为了养家糊口,为了对得起不嫌弃我的病的温柔女友,我不能不找工 作。于是出院之后,我又冒死去了几家企业面试。但有了这次血的教训,我时刻保持了注意,远离类似上次的那种场所。还好,再没遇到如此严重的刺激,但小的刺 激时常也不可避免,所以我现在一直随身携带急救盒绷带等物。事实证明,不受一点刺激是相当有难度的,因为每面试一个地方,中心问题几乎都是“面向对象”, 好象面向对象真是什么高不可攀的真理似的。该死的面向对象!
后来有人劝我,说我把自己定位错了,说我不应该去那些会问我面向对象的地方面 试,而应该去那些能问更有意义的问题的地方。此言我觉得甚有道理,只是之前我并不知道他们会问我面向对象。然而,就算他不问面向对象有怎样?也许还会问 SQL,问网络,过两年没准都一窝蜂似的都问面向方面编程,相信那时“该死的面向方面”等言论也会纷纷出笼。我不知道我有没有希望把自己的病治好,仅仅在 睡不着觉的时候会偶尔梦想,将来我开个公司,出大钱雇人做经理CxO等,自己去做HR,也见人就问:你懂面向招聘的编程吗?也许对方也一头雾水,或也许世 道发展了,谁都能对答如流,也说不定。不过最吸引我的也许并不是对答如流,也许朝我大吼一声:“问我点别的吧,不要问该死的面向xx!”更能给我深刻印 象。谁知道呢?然而,我仍然不见得会要那个留给我深刻印象的,因为他有病,和我一样的病,而且同样是后遗症阶段。这样或许可以刺激到他们,让他们后半生致 力于建立一个组织,帮助全国乃至全球患者进行维权。这样我或许也可从中受益,没准还能引起世界医疗界的重视,能攻克这种顽疾也说不定,那对社会不可不谓一 种大的解脱,我自己也不用揣着急救盒到处抱怨一句“该死的面向对象”了。
原文地址:http://lych.yo2.cn/articles/%e6%bc%ab%e8%b0%88%ef%bc%9a%e8%af%a5%e6%ad%bb%e7%9a%84%e9%9d%a2%e5%90%91%e5%af%b9%e8%b1%a1.html
posted on 2007-10-27 21:56 Nathan2008 阅读(374) 评论(3) 编辑 收藏 举报