微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!
coding-style专题提供coding-style的最新资讯内容,帮你更好的了解coding-style。
一些开发人员在他们的 PHP代码中使用花括号,有些只是将它们连接起来. 例如,这两行代码在PHP中完全有效 echo "<h1>{$row['title']}</h1>"; echo "<h1>" . $row['title'] . "</h1>"; 代码的输出在末尾是相同的,但哪一个被认为是一个很好的编码实践? 谢谢你,J 使用大括号语法稍慢.考虑以下测试: <?php $array =
喜欢: public $foo = null, $bar = 10; protected $_stuff = null, $_moreStuff = 5; 很多人似乎都是这样做的.为什么? 是不是这个不一致的命名(像一些PHP函数是:))? 这真的归结为一件事:个人偏好. 我个人也是使用该命名约定的人.使用下划线(无论是变量还是函数)为受保护
我即将将一些代码迁移到PSR-2标准.在我的代码中,我有if多个行的语句作为表达式: if ( $field->getBlockMode() == FieldInterface::BLOCK_MODE_HIDEVAR && !isset($this->enabledBlocks[$field->getBlock()]) ) { } 写这样的表达式的最佳做法是什么? 如何使它
我正在开发一个学习体验的个人项目,同时也要实现一个体面的代码.这种教育的一部分,并使其成为一个体面的代码,是单元测试.我最近潜入了 PHPUnit及其代码覆盖工具. 我遇到了一种具有特定实现的情况,其中使用的编码标准导致代码覆盖丢失.在这个特定的例子中,打破使用的编码标准会导致代码覆盖率从88%跳到94%. 在一个方法中,我有两行,如下所示 // .. some data validation s
只是为了澄清,我的意思是: class foon { private $barn = null; public function getBarn() { if (is_null($this->barn)) { $this->barn = getBarnImpl(); } return $this->barn; } } 当你不
我正在与几个开发人员合作开发一个 PHP项目,每个开发人员都有自己的风格.风格差异很大,并且可能使代码真的难以阅读,并且每个人都同意我们需要标准化我们的风格. 我遇到的问题是我找不到任何好的程序或系统来帮助强制执行PHP标准.我过去曾为C和Java使用了很多程序,而且我是一个巨大的checkstyle粉丝,但我找不到任何优雅的PHP. 您会建议使用哪些程序,工具或系统来帮助开发人员遵循一套通用的P
正如标题所说: 是否有用于编写/重构PSR编译代码的Netbeans / PHPStorm插件? phphint.org正是如此,但只提供在线复制和粘贴工具,而不是IDE集成的实时解决方案. 究竟我在寻找的是: >打字时“实时”PSR代码检查 >重新格式化/重构项目以符合PSR(1/2)编码指南(尽可能) 万一你想知道我在说什么: PSR-1 Basic Coding Standard和PSR-2
有没有办法指定获取除数组中的第一个元素之外的所有内容?我通常使用foreach()循环遍历我的数组. 说数组(1,2,3,4,5),我只想要2,3,4,5显示并跳过1. 有多种方法可以解决这个问题. 第一个解决方案是使用一个标志布尔值来表示第一个元素,并在你的foreach中继续 $firstElement = true; foreach($array as $key => $val) {
在开发 PHP应用程序时,我想参考使用include文件vs对象(类)的优缺点. 我知道我有一个地方可以受益于这个答案…我有一些我自己的意见,但我期待着听别人. 一个简单的例子: 登录用户只能访问我网站上的某些页面.我有两个实现选择(还有其他的,但我们将其限制在这两个) >创建一个authenticate.php文件并将其包含在每个页面上.它拥有认证的逻辑. >创建具有身份验证功能的用户对象,在每
当声明一个关联数组时,如何处理数组元素的缩进?我看到了许多不同的样式( PHP语法,因为这是我最近一直在做的).这是一个相当挑剔和微不足道的事情,所以如果你对更严肃的追求感兴趣,请继续前进. 1)缩进元素一级: $array = array( 'Foo' => 'Bar', 'Baz' => 'Qux' ); 2)缩进元素两个层次: $array = array(
我一直在寻找一些关于如何布局 PHP代码的指导.我找到了一些很好的参考资料,例如: http://www.dagbladet.no/development/phpcodingstandard/ 和this question在SO. 然而,没有一个是我特别想知道的,这是HTML和PHP的集成.例如: 有一个PHP文件可以开始使用HTML标签,只需要PHP插入需要吗?或者你应该只有一部分包含所有内容的
我已经扩展了一个类别的PSR-2嗅探集.现在检查执行两次 – 即使我的chid类是空的. 为什么?怎么做正确? 编辑: 我现在有一个想法为什么:可能的嗅探器可以从实际调用的标准规则到最高(直接或不包括的)父标准的自动化处理规则.它完全执行它们. (is is so?)OK,但该怎么办?如何覆盖父规则集 – 替换他们的类,但是定制它们,并停用单个规则? 码: [CodeSniffer] /Stand
我创建了一个单元测试: new Callable() { @Override public Object call() throws ..... 我在Eclipse中收到了警告: Callable is a raw type. References to generic type Callable<V> should be parameterized 我应该写代码如下: new
我试图在 Java中获得继承权,并且已经了解到当在子类中重写方法(和隐藏字段)时,仍然可以使用“super”关键字从超类中访问它们. 我想知道的是,’super’关键字是否应该用于非重写方法? 有没有区别(对于非重写方法/非隐藏字段)? 我在下面举了一个例子. public class Vehicle { private int tyreCost; public Vehicle(
我最近正在阅读一些 Java并且遇到了一些新的东西(一个成语?)对我来说是新的:在程序中,具有多个构造函数的类也总是包含一个空白构造函数.例如: public class Genotype { private boolean bits[]; private int rating; private int length; private Random random; publi
我正在使用 Java,但我想这个问题适用于任何语言.我只是想问一下,使用布尔值退出循环是更好的做法,我在循环中切换或只使用break; 例如,我只是在写一个方法来获得国际象棋中女王的有效动作. private static final int[][] DIRS = {{0, 1}, {0, -1}, {1, 0}, {-1, 0}, {1, 1}, {-1, -1}, {-1, 1}, {1, -
通常,我会遇到代码,其中重复使用/滥用Getter方法来获取某些值或将其作为方法参数传递,例如: public class Test { public void someMethod() { if(person.getName() != null && person.getName().equalsIgnoreCase("Einstein")) { meth
我一直在编程一个棋盘游戏的软件版本.到目前为止,我已经写了与游戏板上物理对象相对应的类.我很好地编写程序逻辑,但是我发现许多逻辑类需要访问相同的对象. 起初我正在把适当的对象传递给被调用的方法,但是这变得非常繁琐,特别是当这些方法需要很多对象来执行它们的任务时.为了解决这个问题,我创建了一个初始化和存储我需要的对象的类.这允许我通过调用Assets.dice()来访问任何类的对象. 但是现在我已经
我想使用’default’作为变量名.有没有代码约定(如类 – > clazz),建议我如何命名变量? 我通常会添加一个表示默认值的术语.所以我会使用defaultName或defaultPermission或者可能的defaultValue(只有当上下文的含义是清楚的).
使用long是否会被认为是不好的样式,但是描述性的方法名称如“adjacentLocationsByState()”如果是这样的话,最好将它缩短为类似“adjLocByState”的东西,它肯定更短,但在我看来也不太可读 不要让我思考. 当我读取你的代码时,如果我必须停下来思考方法名称的含义,通常意味着方法名称是错误的.当向方法添加有用的上下文时,更长的方法名称是更可取的.