请选择 进入手机版 | 继续访问电脑版
点击联系客服
客服QQ:509006671 客服微信:mengfeiseo

广州老站长门户

 找回密码
 立即注册
查看: 214|回复: 45

什么是hardcode代码

[复制链接]

1

主题

1

帖子

5

积分

新手上路

Rank: 1

积分
5
发表于 2021-1-21 12:13:04 | 显示全部楼层 |阅读模式
硬代码是硬代码3360

1、需要写在配置信息上的信息直接写在程序代码上而死。

2、程序代码中出现了魔法值。

在案例1中,例如,将邮件发送和接收程序、用户名、密码、服务器地址等配置信息写入外部配置,从程序代码中读取配置信息。但是,如果直接在程序代码中死亡,则每次更改信息时都必须重新编译,如果多个程序代码中出现这些配置信息,则修改也会很麻烦。这种程序不容易维护。

在大多数编程语言中,可以将固定值定义为标记,然后用这个特殊标记替换变量名。如果标签名称变更,变数名称不会变更,因此重新编译整个程式时,所有变数都不再是固定值,因此很容易达到变更变数的目的。

编辑器的“查找替换”功能允许您重命名整个变量,但也可能会更改很多或更少,如果计算机程序出现小错误,则可能会出现大问题。

最好的方法是为变量名分开空间,实现这种变化。用临时定义的标记名称替换需要更改的变量名称。在案例2中,魔法值是直接出现在代码中的数字,只有在用数字描述的代码部分才能明确这个数字所代表的意义。

int[]array=new  int[20];

FOR(INT  I=0;I  20I  ){

System.out
uation">.print(array);
}


上面的例子中,如果数组的声明与for循环间隔较远,就很难知道for循环里面的控制条件i

static final int LENGTH_OF_ARRAY= 20;

int [] array = new int[LENGTH_OF_ARRAY];

for (int i = 0; i  LENGTH_OF_ARRAY; i++){
    System.out.print(array);
}


上述代码就使用static final 定义常量 LENGTH_OF_ARRAY= 20; 直接看for循环里面的控制条件 i

ps:注:使用static final 声明常量,可以方便以后维护更新。修改变量的值时只用修改一处,还不用担心修改了其他不该修改的常量。


hardcode就是固化的代码,通常情况下,都应该避免使用hardcode方法。有的代码不能写死,不然维护起来比较麻烦。

回复

使用道具 举报

1

主题

346

帖子

194

积分

注册会员

Rank: 2

积分
194
发表于 2021-1-21 12:13:38 | 显示全部楼层
不错,支持下楼主
回复

使用道具 举报

0

主题

315

帖子

158

积分

注册会员

Rank: 2

积分
158
发表于 2021-1-21 12:34:33 | 显示全部楼层
路过,学习下
回复

使用道具 举报

1

主题

344

帖子

151

积分

注册会员

Rank: 2

积分
151
发表于 2021-1-21 12:56:48 | 显示全部楼层
小手一抖,积分到手!
回复

使用道具 举报

0

主题

347

帖子

195

积分

注册会员

Rank: 2

积分
195
发表于 2021-1-21 13:18:08 | 显示全部楼层
没看完~~~~~~ 先顶,好同志
回复

使用道具 举报

0

主题

357

帖子

128

积分

注册会员

Rank: 2

积分
128
发表于 2021-1-21 13:38:23 | 显示全部楼层
LZ真是人才
回复

使用道具 举报

0

主题

387

帖子

193

积分

注册会员

Rank: 2

积分
193
发表于 2021-1-21 14:00:18 | 显示全部楼层
路过,支持一下啦
回复

使用道具 举报

0

主题

332

帖子

210

积分

中级会员

Rank: 3Rank: 3

积分
210
发表于 2021-1-21 14:20:23 | 显示全部楼层
前排支持下
回复

使用道具 举报

1

主题

364

帖子

209

积分

中级会员

Rank: 3Rank: 3

积分
209
发表于 2021-1-21 14:40:58 | 显示全部楼层
好帖,来顶下
回复

使用道具 举报

1

主题

374

帖子

211

积分

中级会员

Rank: 3Rank: 3

积分
211
发表于 2021-1-21 15:02:01 | 显示全部楼层
过来看看的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|无图版|手机版|小黑屋|广州@IT精英团

GMT+8, 2021-3-4 13:56 , Processed in 0.101281 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表