当前位置: 首页 > news >正文

四种代码洁癖类型,程序员看了直呼内行

5ddd2f1598618998cb38f2370b5a44a8.gif

984cea7ffa3b42a72e50ef21ef604ebe.png

很多程序员在写代码的时候

都有自己的独特的习惯

比较典型的就是“代码洁癖

8d4a7e02ce5864963fdcb5a926ea1c9e.png

他二哥收集了一些代码洁癖症状

分了四个类型

来看看有没有你对应的吧

70d48e35197e40aef66444b119d8ffb7.png

f24667cad03fd794bc92300048aadb4a.png

b87816c9c4aa5870a5756079acb88b54.png

431d02f94065b3e0014dc5f90c93c8d2.png

dddb64cfc51585fdea6f163234a4ed4a.png

5f41685085933bd69578e357a848b224.png

5406de10846444fa2e25b0be10ba8138.png

看到大家都如此极致的追求,

他二哥实在佩服!

a096baa2b6ffa4c58cbbd48e9ff32c4e.png

有代码洁癖不是一件坏事

虽然代码洁癖看起来会让人耗时耗力

但是到项目中后期

对于业务的扩展、新同事的加入、

功能的复用、问题和bug的追溯等,

绝对会带来很大的便利

能提升团队的效率。

出来混,

技术债务早晚都要还的。

如果代码太过于杂乱,

就算是自己写的代码

可能过几个月连自己都看不懂了...

987e5d20e01d0a89f2a58c40fcecb9d9.png

大家还有哪些代码洁癖呢?

欢迎来留言区留言讨论!

RECOMMEND

推荐阅读

b198892355931672e7b38599fcd96be4.png

01

《编程原则:来自代码大师Max Kanat-Alexander的建议》

60e9cd78cbfe941628971daef038affe.png

作者:[美]马克斯·卡纳特-亚历山大(Max Kanat-Alexander)

译者:李光毅

编程大师向你展示如何让简约设计的思想回归到计算机编程中

推荐理由

在本书中,富有传奇色彩的编程大师马克斯·卡纳特-亚历山大(Max Kanat-Alexander)将会向你展示如何让简约设计的思想回归到计算机编程中。马克斯会解释程序员为何会感到力不从心,以及应该如何持续改善。世界上存在太多复杂的事物。复杂并不可取,因为它会给我们的工作带来隐患。
马克斯从他久负盛名的技术博客CodeSimplicity中精选了一部分文章,对如何在软件行业工作以及取得成功给出了自己的想法和建议。相信这43篇文章能够让你学会如何在工作中避免复杂,拥抱简约,从而让你的职业生涯更加顺利和成功。

c7b2ed05d61b83f5239a3946e3463fa3.png

02

《面向对象的思考过程》

07a7dd4f5f215a8405ec983b353db19d.png

作者:[美]马特·魏斯费尔德(Matt Weisfeld)

译者:黄博文、冯冠军、张轲

推荐理由

