标签: code-standards

现代MATLAB代码风格:缺少什么?

我试图采用MATLAB的编码标准,但我不确定我是否选择了正确的编码标准.

据我所知,除了本文档之外,MATLAB编程指南的主题并不多.该文件写得很好,反馈很好.标准版于2002年由Richard Johnson在matlab中心发布,但自那以后一直没有更新.是否有更新的版本或类似文件?(我真的没有想到其他的东西).

背景动机假定

  • 编码标准很重要
  • 尽管自2002年以来MATLAB没有太大变化,但其他语言及其方法也有所改变.人们可以从这些做法中获益.
  • 事实上很多人都在使用MATLAB或Octave编写新代码.虽然,有人会说这种语言实际上已经死了(等等).我宁愿不去那里(让我们把它标记为一个offtopic).

为什么codestyle对我来说不够好

我想在这里总结一些事情.如果你花时间阅读文档,你可能会发现它

  • 试图过于匈牙利语(这是神秘的,在大多数情况下我真的很讨厌这个)
  • 它有太多的快捷方式(更不像前一点那样)
  • Mathworks不支持它(但它实际上可能是件好事,因为MATLAB中的所有好东西都来自用户社区IMO)
  • 没有自动化的质量控制工具尊重这种编码风格(这里我的意思不是像*lint系列中的mlint,而是更像pep8.py for python)

我猜这种工具尚未开发的原因实际上是缺乏广泛接受的编码标准.

我非常感谢您对标准批评或有关更好标准的信息.

您是否有使用此标准的经验?哪部分不适合你?如果您从未使用过正式的编码标准,但确实有一些不适合它的有价值的做法 - 请举例说明.

matlab code-standards

11
推荐指数
1
解决办法
3064
查看次数

如何在WebStorm/PhpStorm中自动为TypeScript文件按字母顺序对输入进行排序?

我使用tslint和默认配置tslint:recommended,我希望尽可能少地适应规则.

某些规则强制执行导入应按字母顺序排列:

src/core/task/TaskMockDecorator.ts[2, 1]: Import sources within a group must be alphabetized.
src/core/task/taskRunner.ts[1, 16]: Named imports must be alphabetized.
Run Code Online (Sandbox Code Playgroud)

我不想自己按字母顺序对输入进行排序.在我禁用linting之前:WebStorm/PhpStorm可以为我做这件事吗?

code-standards phpstorm webstorm typescript tslint

9
推荐指数
2
解决办法
6285
查看次数

docstring max line-length是否与普通的PEP8标准不同?

因此,我正在查看一些代码,并在pylint的帮助下将其提升到PEP 8标准,我注意到如果我使用三重引号用于打印语句,其中文本超过120个字符(我们允许120而不是79)pylint没抱怨.
这是pylint中的一个错误还是它认为它可能是一个注释,并且对行的长度更宽松,或者它不关心你在三重引号中使用字符串有多远,因为你可能想要那样格式化它们?

为清楚起见:是的,在任何超过线路长度的情况下,pylint通常都能正常工作.

python docstring pep8 pylint code-standards

7
推荐指数
1
解决办法
2714
查看次数

在PHP函数/方法中返回的最佳实践

我正在重构一个广泛的代码库加班.从长远来看,我们将在课堂上开发整个系统,但与此同时,我正在利用这个机会来优化我的PHP技能并改进我们在数百个网站中使用的一些遗留代码.

我一直在阅读有关如何最好地从自定义函数返回数据的相互矛盾的文章,通常争论分为两类,即关注最佳技术实践的那些以及关注易于阅读和呈现的那些.

我对从自定义PHP函数返回时您认为最佳实践的观点(详细说明)感兴趣.

作为一个更好的标准,我还没有决定以下哪一个使用这个基本的理论功能;

接近a.

填充返回变量并在函数末尾返回它:

<?php
function theoreticalFunction( $var )
{
    $return = '';
    if( $something > $somethingelse ){
       $return = true;
    }else{
       $return = false;
    }
    return $return;
}
?>
Run Code Online (Sandbox Code Playgroud)

方法b.

返回每个端点:

<?php
function theoreticalFunction( $var )
{
    if( $something > $somethingelse ){
       return true;
    }else{
       return false;
    }
}
?>
Run Code Online (Sandbox Code Playgroud)

可能的重复可能是使用返回true或false的函数的PHP最佳实践什么?然而,尽管我上面的基本例子,这并不仅仅是真或假.

我已经查看了PSR指南,但没有看到任何内容(但我可能已经错过了所以请随时指向PSR参考:)).

扩展原始问题:

根据预期/期望的输出类型,用于返回的方法是否不同?

此方法是否根据过程或面向对象编程方法的使用而改变?正如这个问题所示,面向对象带来了自己的怪癖,以进一步扩展可能的格式/表示选项PHP中返回方法的最佳实践

