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

    IT技术网

    IT采购网
    • 首页
    • 行业资讯
    • 系统运维
      • 操作系统
        • Windows
        • Linux
        • Mac OS
      • 数据库
        • MySQL
        • Oracle
        • SQL Server
      • 网站建设
    • 人工智能
    • 半导体芯片
    • 笔记本电脑
    • 智能手机
    • 智能汽车
    • 编程语言
    IT技术网 - ITJS.CN
    首页 » 程序人生 »优秀的程序员就像艺术家?

    优秀的程序员就像艺术家?

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

    优秀的代码能不能算艺术品?软件工艺这一理论是否有点矫枉过正?怎么样才算是一名真正“优秀”的程序员?

    让我们先从一个问题引入话题。假设你雇了一个水管工替换地下室里已经老化的旧水管,在整个过程中,这家伙一个劲地给你灌输这些水管是有多么多么的有艺术美感。

    “哇哦,看看这根管子弯曲的角度,它与墙壁对齐得是这么的漂亮!简直就是艺术品啊!”你会怎么看这个水管工?

    写代码也是如此。再也没有比一个开发人员非要将他的代码写成艺术的模式更糟的了。上述比喻来自一篇广受好评的文章《programming is not a craft》,其作者是Dan North,“Agile troublemaker”和BDD方法的创始人。

    软件艺术

    该理论的作者是 Kevlin Henney、Bob Martin、Corey Haines和Glenn Vanderburg,以下就是软件艺术的要领。

    不仅得能正常运作,还应该精心制作 不仅可以应对变化,还能稳步增值 有良好的个体交流,以及专业人士组成的社区 和谐的客户合作关系,富有成效的伙伴关系

    而现在的问题是,很多软件开发人员往往会因为太过自大反而不能很好地完成软件项目。因为自大会让他们将软件艺术捧得很高,North 说。Web服务和J2EE的项目就是这方面的例子,该项目的失败有很大一部分归咎于将软件艺术放到了过于崇高的地位。

    优秀的程序员

    你或许早就在一些小的IT项目中就领略过上述问题的存在了。要是有开发人员坚持使用某种特定的美学技术而不愿意务实的话,那么我敢肯定他已经被所谓的“软件艺术”洗脑了。

    好的代码应该是高效的代码,而不是因为它的美观。不管它是什么样子,只要它可靠、高效就成。换言之就是不管黑猫白猫,能抓老鼠的就是好猫。也可以归结为理解和实现简单流程的能力。

    “一个经验丰富的编程团队完全可以在很短的时间内拿出惊人的业务成绩。只有真正的专业人士和真正的软件匠手才能在毫无头绪一团糟中,例如各种企业软件,发现被抛弃的优雅与朴素。”——Dan North

    但可悲的是,即使是优秀的程序员也经常会忘记何谓优秀软件的核心功能——过分重视所谓的软件艺术往往是罪魁祸首。

    “软件从业者——具有讽刺意味的是,尤其是一些优秀人才——却经常会犯此错误。他们爱上了软件本身,然后觉得自己已经化身成了软件艺术工匠。”——Dan North

    程序员的才华

    全文这个辩论是基于一个问题展开的,这个问题就是:软件工程是否是艺术形式的一种?

    据说性能和效率的比重在软件行业里已经有所下降,而怎么样才能成为一名优秀的开发人员却依然没有达成共识。“伟大的程序员,只需要几个小时或者几天就能完成普通程序员需要数周或者数月才能搞定的任务。”Dan North坚持这么认为。

    “作为买家,你难道不想知道你的系统是由大师级工匠还是临时工做的吗?你付了钱,就应该有这个知情权。所以如何辨别两者就很重要了。”——Dan North

    North也承认,好不好看并不能让我们正确区分两者。任何开发人员都可以自诩为软件匠手,也能做到对何为“软件架构之美”侃侃而谈。North诚挚地希望能有有识之士重新编写软件艺术的概念,这是最基础的理念问题。

    站在背后的代码

    我们并不在乎水管长啥样——反正是埋在里面的。这同样适用于软件。无论是客户还是用户,都只关心代码是否能工作以及页面看上去ok就行。

    “同样的,我只想请专家电工来给我的房子布线而不是一个滥竽充数的家伙,我也只想要专业程序员来写代码,” North郑重其事地说,“我最讨厌的就是,一个自命不凡自以为是的水管工一刻不停地谈论他优雅美丽富有艺术感的水管。”

    上一篇返回首页 下一篇

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

    别人在看

    PNY 推出 CS3250 M.2 NVMe PCIe Gen5 x4 SSD,高端计算新标杆

    富士康承诺在泰米尔纳德邦投资 1500 亿卢比,创造 14,000 个就业机会

    NetApp Insight 2025:NetApp 和 Red Hat 加强协作,利用 Red Hat OpenShift 虚拟化推动 IT 现代化

    2025 年 OCP 全球峰会:Credo 推出 ZeroFlap 光收发器——人工智能网络光学器件的可靠性革命

    Kong 发布 Volcano,一个用于构建 AI 代理的 MCP 原生 SDK

    昂瑞微科创版IPO成功,上峰水泥跨界投资

    AI赋能,场景智变:第16届深圳国际移动电子展引领场景化消费新浪潮

    OpenAI估值5000亿美元,成全球初创公司中的“估值之王”

    战略突破:三菱电机以匠人心态引领功率半导体技术革新

    英伟达5亿美元投资英国自动驾驶初创公司Wayve

    IT头条

    Synology 更新 ActiveProtect Manager 1.1 以增强企业网络弹性和合规性

    00:43

    新的 Rubrik Agent Cloud 加速了可信的企业 AI 代理部署

    00:34

    宇树科技 G1人形机器人,拉动一辆重达1.4吨的汽车

    00:21

    Cloudera 调查发现,96% 的企业已将 AI 集成到核心业务流程中,这表明 AI 已从竞争优势转变为强制性实践

    02:05

    投资者反对马斯克 1 万亿美元薪酬方案,要求重组特斯拉董事会

    01:18

    技术分享

    大型网站的 HTTPS 实践(三):基于协议和配置的优化

    ubuntu下右键菜单添加新建word、excel文档等快捷方式

    Sublime Text 简明教程

    用户定义SQL Server函数的描述

    怎么在windows 7开始菜单中添加下载选项?

    SQL Server 2016将有哪些功能改进?

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

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