0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

程序员写代码的目的是什么

工程师人生 来源:简书网 作者:好程序员特训营 2019-12-23 14:20 次阅读

码农是一种游离于在二维世界(二进制)和人类现实世界之间的一种奇异的生物。关于程序,有人形容“程序有如生命。总处于演化之中。新需求就是基因突变。可能进化,可能劣化,可能崩溃。版本控制保存众多样本,提供重试的机会。单元测试就像DNA双链。将不自洽的细节揪出来。”

每个人的观点和看法可能不太一样,毕竟每个人达到的境界不一样,观看的视角也不一样,但是不管怎么样,但凡程序员就避免不了要写代码,或者要懂代码,那么写代码的目的又是什么呢?

当你水平达到了一定程度之后,你经常面对的是“效率”和“简洁”的选择,这已经没有办法让你的程序在这两方面变得绝对更优,鱼和熊掌很难兼得。

对于那些年薪百万的,或者真正的大神来说,并不是每一行程序性能都需要优化到极致,而是在这二者之间掌握一个所需要的平衡。当代码量上去之后,对于大部分代码而言,可读性和稳定性的重要性就会逐渐超过性能,也就是说写得清晰易懂不犯错比下笔就是神算法要简单得多。

举个比较简单的例子,一个有序搜索,做过10道算法题的人都知道logn的,但是当你确定数据量不会超过15,并且这段算法不是critical path的时候,是完全可以直接写线性解的,因为线性解比logn要清晰简明得多,而且不会出现错误。

因此在成为大神的路上,思考远远要比书写重要,反思远远比重复重要。想清楚了再下笔去写,知道你要的是什么。在实现一个功能之前,脑子里先相处三种实现的方式,然后问自己我需要的最重要的东西是什么。而不是见到什么都先brute force,然后开始调,调好了发现原来这算法可以变成logn,然后推翻了重写。这完全是在浪费自己的时间和精力。当然了另一个极端就是,遇到什么东西都先想最优解,不是最优解坚决不写。

总而言之,写代码的目的,不是追求,也不是追求最简单,而是最好用。

责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 程序员
    +关注

    关注

    4

    文章

    931

    浏览量

    29570
收藏 人收藏

    评论

    相关推荐

    薪资高、青春饭,是不是程序员=青楼?

    花期太短。技术迭代快,年龄大容易失业。 就这几年的互联网环境而言,不管是前端、Java、Android开发等等行业。已经感受到程序员不是太卷就是工作难找,薪资过低。以前高工现在拿着中低程序员薪资
    发表于 03-06 21:32

    GitHub Copilot:你的代码超级助手!程序员的最强福音

    今天小启给大家安利一款令人兴奋的AI工具——GitHubCopilot。它无疑是程序员们的最强福音!无论你是新手还是经验丰富的开发者,GitHubCopilot都将成为你的代码超级助手。想象一下
    的头像 发表于 03-05 08:04 432次阅读
    GitHub Copilot:你的<b class='flag-5'>代码</b>超级助手!<b class='flag-5'>程序员</b>的最强福音

    1月18号“纯鸿蒙”千帆启航,程序员预备!

    。 如何正确看待鸿蒙? 我作为程序员来说,首先是看鸿蒙的发展、市场开发岗位、薪资以及前景。 这几年对鸿蒙的发展情况来分析,从2019年开始鸿蒙的出来今天,华为鸿蒙取得了很大的成就。从“不兼容
    发表于 01-16 22:13

    程序员表白程序

    电子发烧友网站提供《程序员表白程序.rar》资料免费下载
    发表于 11-21 10:41 0次下载
    <b class='flag-5'>程序员</b>表白<b class='flag-5'>程序</b>

    程序员节 | 今年程序员们都想要的礼物竟然是……

    原文标题:程序员节 | 今年程序员们都想要的礼物竟然是…… 文章出处:【微信公众号:微软科技】欢迎添加关注!文章转载请注明出处。
    的头像 发表于 10-24 10:35 266次阅读
    <b class='flag-5'>程序员</b>节 | 今年<b class='flag-5'>程序员</b>们都想要的礼物竟然是……

    移植ARM DHCP服务器版本1程序员指南

    这本书由ARM DHCP服务器服务器软件提供, 假定ARM DHCP服务器移植源可以作为参考, 也假设您可以访问程序员的 C 和 ARM 组装语言指南。 本程序员指南是为有经验的内嵌系统程序员编写
    发表于 08-18 06:46

    霓虹灯程序员指南

    如果您对ARM技术完全陌生,请阅读Cortex-A系列程序员指南,了解有关ARM架构配置文件和一般编程指南的信息。 ·霓虹灯技术是ARM高级单指令多数据(SIMD)扩展的实现。 ·霓虹灯单元是执行
    发表于 08-17 06:32

    ARMv8-A霓虹灯程序员指南

    程序员,如固件、设备驱动程序或android内核开发人员•希望为基于Arm的目标设备优化库或应用程序程序员•非常热衷于Raspberry Pi爱好者本指南涵盖了如何开始使用Neon,
    发表于 08-08 07:25

    ARM系统跟踪Macrocell程序员模型架构规范1.1版

    ARM 系统跟踪大型电池程序员示范建筑规格V1.1 建筑规格
    发表于 08-02 10:11

    61.[程序员小飞]如何在3分钟内安装好数据库MySql和Navicat,简单又易懂

    程序员
    充八万
    发布于 :2023年07月20日 09:16:19

    Neuron C 程序员指南

    Neuron C 程序员指南
    发表于 07-04 20:48 0次下载
    Neuron C <b class='flag-5'>程序员</b>指南

    ISI 程序员指南

    ISI 程序员指南
    发表于 07-04 20:47 0次下载
    ISI <b class='flag-5'>程序员</b>指南

    打开 LNS 程序员参考

    打开 LNS 程序员参考
    发表于 07-04 19:50 0次下载
    打开 LNS <b class='flag-5'>程序员</b>参考

    5款程序员最佳的代码比较工具

     正文    俗话说:三句不离本行,对于程序员这个可爱的群体来说也是一样,即使面对无休无止的编程工作,程序员们依旧任劳任怨的埋头苦干,梦想着用自己码下的代码改变世界。工欲善其事,必先利其器,每一位
    的头像 发表于 05-23 10:35 4631次阅读
    5款<b class='flag-5'>程序员</b>最佳的<b class='flag-5'>代码</b>比较工具