如何写出高质量的代码?现在知道还不晚

2024-02-28 03:58

本文主要是介绍如何写出高质量的代码?现在知道还不晚,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

书单来自:https://www.quora.com/What-are-some-good-books-about-code-quality

在今天的时代,每个人都在努力提升自己的能力。如果我们谈论Web应用程序,就会想到Spring,Play和Struts等框架,这些框架可以帮助我们构建具有可扩展性和可管理性的软件。通过它们,你基本不需要写太多的代码就可以构建一个应用。

但事实上编写代码并不难,编写高质量的代码却很难。

作为开发人员,一定都想达到客户期望的那样,编写出没有出现任何Bug的代码,但这基本不可能。如何判断一段代码是否高质量,一个好的经验法则是是否:这段代码可以让任何人可以像读短语一样读它

 

本文我们将盘点5本能够帮助你编写出高质量代码的好书:

 

1、《重构》

 

如何写出高质量的代码?现在知道还不晚-爱尖刀

  • 豆瓣评分9.3,销量百万

  • 世界级软件开发大师Martin的不朽经典

  • 涵盖70多个可行的重构

 

本书解释重构的原理(principles)和最佳实践方式(best practices),并指出何时何地你应该开始挖掘你的代码以求改善,涵盖了70多个可行的重构,自出版以来一直深受读者喜爱,好评如潮

 

时隔20年,《重构》出版了第二版,相对第一版,第二版的整体结构并没有太大改动,但每一章的内容基本都进行重写,最主要的是代码示例不再是Java,而是选择JavaScript。查看更多第二版详情可点击:《豆瓣评分9.3!时隔20年,《重构》第二版终于来了!》

 

 

2、《代码大全(第二版)》

 

如何写出高质量的代码?现在知道还不晚-爱尖刀

  • 数十万读者的选择

  • 有关概念适用于大多数常见的编程语言

  • 将近500个代码示例

 

本书从软件质量和编程思想等方面论述了软件构造问题,并详细论述了紧跟潮流的新技术、高屋建瓴的观点、通用的概念,还含有丰富而典型的程序示例。

 

本书的第二版不是第一版的简单修订增补,而是完全进行了重写;增加了很多与时俱进的内容,现在看依然不会过时,丰富的程序示例在今天也依然适用。

 

 

3、《代码阅读》

 

如何写出高质量的代码?现在知道还不晚-爱尖刀

 

本书是2004年美国Jolt大奖入围作品。本书的作者Diomidis Spinellis使用了超过600个来自现实世界中的例子来向我们展示如何鉴别好的(或坏的)代码:如何去阅读它,从中去找寻什么,以及如何利用这种技巧来提升我们自身编写的代码的品质。

 

 

4、《Code Quality》

 

如何写出高质量的代码?现在知道还不晚-爱尖刀

 

美亚评分4.0,Diomidis Spinellis的第一本书《Code Reading》向程序员展示了如何理解和修改软件的关键功能特性。Code Quality专注于非功能属性,Spinellis利用数百个开源项目中作为示例 - 例如BSD Unix系统和HSQLDB Java数据库等,来说明每个软件开发人员都能够理解的概念,和能够立即应用的技术。

 

 

5、《代码整洁之道》

 

如何写出高质量的代码?现在知道还不晚-爱尖刀

 

  • 豆瓣评分9.0

  • 阐述了整洁代码的敏捷实践的方法 

  • 书中介绍规则均来自Martin多年的经验,拥有很高的借鉴价值

 

本书被程序员风味编写出干净代码的圣经,Bob叔通过本书给出了一系列行之有效的整洁代码操作实践。这些实践在本书中体现为一条条规则(或称“启示”),并辅以来自现实项目的正、反两面的范例。只要遵循这些规则,就能编写出干净的代码,从而有效提升代码质量。

 

 

6、《编写可读代码的艺术》

 

如何写出高质量的代码?现在知道还不晚-爱尖刀

 

本书关注编码的细节,总结了很多提高代码可读性的小技巧,本书旨在强调代码对人的友好性和可读性。主要涵盖以下内容:

  • 简化命名、注释和格式的方法,使每行代码都言简意赅。

  • 梳理程序中的循环、逻辑和变量来减小复杂度并理清思路。

  • 在函数级别解决问题,例如重新组织代码块,使其一次只做一件事。

  • ......

 

 

7、《代码之美》

 

如何写出高质量的代码?现在知道还不晚-爱尖刀

 

