`
zhukewen_java
  • 浏览: 48536 次
社区版块
存档分类
最新评论

不要那么地恨业务,虽然业务是那么地可恨

    博客分类:
  • java
 
阅读更多
很少人可以离开业务。业务推动了技术的发展,像spring这么优秀的框架,看似是纯技术,其实也是业务推动其产生的。越复杂的业务,越需要优秀的技术。这也是为什么这个行业的巨头公司都有自己研发的一些技术,国外谷歌,国内阿里,因为既有的技术不能很好地支持业务的发展,甚至有可能阻碍业务的发展。
    所以,接受业务的折磨吧。
    如何能更好地处理业务?
    必须承认,每个人的大脑思维发展历程不一样,有的人理解新事物快,创造新事物慢;有的人创造新事物慢,理解新事物快。我们可以假设有这样一个传说:Linux的作者实在学不会Minix,所以自己写了个Linux。接受这个传说会使对业务感到困扰的人有些许安慰,我们可以这样想:这个业务之所以让我们如此痛苦,是因为它的存在有不和诣的地方。举个类比的例子,曾经有很多种输入法,如区位码,全拼,双拼,当时它们的存在确实是合理的,但也确实有不和诣的地方,因为这些输入法让我们感到不舒服,影响我们的打字速度,所以他们被取代了,所以有了五笔、搜猫搜狗、二笔。发明五笔的人未必拼音打字有多么地快,但他发明了一种速度比拼音快的输入法。拼音输入法在于简单,易学,基本不用学,五笔则是难学,但打字比拼音快。世界总是平衡的,如果拼音的输入速度超过了五笔,那么在这种又易学速度又快的输入法面前,五笔是没有存在的必要了。而恰恰是,五笔现在还很有必要存在。听标哥(杨标格躺着中枪)说,银行里招职员,五笔是一项考核指标。目的很显然,銀行这么做是为了提高服务客户的效率。他们承诺某某流程几分钟这内肯定搞完,速度自然不能落在打字上面。学会了五笔,看着单子上的字就能打出来。有人说,如果单子上的字很难看,看不清楚,那你不还得询问客户名字怎么读吗?不还得用到拼音了?没关系,没有哪个人是会打五笔不会打拼音的。相反则不然,打拼音的一般都不会打五笔。我真希望哪一天银行里来了个这样的客户:首先,他是一个哑巴。很显然,我们可爱的銀行并不会歧视哑巴。其次,他的名字是个孤僻字,新华字典没有,康xi大字典才有。而这个字在gb2312里也没有,gbk里却有。于是,我能想象出柜员是如何如何地翻字典,打电话问小学语文老师,想尽一切办法仍没有得到这个字的读音,后面排起了一万米的长队。这时,五笔哥来了,走到电脑旁边,敲了四个键,那字就出来了。完了,啥也不说,就说一句:不学五笔的柜员,不是好柜员。
    你也觉得吗?我也觉得,为了说明一个小小问题,举这么一个发生概率只有N分之一的例子,实在是太卑鄙了点。仅当娱乐。
    前面的内容主要是为了说明:就算我们不长于某方面,这并不代表我们不优秀。Spring的作者绝对不是最精通ejb的人,但他却创造了一个几乎已经替代ejb的框架。
    所以,如果你现在被业务折磨得死去活来,请不要太悲伤,要么就是它不合理,要么就是你完全有可能推翻它。
    如果业务不合理,理解起来就让人很吃力,并且没人跟你讲,你肯定自己想不出来。假设有个银业的业务,取钱。这里简化了,真实的复杂得多。如果项目经理跟我说,你做下取钱这块吧。我就想,取钱,肯定得先保证余额足够吧。判断余额,这就是业务的一部分,这是很自然的,很人类的,就算需求没说,就算文档没写,我也知道。
    写好后,经理说:你再改一下,取钱之前先判断一个这个人是不是在国际通缉犯档案库里。嗯,这个很合理,一听就明白,得到用户信息后,先去查证一下用户信息,然后判断余额,然后取钱。这个很快也改好了。
    写好了,经理又说:你再改一下,取钱之前先判断一下这个人的家族往前三代有没有睡觉不盖被子的习惯。我瞬间就石化了。这个简单吗?简单,但尼玛也太不合情理了吧?为什么要判断这个呀?什么意思呀?于是我们的可怜的程序员,就带着这个疑問。加功能去了。
   
    如果业务已成事实,如何更好地去适应?
    除了向熟悉业务的人了解情况外,最好的方法就是感同身受法。把自己放入当事人的处境,去发觉没有明显给出的东西。
    给几个例子。
    1,假设有一张表,记录的是用户登陆的时间。假设就两个字段,userId和loginTime。现在经理说要做个页面,把这个表给显示出来。
    然后你就很高兴地去完成这个任务了。如果你只是简单地把这两个字段显示到页面的表格中的话,毫无疑問,肯定是要被返工的。缺少什么?缺少用户信息。拿到这个任务应该想想,为什么要做这个功能?假设你就是提出这个需求的人,你自己想要的是什么?假设你在看这个页面,然了解一下某某某什么时候登陆过,需要什么?1,必须要显示用户的名字,这是很显然的。如果只有userid,对于使用这个页面的人而言,他肯定不知道哪个用户对应哪个id。2,按用户名搜索的功能。这个也是很显然,我想只查看某个用户的,而不是所有人的。3,按登陆时间进行排序的功能。这个比较显然。至此,这个页面算是比较丰富了。需求只是一句话,但我们通过设身处地地想,能够发觉它的潜在的功能。
    2. 页面用户的体验很重要。如果做页面,更需要我们处在用户的角度来看问题了。哥曾经在这方面很糟糕,现在好些了。
    比如很简单的分页问题。当到了最后一页时,我们可以这样理:如果当前而是最后一页,那么当用户点“下一页”时,我们来个alert('亲,已经最后一页了哦‘)。你还洋洋自得了:你看,我用了淘宝体哦。很显然,这是很不好的做法,这种做法就是允许用户犯错,并且当他犯错后,马上给他来个提醒,还觉得挺人性化的,其实一点也不人性化。很显然,好的做法应该是:如果已经是最后一页了,那么“下一页”的按钮就应该设为不可用。不给用户犯错的机会。
    对于程序员页而言,如果不把自己放在用户的位置想一想,很有可能就采用第一种做法了。程序员的思维是这样的:如果是最后一页了,你再点再一页我就不让你跳转。还有一种做法,那是我在做XX网的时候采用的,当时的策略是:如果是最后一页了,你再点下一页,我也不会给什么提示,而是仍然给你跳到最后一页。看起来页面是刷新了,其实还是最后一页。当是就是依着程序员的思维,而非用户的思维,所以做出了这么不光彩的体验。
    在有的网站上遇到过这样的情况:要你注册,页面上是一串长长的填信息的框框,最后有个验证码。填完所有的项后,提交,結果页面刷新,说验证码错误,重填,重填验证码就罢了,尼玛其它的信息也全都没有。每当这时候,我都有一种黑掉那服务器的感觉。这完全是程序员思维,只关心怎么从页面获得值,而不关心用户是怎么想的。有些网站好点,输错验证码会就算页面刷新,填的信息都还会在。做得更好一点的,刷新后,填的信息还在,但密码那两栏是空白,还是要重填。这个表扬一下。
    把自己放在用户的角度思考需求,业务会变得可爱一点。
   
分享到:
评论

相关推荐

    初中语文文摘社会可恨与可鄙

    初中语文文摘社会可恨与可鄙

    可爱又可恨的蝈蝈作文.doc

    可爱又可恨的蝈蝈作文.doc

    [解析]FOR循环为何可恨?.pdf

    [解析]FOR循环为何可恨?.pdf

    大象三年级科学可爱又可恨的风学习教案.pptx

    大象三年级科学可爱又可恨的风学习教案.pptx

    PCB产业链:携手共克时艰——可爱,汽车电子;可恨,新能源汽车.pdf

    PCB产业链:携手共克时艰——可爱,汽车电子;可恨,新能源汽车.pdf

    javascript可以很简单的把png透明,并且支持IE5、IE6

    这是我用jquery框架编写的一个可以使用你的网站中的所有PNG格式的图片支持透明度,本来符合W3C规范的浏览器是支持PNG透明的,但是可恨的是IE5和IE6都不支持,甚至IE7有时候还会出现错误,不过通过我的这段代码,可以...

    桌面小闹钟【适合开发人员和办公室人员】

    很多软件工程师或者坐办公室的...网上也有很多类似的闹钟,但经常发现这些免费的软件内多数藏有病毒, 不注意间,自己用了10年的QQ丢了, 并且可恨的是,偷盗者还联系我的QQ好友,打着我的名义向他们骗钱。。。可恨啊!

    XMUOJ1230 结题报告和源代码

    XMU OJ 1230的解题报告和源代码 菜鸟小李是xmu大x的学生了,可...可恨这书连排序都没有,迷茫的小李只好把问题寄托给你了。 字符串大小:若strcmp(s1,s2)>0则s1>s2;若strcmp(s1,s2)=0则s1=s2;若strcmp(s1,s2)则s1<s2.

    WTL webbrowser javascript c++ 开发html界面

    CSDN上有些貌似的资源不过可惜的还是MFC的翻版,让人可恨的是,抄别人的代码,你也改改文件名,函数明吧,你就把别人的代码拿过来删掉全部的注释,然后就说自己开发,垃圾。 这个是我在www.codeproject.com上找到的...

    数字与模拟通信系统中文第六版答案2

    数字与模拟通信系统课后题答案2,这答案有个哥们恶心人的要10个积分,丧心病狂啊,大家还都是学生,我哪儿来那么多分,可恨

    Symmetry and Molecular Orbitals

    群论对于化学和固体物理领域的研究...对于物理学的研究生来说也是一门常见的课程, 可恨自己竟然没有选修过它。为什么呢?因为当初没有关注也没有老师 要求修这门课啊-一一一看来咱们所的研究生课程教育还是很脱节的。

    DNS加密DNSCrypt

    OpenDNS DNSCrypt,终于有工具可以对付可恨的 DNS污染 DNS劫持 了。这个是Windows版

    linux菜鸟进阶系列之linux入门教程

    1 采用了最新的Linux 2.4.2版稳定内核支持更多硬件设备具有很高的性能指标 2 采用了最新的图形系统Xfree86 4.0.3提供了强大的硬件支持 3 引入了全图形安装界面使得安装更为简单 4 增加了国际化语言支持但最可恨的是...

    禁止win10自动更新驱动

    自己摸索完全禁止win10更新驱动,经测试完全有效,特别是win10自动更新显卡驱动最可恨!

    CPU多核优化

    罗马2:全面战争 CPU多核优化工具;罗马2是很吃CPU的,可恨的是只可一个核吃,然而我们的电脑一般都是多核的;此工具主要用于那些多核并发优化不好,还吃CPU的游戏。

    单词记忆秘诀 单词

    似乎与这个英语单词的含义之间没有任何必然的关系,甚至你会说,别说必然的关系,好像连丝毫的瓜葛都没有,在人们普遍的、历来的思维中,由于英语单词的不可理解,导致它无厘头,进而无聊,进而可恨。  其实我们...

    RT3070 AP端驱动

    RT3070的AP端驱动,如果你需要它,肯定了解它,我就不多说了,唯一需要说明的是,之前下载过某几个人的该驱动,挂的都是5分,这也就算了,可恨的是解压出来后,只有一个module目录,代码是不全的,这个资源费了很大...

    百科知识搜索系统 Ver 1.0 BETA 版

    有人也问我是否可以加了采集的功能,可恨本人才疏学浅,无法满足,希望有高手不惜赐教~~~ 界面版权:www.openv.com ============================== 程序介绍: ◎前言:这是应一个MM的要求,搞了一个类似于知识...

    linux入门教程 linux入门教程

    4) 增加了国际化语言支持,但最可恨的是支持了Big5,却没有简体中文,真可气; 5) 显著改进了对多CPU计算机的支持,而对于单CPU的计算机器,则提供了高达4G的用户进程空间,同时取消了PCI总线的限制,虚拟内存可...

    数据结构 课后课件 清华大学出版

    数据结构 课后课件,里面有第一章到第八章的课件,讲解可恨详细啊

Global site tag (gtag.js) - Google Analytics