首页 > 编程语言 >《程序员修炼之道:从小工到专家》14

《程序员修炼之道:从小工到专家》14

时间:2023-05-21 15:12:35浏览次数:42  
标签:14 小工 BUG 程序员 程序设计 编写 多元 代码

多元程序设计和时间耦合

 

多元程序设计致力于通过元数据等方式使代码变得“软化”、易于修改,通过对代码的“编写”而不是未“修改”减少对代码原有结构的改变,降低BUG产生的可能性

这让我想起曾经在编写“四则运算”的随即括号代码是遇到的问题,在不添加相关代码的情况下可以正常运行,但是添加了“随机括号”代码之后就会报各种BUG,如果当时能够了解、学会“多元程序设计”或许就不会出现这种狼狈的状况了

 

在编写代码的时候难免将过程线性化——先做这个在做那个之后是它等诸如此类的固定模式,就像文章里提到的“冰镇果汁朗姆酒”案例,但是实际上它们不必是一个固定的模板——这在小学我们就进行过学习:如何合理规划时间

打破强加给程序的的线性的执行流程,减少程序代码之间的时间耦合性,这提高代码运行效率的同时也是对代码结构的合理优化,程序会更加灵活也会更加符合实际

标签:14,小工,BUG,程序员,程序设计,编写,多元,代码
From: https://www.cnblogs.com/yansans/p/17404679.html

相关文章

  • Stack Overflow 2017 开发者调查报告(程序员必看)
    最近,StackOverflow发布了一篇2017开发者调查报告,此次在全球有超过64,000名开发者参与调查,分别对其技能、工具、学习趋势等数据进行了统计,比较遗憾的是中国参与调查的开发者很少,只有大概300人左右,所以有些调查结果可能跟中国环境不太相符,不过毫无疑问,这几乎代表了全球技术的......
  • 这些小工具让你的Android开发更高效
    本文为作者「Tikitoo」投稿,应该多少受我点影响,Tikitoo也是一位自学的Android工程师,并且完全通过自学找到一份还不错的工作。互联网爱好者,并且是简书专题的运营者,在做Android开发过程中,会遇到一些小的问题,虽然自己动手也能解决,但是有了一些小工具,解决这些问题就得心应手了,今天就为......
  • Wordpress自定义小工具(Widget)简单案例
    在主题对应目录创建文件如widgets.php<?php//继承了WP_Widget这个类来创建新的小工具(Widget):可在后台外观-小工具中添加此自定义小工具到页面具体位置classmy_widgetextendsWP_Widget{publicfunction__construct() { //$widget_ops可以给小工具进......
  • k8s 1.24.14 Ingress-nginx 的部署
    前言:本次部署使用了高可用的形式,会在每个node节点做亲和性(master不部署),让每一个pod都部署上去,然后加入NGINX去过负载,这样我们之间用NGINX的80端口访问域名就可以了。MountVolume.SetUpfailedforvolume"webhook-cert":secret"ingress-nginx-admission"notfound。......
  • 程序员喜欢用程 Mac 进行编程
     大部分情况都是公司发什么用什么。如果可以选,就选自己用得最顺手的,赶紧搞完收工。有公司,不知道上面出了什么问题,要求新换的电脑必须要给程序Mac,有人就是死扛不要Mac,不是因为Mac有多不好,也不是因为Windows有多好,就是懒得再学一套快捷键。当然和每天用的东西也有关系,天天......
  • #yyds干货盘点# LeetCode程序员面试金典:有序链表转换二叉搜索树
    题目:给定一个单链表的头节点 head ,其中的元素按升序排序,将其转换为高度平衡的二叉搜索树。本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差不超过1。 示例1:输入:head=[-10,-3,0,5,9]输出:[0,-3,9,-10,null,5]解释:一个可能的答案是[0,-3,9,-1......
  • #yyds干货盘点# LeetCode程序员面试金典:比较版本号
    1.简述:给你两个版本号version1和version2,请你比较它们。版本号由一个或多个修订号组成,各修订号由一个'.'连接。每个修订号由多位数字组成,可能包含前导零。每个版本号至少包含一个字符。修订号从左到右编号,下标从0开始,最左边的修订号下标为0,下一个修订号下标为1,以此......
  • org.apache.jasper.JasperException: /pages/role-list.jsp (行.: [145], 列: [8]) 根
    org.apache.jasper.JasperException:/pages/role-list.jsp(行.:[145],列:[8])根据标记文件中的TLD或attribute指令,attribute[items]不接受任何表达式 web.xml中版本号不兼容产生的问题;解决方法:<%@taglibprefix=“c”uri=“http://java.sun.com/jstl/core”%>改为<%@t......
  • 146. LRU 缓存
      labuladong题解思路难度中等2682请你设计并实现一个满足  LRU(最近最少使用)缓存 约束的数据结构。实现 LRUCache 类:LRUCache(intcapacity) 以 正整数 作为容量 capacity 初始化LRU缓存intget(intkey) 如果关键字 key 存在于缓存中,则返......
  • leetcode1493
    递归:1.记pre[i]为以i位置结尾的连续1长度。 pre[i]=0;ai=0pre[i]=pre[i-1]+1;ai=1记suf[i]为以位置i开头的连续1长度;suf[i]=0;ai=0suf[i]=suf[i+1]+1;ai=1计算删掉i位置的连续1的长度为pre[i-1]+suf[i+1],再枚举每个位置找出最大的数返回。ans=max(pre[n-2],suf[1]);//......