每个人对代码之美都有自己的认识,有38位作者,每位作者贡献一章。每位作者都将自己心目中对于“美丽的代码”的认识浓缩在一章当中,从而让读者可以学习顶级程序员的思维方式和代码方式。

学习从来不是一个人的事情,要有个相互监督的伙伴,工作需要学习C/C++或者为了入行、转行学习C/C++的伙伴可以关注公众号:【速学C语言】 咱们一起学习!

现在加入免费赠送一份C语言基础课程! 直接扫描下方二维码也可以哦!

这篇关于如何写出高质量的代码?现在知道还不晚的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/754357

相关文章

Java集合之Iterator迭代器实现代码解析

《Java集合之Iterator迭代器实现代码解析》迭代器Iterator是Java集合框架中的一个核心接口,位于java.util包下,它定义了一种标准的元素访问机制,为各种集合类型提供了一种统一的... 目录一、什么是Iterator二、Iterator的核心方法三、基本使用示例四、Iterator的工

Java 线程池+分布式实现代码

《Java线程池+分布式实现代码》在Java开发中,池通过预先创建并管理一定数量的资源,避免频繁创建和销毁资源带来的性能开销,从而提高系统效率,:本文主要介绍Java线程池+分布式实现代码,需要... 目录1. 线程池1.1 自定义线程池实现1.1.1 线程池核心1.1.2 代码示例1.2 总结流程2. J

JS纯前端实现浏览器语音播报、朗读功能的完整代码

《JS纯前端实现浏览器语音播报、朗读功能的完整代码》在现代互联网的发展中,语音技术正逐渐成为改变用户体验的重要一环,下面:本文主要介绍JS纯前端实现浏览器语音播报、朗读功能的相关资料,文中通过代码... 目录一、朗读单条文本:① 语音自选参数,按钮控制语音:② 效果图:二、朗读多条文本:① 语音有默认值:②

Vue实现路由守卫的示例代码

《Vue实现路由守卫的示例代码》Vue路由守卫是控制页面导航的钩子函数,主要用于鉴权、数据预加载等场景,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着... 目录一、概念二、类型三、实战一、概念路由守卫(Navigation Guards)本质上就是 在路

uni-app小程序项目中实现前端图片压缩实现方式(附详细代码)

《uni-app小程序项目中实现前端图片压缩实现方式(附详细代码)》在uni-app开发中,文件上传和图片处理是很常见的需求,但也经常会遇到各种问题,下面:本文主要介绍uni-app小程序项目中实... 目录方式一:使用<canvas>实现图片压缩(推荐,兼容性好)示例代码(小程序平台):方式二:使用uni

JAVA实现Token自动续期机制的示例代码

《JAVA实现Token自动续期机制的示例代码》本文主要介绍了JAVA实现Token自动续期机制的示例代码,通过动态调整会话生命周期平衡安全性与用户体验,解决固定有效期Token带来的风险与不便,感兴... 目录1. 固定有效期Token的内在局限性2. 自动续期机制:兼顾安全与体验的解决方案3. 总结PS

C#中通过Response.Headers设置自定义参数的代码示例

《C#中通过Response.Headers设置自定义参数的代码示例》:本文主要介绍C#中通过Response.Headers设置自定义响应头的方法,涵盖基础添加、安全校验、生产实践及调试技巧,强... 目录一、基础设置方法1. 直接添加自定义头2. 批量设置模式二、高级配置技巧1. 安全校验机制2. 类型

Python屏幕抓取和录制的详细代码示例

《Python屏幕抓取和录制的详细代码示例》随着现代计算机性能的提高和网络速度的加快,越来越多的用户需要对他们的屏幕进行录制,:本文主要介绍Python屏幕抓取和录制的相关资料,需要的朋友可以参考... 目录一、常用 python 屏幕抓取库二、pyautogui 截屏示例三、mss 高性能截图四、Pill

使用MapStruct实现Java对象映射的示例代码

《使用MapStruct实现Java对象映射的示例代码》本文主要介绍了使用MapStruct实现Java对象映射的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、什么是 MapStruct?二、实战演练:三步集成 MapStruct第一步:添加 Mave

Java抽象类Abstract Class示例代码详解

《Java抽象类AbstractClass示例代码详解》Java中的抽象类(AbstractClass)是面向对象编程中的重要概念,它通过abstract关键字声明,用于定义一组相关类的公共行为和属... 目录一、抽象类的定义1. 语法格式2. 核心特征二、抽象类的核心用途1. 定义公共接口2. 提供默认实