关闭 x
IT技术网
    技 采 号
    ITJS.cn - 技术改变世界
    • 实用工具
    • 菜鸟教程
    IT采购网 中国存储网 科技号 CIO智库

    IT技术网

    IT采购网
    • 首页
    • 行业资讯
    • 系统运维
      • 操作系统
        • Windows
        • Linux
        • Mac OS
      • 数据库
        • MySQL
        • Oracle
        • SQL Server
      • 网站建设
    • 人工智能
    • 半导体芯片
    • 笔记本电脑
    • 智能手机
    • 智能汽车
    • 编程语言
    IT技术网 - ITJS.CN
    首页 » 程序人生 »你是编程中的“快枪手”还是“慢悠悠”?

    你是编程中的“快枪手”还是“慢悠悠”?

    2014-12-11 00:00:00 出处:ITJS
    分享

    一般而言,有两种类型的开发者。一种编码速度快,喜欢一大段一大段的组合代码,然后看它是否能顺利运行,这是编程中的“快枪手”,还有一种在朝着目标前进的时候比较淡定,他们会确保他们所写的一切代码都是精心设计的,可维护和可扩展的。因为这个原因,使得他们在速度上显得比别人慢,所以是“慢悠悠”。

    两者之间的区别是,前者完成的效率更高,但代码的错误率更大(除非他们特别幸运),而后者代码的错误率就少多了,并且易于扩展和维护。亲你是哪一种呢?

    8001363_225500505191_2

    愚蠢的“快枪手”?

    大多数开发人员可能不敢承认自己是那种以良好的体系结构为代价的“快枪手”。为什么呢?因为这样可能会产生更高的错误率。但是回过头来想想,哪个系统没有代码错误?

    拿我自己举个例子。

    我要是接了个单子要写程序什么的,会有来自客户方面的压力,因为我必须及时交付。而客户对于软件的要求大多是通过电子邮件,电话告知的,或者在某些情况下,客户会直接写在票务系统里发过来。我的责任就是,确保程序的功能可以准确反映这些要求。而大家都知道,有时候客户想要什么却并不说出来,而这一点也是我必须考虑进去的。

    在开发团队中,有写的快的成员也有写的慢的,有代码错误率高的也是错误率低的。而我我大部分时间在做的是,怎样将这些人员有效分类。

    继续讲那个例子。那么我该如何确保客户的要求能实现呢?答案是,我得看到实现要求功能的代码在哪里。所以,我就有两个选择了。第一个选择是把单子交给能快速交付的“快枪手”,这样我便可以及时看到运行结果(无论代码是否有bug也不管后期是否易于维护)。另一个是让“慢悠悠”来做,有可能直到最后一分钟他都交付不了,但是拿出来的解决方案必是精品。

    第一种情况下,我能很快拿到成果,而且要是客户不满意,还有时间去修改,但是我可能不得不面对不支持扩展和不可维护等等方面的缺陷。而在第二种情况下,因为没有多余的时间,所以将不能按客户要求进行修改,但是代码简洁优雅,要是未来有需要的话还可以进一步扩展。

    在这里要着重讲一下,可扩展和不可扩展以及可维护和不可维护的区别。例如,我们已经按客户要求搞定了所需的软件,但是它的代码是不可扩展的,那么要是用户喜欢并且想进一步扩展的话,那你就只能叫苦连天了。但是要是是可扩展可维护的,那么用户想在某个方面扩展的话,那就是小菜一碟了。

    所以,要是用户没有要扩展某个方面的想法,那么我会选择“快枪手”。反之就需要“慢悠悠”了。但是要是你想保证100%选择正确,那就只能让事后诸葛亮出马了。

    因为这是一个主观判断。

    不可协同工作

    上面我讲的例子要是能团队中实行,肯定可以提高整个团队的工作效率。在分配过程中,我认识到,“快枪手”有快速编码快速交付的特点,而“慢悠悠”有完成的代码简洁明朗易于维护的特征。

    随着社会的发展,CI / CD已经变得适用于多种环境。并且现在推陈出新也是越来越便宜。即使代码不可扩展,人们也负担得起更新迭代,甚至哪怕就是再次重新架构也可以承受。这样一来,我们就需要“快枪手”按照要求尽可能的快速开发,而在需要架构或者重构的时候,再青睐“慢悠悠”来大显身手了。

    但是要是“快枪手”的代码写得太快以至于“慢悠悠”完全跟不上,那时候就悲剧了,因为你得到的只会是一个千疮百孔,满是bug的系统。

    谁都不希望得到这样的结果。

    预见机制

    为了解决上述问题,我们可以使用预见机制,用于衡量开发人员的bug在代码运行时会导致什么问题。这样既可有效控制“快枪手”的错误率,也能确保“慢悠悠”的代码火车不再晚点。

    有没有觉得,“快枪手”好像文献资料或者是验证器?而“慢悠悠”则更加适合放在设计和架构功能方面,以便于这些方面今后有需要的话,容易维护和扩展。

    也许我们可以叫“快枪手”为功能团队,而“慢悠悠”则更趋向于是一种工程团队。

    最后,问问你自己,“快枪手”和“慢悠悠”,亲你是哪一种呢?

    上一篇返回首页 下一篇

    声明: 此文观点不代表本站立场;转载务必保留本文链接;版权疑问请联系我们。

    别人在看

    古都科技新星:西安锦园中学融合科创教育,点亮学生未来之路

    注册资本 200 亿元,中国长安汽车集团有限公司成立

    中国云计算新坐标 西云数据助力企业迈向上云新起点

    首次,苹果公司关闭一家中国官方直营店

    苹果将发布第三财季财报,很可能会超预期

    25 年第三季度 NAND Flash 合约价格预计将上涨 5-10%

    亚马逊网络服务 (AWS) 已裁员数百人

    邦彦邦彦云PC”新一代云上真机解决方案重磅亮相

    苹果Mac book产品线未来两年大升级:M5、M6系列芯片来袭

    净网—2025|代抢?录入?小心 “票圈陷阱”!

    IT头条

    公安部:我国在售汽车搭载的“智驾”系统都不具备“自动驾驶”功能

    02:03

    液冷服务器概念股走强,博汇、润泽等液冷概念股票大涨

    01:17

    亚太地区的 AI 驱动型医疗保健:2025 年及以后的下一步是什么?

    16:30

    智能手机市场风云:iPhone领跑销量榜,华为缺席引争议

    15:43

    大数据算法和“老师傅”经验叠加 智慧化收储粮食尽显“科技范”

    15:17

    技术分享

    商业智能成CIO优先关注点 技术落地方显成效(1)

    用linux安装MySQL时产生问题破解

    JAVA中关于Map的九大问题

    windows 7旗舰版无法使用远程登录如何开启telnet服务

    Android View 事件分发机制详解

    MySQL用户变量的用法

      友情链接:
    • IT采购网
    • 科技号
    • 中国存储网
    • 存储网
    • 半导体联盟
    • 医疗软件网
    • 软件中国
    • ITbrand
    • 采购中国
    • CIO智库
    • 考研题库
    • 法务网
    • AI工具网
    • 电子芯片网
    • 安全库
    • 隐私保护
    • 版权申明
    • 联系我们
    IT技术网 版权所有 © 2020-2025,京ICP备14047533号-20,Power by OK设计网

    在上方输入关键词后,回车键 开始搜索。Esc键 取消该搜索窗口。