怎样编写健壮的代码

怎样编写健壮的代码

怎样编写健壮的代码.png

代码的几种特性

鲁棒性Robust(健壮性)

  • 系统在异常和危险情况下生存的关键

容错性

可移植性

反例: 脆弱、僵化、顽固且粘滞性高

如何构建高效、健壮、稳定且可扩展的优质API

为什么使用API

  • 模块化
  • 减少代码重复
  • 消除硬编码假设
  • 解耦业务逻辑内部实现

如何做到代码健壮且优雅?

必须真正的热爱程序员这一行业,热爱coding,热爱自己的工作,热爱技术,对于写出优质健壮的代码有着强烈的愿望。

要注重细节,注重基本概念

  • 如果连最基本的东西都搞不明白,盲目的去追求热门或者新潮的技术,显得不够踏实。

在写每一行代码的时候,要明白这一行代码的真正意思和真正作用,要清楚对于这行代码背后,CPU到底会做什么操作或者什么运算。

  • 不记得是哪位大师说过,“如果你能理解程序每一个字节,那么该程序才会真正的无错”

良好的代码风格

可读性和可维护性

封装和信息隐藏

良好的软件架构设计

  • 思路清晰的设计可获得易于理解的程序
  • 坚持抵制草草完工的诱惑——那样做往往得不偿失。
  • 倾注大量心血,最终获得一个出色的设计方案,这个成功的快感也是令人心动的.

使每一个函数达到健壮

  • (1)不能假定函数的输入参数是正确,必须检查函数的输入参数是否符合规则;
  • (2)当函数的输入不符合规则时,必须告诉用户错在哪,并告诉用户如何输入正确的参数;
  • (3)考虑代码的可读性,遵循代码规范。
  • ( 4 ) 充分自测

Keep it simple

Code Review

Code Refactor

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Failure [INSTALL_FAILED_NO_MATCHING_ABIS]

    这个问题出现在模拟器上的概率更大些,原因是某些应用使用了原生库(NDK,Native Lib),这些库的编译目标通常是arm架构的cpu,在x86上运行就会报这...

    一个会写诗的程序员
  • JSONP 的工作原理

    很简单,就是利用<script>标签没有跨域限制的“漏洞”(历史遗迹啊)来达到与第三方通讯的目的。当需要通讯时,本站脚本创建一个<script>元素,地址指向第...

    一个会写诗的程序员
  • 《Springboot开发问题纪要》java.lang.IllegalArgumentException: Request header is too large问题日志:java.lang.Ille

    org.apache.coyote.http11.AbstractHttp11Protocol

    一个会写诗的程序员
  • C语言入门小程序-猜数字

    学习编程注重实践,不少同学书看了好几章,等动手开始自己写的时候,发现还是不知从何下手。今天,我们以一个猜数字的小程序为例,带大家了解一下。

    用户6755376
  • GitHub现在已支持函数定义跳转,妈妈再也不怕我记性差了

    在后面看到一个函数或方法,但是已经记不清它的定义了怎么办?这就像看小说忘记了人名一样让人头大。

    量子位
  • GitHub现在已支持函数定义跳转,妈妈再也不怕我记性差了

    在后面看到一个函数或方法,但是已经记不清它的定义了怎么办?这就像看小说忘记了人名一样让人头大。

    代码医生工作室
  • python异步并发框架

    呵呵,这个标题有点大,其实只是想从零开始介绍一下异步的基础,以及 Python 开源异步并发框架的发展和互操作性。

    py3study
  • 神经网络 之 线性单元

    本文结构: 什么是线性单元 有什么用 代码实现 ---- 1. 什么是线性单元 线性单元和感知器的区别就是在激活函数: ? 感知器的 f 是阶越函数: ? 线性...

    杨熹
  • 程序语言(python、php、Node.js)调用Redis

    版权声明:本文为木偶人shaon原创文章,转载请注明原文地址,非常感谢。 https://b...

    shaonbean
  • 基础知识 | 每日一面(85)

    读者:如何清除多余的输入, 以防止在下一个提示符下读入?fflush(stdin)可以吗?

    闫小林

扫码关注云+社区

领取腾讯云代金券