不积跬步无以至千里

记录精彩的程序人生

  • 首页
  • Java
  • Golang
  • PHP
  • Python
  • Nodejs
  • Lua
  • Docker
  • DevOps
  • 文章归档
  • 默认分类
  • 关于
  • 标签

  • 搜索
PostgreSQL hbase 时间同步 nexus 开机启动 nexus, 开机启动 jenkins安装配置 gitlab安装配置 gitlab安装 文件系统 fastdfs gcc切换 gcc升级 mysql8 交换空间 虚拟内存 tcp thrift lua tag test VPN SoftEtherVPN homebrew asm spring tomcat maven jdk ios mac 图案字符 figlet mysql半同步复制 mysql主从同步 一主多从 一主一从 主从同步 反向代理 密码重置 test 虚拟机扩容 swap 虚拟空间 docker ldocker grpc-gateway protobuf 微服务 go grp GRPC 授权登录 OAuth2.0 SOA supervisord supervisor RPC CentOS rabbitmq 环境变量 php-fpm php.ini error php7 lnmp 编译安装 mysql nginx linux java php python redis 字符串操作 mysql5.7 Solo

写最少的代码,避免给自己找麻烦

发表于 2020-06-25 | 分类于 默认分类 | 0 | 阅读次数 1302

软件开发的一个最基本的事实是:我们必须要写代码,但对于这样的一个事实的最大一个误解是:我们的工作就是写代码。作为软件程序员的最初几年,我一 直被这样的思想所迷惑,写代码是一种很强的事,是一种超能力,我们喜欢这种创造东西、成就东西的感觉。然而,多年之后,我终于明白,事情不是这样的。事情 的真相是:程序员要干的活是尽量让软件的代码最少。

不要误解,我指的不是像code golf那样压缩代码、节省字符——这样只会导致我们写出的代码无法阅读和维护。如果你能认识到这样的事实:我们大部分的时间都消耗在维护自己写的可怕的代码上,你就会发现,让代码最少、少给自己找麻烦,这无疑就会变成一个相当有创意的好思想。

为什么?

你可以查看一下,看看你用的工具,看看你用的框架。所有你做的,所有这些你使用的工具,都是用来减少代码量的。这些工具能减少犯错误的机会,把开发过程中能导致犯错的因素隔离开。

所以,为什么我们应该让代码尽量少?我承认,我之前说我们的工作是写最少的代码,这是撒了个小谎。我们真正的工作是思考,我们的工作是思考手头的问题,设计一个精彩的解决方案,最后把这个方案转变成软件。创造软件过程中的一个副产物就是我们需要写出这些代码。

思考者

代码是副产物

代码并不是你想象的那么重要。我们喜欢用各种理由说明代码很重要:因为开始写代码就意味着我们开始工作,把方案转化成软件,看起来就像是写代码是过 程同时也是目的。我们谈论开发工具,我们谈论语言选择,我们谈论开发环境。我是这样,你也是,大家都这样。享受这种敲击键盘的手艺似乎无可厚非。可问题在 于,我们需要多方面看问题。代码是精彩的,但它也是敌人,它需要你花时间去写,它很脆弱,它可能晦涩难懂,不是那么健壮。

这就是为什么我一直坚守“写最少的代码”的原因。不论何时当我感到有什么东西比它应该有的体积要大或应该有的情况更复杂,我就会说“写最少的代码”。每次当我写了太多的代码,使得很难维护时,我就重构,整理,所有的时候我都铭记着“写最少的代码”。

我不得不提到一点,有时候我们没有办法避免写出一大堆的代码,如果做不到精简,请保持清晰。写最少的代码就是写整洁的代码。写最少的代码是为了写出整洁的代码。当你对要写的代码精打细算时,你的代码就自然变的很清晰。

那么,我们的启示是什么?我想这最重要的启示是,代码只是副产物,我们在开发过程中不可避免的东西。所以,多思考,多重构,删除老旧的代码,用更新更少的代码替换,为你自己的好,今天就开始吧。

2012年最受欢迎的 PHP 框架
git merge 和git rebase 命令区别
  • 文章目录
  • 站点概览
ken

ken

记录精彩的程序人生

498 日志
9 分类
77 标签
RSS
Creative Commons
Links
  • 酷壳
0%
© 2010 — 2026 ken
由 Halo 强力驱动
鄂ICP备18013899号-1