面向对象编程(OOP)是现代编程语言(包括C++、Java、C#、Visual Basic .NET、Ruby、Objective-C和Swift)的基础。对象也构成了许多Web技术(如JavaScript、Python和PHP)的基础。
在开始使用面向对象的开发环境之前,了解面向对象的基本概念至关重要。OOP促进了良好的设计实践、代码可移植性和重用性,但是需要转变思维才能完全理解OOP。刚接触OOP的程序员应该抵制直接跳入特定编程语言或建模语言的诱惑,首先花时间学习本书作者提出的“面向对象的思考过程”。
尽管编程技术多年来一直在变化和发展,但是无论平台如何演进,面向对象仍然是一个不变的概念。本书侧重于在过去20年中幸存下来并保持其核心的OOP技术,其中包括新的和扩展的设计模式、避免依赖关系以及SOLID原则,以帮助开发人员使软件设计易于理解、灵活和可维护。

336b64c271318019bd56054a2faaeb3e.png

03

《如何写出好程序》

4488a63216745a29255f4783500505a9.png

作者:[英] 佩蒂塔·史蒂文斯(Perdita Stevens)

译者:王磊 周训杰 万学凡

编程初学者、萌新程序员和编程“老兵”

必读的宝藏级编程“说明书”

赶走你的编程焦虑

推荐理由

学习编程并不仅仅是学习编程语言的细节:要想成为一名优秀的程序员,就必须成为调试代码、测试代码、编写清晰代码的专家,并且能解决遇到的任何疑难问题。同样,要想在编程课程中获得好成绩,就必须学会如何在作业和考试中取得高分。本书通过丰富的小提示、故事和关键术语的解释,清晰地传授各种编程技巧。书中包含Python、Java和Haskell的示例,无论你正在学习哪一种编程语言,都能帮助你。

62f0f9b4442c41efde215483bce073b5.png

04

《C++代码整洁之道:C++17可持续软件开发模式实践》

274ca199ceeb8da8433bdd3488ab14e4.png

作者:[德] 斯提芬·罗特(Stephan Roth)

译者:连少华、郭发阳、陈涛

知名培训师撰写

是编写C++整洁代码的实用参考书籍

适合各技术层次的开发人员

推荐理由

如果想用C++语言编写出易维护的、扩展性良好的以及生命力强的软件,那么,对于所有的软件开发人员、软件设计人员、对现代C++代码感兴趣或想降低开发成本的项目领导者来说,本书都是必需品。本书帮助各个技术层次的开发人员编写出易懂的、灵活的、可维护的和高效的C++代码。

708fb66890c9d1b836870ebac59ff3fd.png

05

《Python代码整洁之道:编写优雅的代码》

5d033d63d94031f73c02d5286d616970.png

作者:[美] 苏尼尔·卡皮尔(Sunil Kapil)

译者:连少华

重构既有代码的设计

教你写出优雅整洁的高质量Python3代码

推荐理由

本书旨在为不同级别的Python开发人员提供编程技巧方面的指引,以编写出更好的Python软件和程序。所提供的各种技术也不受限于Python的使用领域,同时还展示了如何让代码更符合Python的风格。阅读本书之后,你将会熟练地编写整洁的Python代码,并可以成功地将这些原则应用到自己的Python项目中。


8c723e40d1a2bed82aede4b673dd630e.gif

8af4b8e749a38bc87c913a9ae9ac1041.png

扫码关注【华章计算机】视频号

每天来听华章哥讲书

ea0ecf98444548e73e12079050b4fd87.gif

更多精彩回顾

书讯 | 11月书讯(上)| 拿下这些新书,赢在起跑线

书讯 | 11月书讯(下) | 拿下这些新书,赢在起跑线

资讯 | 为什么 Rust 是编程的未来?

书单 | 8本书助你零基础转行数据分析岗

干货 | SpringBoot 实战:加载和读取资源文件内容

收藏 | 看漫画来告诉你:什么是 “元宇宙” ?

上新 | 【新书速递】产品经理应该知道的72件事

赠书 | 【第80期】浅谈如何成为技术一号位?

a6f40aa72bbc8f07ca9c175d6eb8f1b7.gif

相关文章:

  • JavaScript成最受欢迎的编程语言,社区规模近 1650 万
  • 微软不会放弃Electron:Electron 快速入门及IPC 通信
  • 什么是边缘计算?它是怎样火起来的?终于有人讲明白了
  • 进阶必看的 RocketMQ ,就这篇了
  • 深度解析用户画像标签体系构建方法
  • 【第81期】4道题测试一下,你适不适合做产品经理
  • 【新书速递】你不知道的LevelDB
  • 手把手教你写一个迷你 Webpack
  • 聊聊“企业架构”这个连很多IT老兵都陌生的词
  • 【新书速递】解决方案架构师修炼之道
  • CPU可以跑多快?地球到火星的距离告诉你!
  • 解析OpenShift的存储规划
  • 12月书讯(上) | 冬夜寒冷,读书暖心,华章科技上新啦!
  • IEEE发布2022年科技趋势全球调研:人工智能和机器学习、云计算及5G将成为下一年最重要的技术...
  • 12月书讯(下) | 冬夜寒冷,读书暖心,华章科技上新啦!
  • bootstrap创建登录注册页面
  • - C#编程大幅提高OUTLOOK的邮件搜索能力!
  • express + mock 让前后台并行开发
  • GDB 调试 Mysql 实战(三)优先队列排序算法中的行记录长度统计是怎么来的(上)...
  • Java,console输出实时的转向GUI textbox
  • PHP 的 SAPI 是个什么东西
  • PHP那些事儿
  • seaborn 安装成功 + ImportError: DLL load failed: 找不到指定的模块 问题解决
  • vue自定义指令实现v-tap插件
  • Web Storage相关
  • 闭包--闭包作用之保存(一)
  • 从0搭建SpringBoot的HelloWorld -- Java版本
  • 批量截取pdf文件
  • 删除表内多余的重复数据
  • 学习使用ExpressJS 4.0中的新Router
  • 延迟脚本的方式
  • - 语言经验 - 《c++的高性能内存管理库tcmalloc和jemalloc》
  • 栈实现走出迷宫(C++)
  • 【运维趟坑回忆录 开篇】初入初创, 一脸懵
  • kubernetes资源对象--ingress
  • ​LeetCode解法汇总1276. 不浪费原料的汉堡制作方案
  • $.type 怎么精确判断对象类型的 --(源码学习2)
  • (2)STM32单片机上位机
  • (Arcgis)Python编程批量将HDF5文件转换为TIFF格式并应用地理转换和投影信息
  • (分享)自己整理的一些简单awk实用语句
  • (附源码)python旅游推荐系统 毕业设计 250623
  • (附源码)计算机毕业设计SSM智能化管理的仓库管理
  • (转)ABI是什么
  • (转)利用PHP的debug_backtrace函数,实现PHP文件权限管理、动态加载 【反射】...
  • .mat 文件的加载与创建 矩阵变图像? ∈ Matlab 使用笔记
  • .net CHARTING图表控件下载地址
  • .NET/C# 编译期间能确定的相同字符串,在运行期间是相同的实例
  • .NET/C# 利用 Walterlv.WeakEvents 高性能地中转一个自定义的弱事件(可让任意 CLR 事件成为弱事件)
  • .NET构架之我见
  • .net网站发布-允许更新此预编译站点
  • .Net中的设计模式——Factory Method模式
  • .one4-V-XXXXXXXX勒索病毒数据怎么处理|数据解密恢复
  • @CacheInvalidate(name = “xxx“, key = “#results.![a+b]“,multi = true)是什么意思
  • @param注解什么意思_9000字,通俗易懂的讲解下Java注解
  • [ 2222 ]http://e.eqxiu.com/s/wJMf15Ku