请尽量清楚你的解释,我感兴趣的是你为什么选择你喜欢的方法,以及如果有的话,你选择了另一种方法.

php methods return function code-standards

7
推荐指数
2
解决办法
2920
查看次数

最佳做法:返回多个值

从纯编码最佳实践的角度来看,将推荐什么作为中型开发人员团队的标准?

返回一个顺序数组:

function get_results($filter) {
    $query = "SELECT SQL_CALC_FOUND_ROWS, * FROM ...";

    $results = ...
    $total = ...

    return array($results, $total);
}
Run Code Online (Sandbox Code Playgroud)

返回一个关联数组:

function get_results($filter) {
    $query = "SELECT SQL_CALC_FOUND_ROWS, * FROM ...";

    $results = ...
    $total = ...

    return array(
        'resuts' => $results, 
        'total' => $total
    );
}
Run Code Online (Sandbox Code Playgroud)

返回单个结果并通过引用分配第二个结果(?!):

function get_results($filter, &$count = null) {
    $query = "SELECT SQL_CALC_FOUND_ROWS, * FROM ...";

    $results = ...
    $total = ...

    $count = $total;
    return $results;
}
Run Code Online (Sandbox Code Playgroud)

随意建议其他方法。

php methods coding-style function code-standards

6
推荐指数
1
解决办法
2376
查看次数

在Swift中声明一个类之外的私有常量

在Swift中创建私有常量时,可以在类中声明它们,

final class SomeClass: NSObject { 

    private let someFloat:CGFloat = 12
}
Run Code Online (Sandbox Code Playgroud)

以及课外.

private let someFloat:CGFloat = 12

final class SomeClass: NSObject {  }
Run Code Online (Sandbox Code Playgroud)

当在类之外时,范围是创建常量的文件.使用一种方法与另一种方法之间是否有任何其他差异,是否有人对最佳实践有意见?

constants code-standards swift

6
推荐指数
1
解决办法
797
查看次数

intellij ESlint + JavaScript标准样式+代码样式方案不一致

我已经完成以下工作:

  1. 全局安装了JavaScript标准样式
  2. 在IntelliJ ESLint设置中设置标准。
  3. 将JavaScript代码样式设置Set From-> Predefined Style-> JavaScript Standard Style

开始编码(例如React Native)时,ESlint中加载的代码样式与IntelliJ中使用的代码样式之间存在不一致,例如:

在关闭方括号react / jsx-tag-spacing之前需要一个空格

使用IntelliJ自动格式时,此问题尚未解决。

任何想法如何解决此矛盾?

  • IntelliJ Idea Ultimate 2017.2.4版本
  • 最新的JavaScript代码样式。

javascript coding-style intellij-idea code-standards react-native

6
推荐指数
1
解决办法
527
查看次数

PHP(Nette框架)自动编码标准检查

我想有一些类型的自动检查PHP Nette Framework的编码标准是否有这样的?Eclipse,Netbeans的独立应用程序或插件...例如,要检查Java代码,我使用Checkstyle.或者Checkstyle还能检查Nette吗?

php checkstyle code-standards nette

5
推荐指数
2
解决办法
455
查看次数

有没有办法将 Javadoc 文档注释附加到 Groovy 脚本?

对于 Groovy 或 Java 类或方法,我通常会在文档注释(也称为 Javadoc 注释)中包含任何 API 级文档,而不是常规注释。添加有关 Groovy 脚本的此类注释的类似方法是什么?

我个人不太关心 Javadoc 工具是否获取文档。然而,有关 Groovy 脚本用途的文档在概念上似乎类似于类的文档注释;因此,我直觉地希望它们出现在文档评论中。如果我的直觉是错误的并且文档标签不是注释 Groovy 脚本意图的标准方式,那么记录脚本用途的首选方法是什么?

groovy javadoc code-documentation code-standards groovydoc

5
推荐指数
1
解决办法
3441
查看次数

php代码嗅探器什么都不返回……我的代码是标准的吗?

我有一个 Laravel 应用程序(用 composer 创建),我试图确保它符合 PHP 编码标准(级别 PSR-1)。我跑:

$ phpcs --standard=PSR1 my_app/
Run Code Online (Sandbox Code Playgroud)

并在几秒钟内返回一个新的、空的、随时可用的命令行:

$
Run Code Online (Sandbox Code Playgroud)

这是否意味着我的代码符合 PSR-1 中的所有要求和标准?它只做同样的事情:

$ phpcs my_app/
$ phpcs --standard=PEAR my_app/
$ phpcs --standard=PSR1 --report=summary lauras_app/
Run Code Online (Sandbox Code Playgroud)

我只想确保如果命令什么都不返回,那意味着我的代码是标准的。谢谢!

php pear code-standards phpcodesniffer psr-1

5
推荐指数
1
解决办法
1401
查看次数