大多数语言都可以用不同的方式来写,结果是一样的。同时,一旦你写好了代码,你可能会在未来的某个时候阅读它,并对它进行修正或添加新的功能。
因此,为了避免一直思考代码并很好地驾驭它,有一套工具和方法可以直接在PHP中 "正确地写代码",或者以直接支持其未来可读性的方式来构建代码(甚至由另一个人)。
作者的说明:。
经验表明,代码过时的速度非常快,甚至应用程序的作者本人在半年后也认为自己的代码是陌生的。因此,如果我们从一开始就正确地编写它,就不会妨碍它未来的可扩展性。
在实际开发中,秘密表明,统一的代码格式和一般规则的引入可以防止一些错误。
代码的可读性往往与格式化和书写规则有关。
在开发团队中,为我们如何格式化和维护代码建立正式规则是有意义的。
就我个人而言,我使用(2022年)Nette框架的编码标准,规则在每次提交时都会自动评估。更多信息请参见【使用GitHub CI】(https://php.baraja.cz/github-actions-nejlepsi-ci-pro…
安装编码标准测试和运行它是通过一对命令完成的。
composer create-project nette/coding-standard temp/coding-standard ^3 --no-progress --ignore-platform-reqsphp temp/coding-standard/ecs check src
这些注释对代码的处理没有影响,只供程序员使用。对于较大的、较完整的代码,重要的是要写一个说明,解释代码的用途以及它在原则上是如何工作的。
// 变量的定义$a = 5;$b = 3;$c = 2;// 所有数字的总和$sum = $a + $b + $c;// 为用户列出清单echo $sum;
注释以一对斜线(//
)开始,在行末之前都是有效的。它可以在任何地方使用。
该说明不应解释该算法的具体实施,而应解释其一般原则。这是因为随着时间的推移,代码可能会发生几次变化,在这种情况下,我们也应该纠正注释。
作者的说明:。
通常的情况是,代码并不完全按照其描述的那样做。这主要是由于程序员在某处犯了一个错误。因此,该说明应该描述一般的原则,这样我们就可以相应地修改代码。但千万别忘了,关于应用程序中实际发生的事情,唯一的真相只能由实际的代码来描述,而注释对此没有影响。
在设计一个应用程序时,将逻辑块彼此分开是很重要的。通常情况下,它们被分成函数、方法,或者在基本代码的情况下至少被注释分开。
在一个较长的算法中,我通常会在开头先描述整个算法的原理,然后对代码中的各个地方进行编号,以便开发者能够更好地理解基于它们的具体功能。
/*** 该函数计算算术平均值。*1.获得一个数字列表* 2.获得数字的总和和数量* 3.计算并打印平均数*/// 1.$numbers = [1, 3, 8, 12];// 2.$sum = array_sum($numbers);$count = count($numbers);// 3.echo '平均数是。' . ($sum / $count);
字符/**
开始一个多行注释,一直到*/
标记。为了便于阅读,最好在每一行的开头都加一个星号。
文档注释通常用于描述和记录函数(行为、参数、返回值、作者等)。
在早期的PHP版本中(7.0
之前),还没有使用数据类型,所以特定变量的类型直接在注释中描述。
/*** @作者 Jan Barášek <jan@barasek.com>*@license MIT* @链接https://php.baraja.cz*@param float[] $numbers*/function average(array $numbers): float{$sum = array_sum($numbers);$count = count($numbers);return $sum / $count;}
文档注释被称为 "文档",主要是因为它们有一个预先商定的格式,可以被特定的开发环境(和编辑器)理解,也可以被生成文档或检查代码的自动工具理解。
我只用英文写所有的代码(包括函数名、变量、注释......)。
这有很多好处。
PHP并不直接要求英语,你可以用英语写一切。我认为英语的使用更多的是一种对未来的投资,也是一种机会,可以让其他不是以英语为母语的人轻松地扩展代码。
完全本地化的英文代码也在公司中使用,所以从一开始就练习英文是很好的。
请务必记住,在进行数字运算时,PHP会对数字进行四舍五入。这往往会成为一种困扰,因为任何带有小数的结果都会伴随着一些不准确的地方。
一个好的解决方案似乎是先将数字递增,然后用最大可能的数字进行计算。这样一来,从统计学上来说,失真就会减少。
例子。
echo 10 / 3; // 他写的是3.33333333333。
在某些情况下,你也可以使用完全不使用小数的技巧,把所有东西都作为整数来计算。在这种情况下,不存在这种扭曲。
echo 1 / 2 * 2; // 这更糟糕,因为1/2 = 0.5*2 = 1echo 2 * 1 / 2; //这样更好,因为2*1=2/2=1
当你解决大的、复杂的数字运算时,用分数来写数字。
Jan Barášek Více o autorovi
Autor článku pracuje jako seniorní vývojář a software architekt v Praze. Navrhuje a spravuje velké webové aplikace, které znáte a používáte. Od roku 2009 nabral bohaté zkušenosti, které tímto webem předává dál.
Rád vám pomůžu:
Články píše Jan Barášek © 2009-2024 | Kontakt | Mapa webu
Status | Aktualizováno: ... | zh