Tag: 编码风格

PowerShell推荐的编码风格是什么?

有没有推荐的编码风格如何编写PowerShell脚本? 这不是关于如何构造代码(有多lessfunction,如果使用模块,…)。 这是关于“ 如何编写代码,使其可读 ”。 在编程语言中,有一些推荐的编码风格 (什么缩进 ,如何缩进 – 空格/制表符,在哪里做新行 ,放置花括号 ,…),但我还没有看到任何PowerShell的build议。 我特别感兴趣的是: 如何写参数 function New-XYZItem ( [string] $ItemName , [scriptblock] $definition ) { … (我发现它更像'V1'语法)或者 function New-PSClass { param([string] $ClassName ,[scriptblock] $definition )… 或(为什么要添加空的属性?) function New-PSClass { param([Parameter()][string] $ClassName ,[Parameter()][scriptblock] $definition )… 或者(我在Jaykul的代码中看到的其他格式) function New-PSClass { param( [Parameter()] [string] $ClassName , [Parameter()] [scriptblock] $definition […]

为什么从代码调用事件处理程序是不好的做法?

假设你有一个菜单项和一个button来完成相同的任务。 为什么不好的做法是将任务的代码放到一个控件的action事件中,然后从另一个控件中调用该事件? delphi允许这与vb6一样,但realbasic不,并说你应该把代码放入一个方法,然后调用的菜单和button

传递散列而不是方法参数

我发现在Ruby(通常是dynamictypes语言)中,一个非常常见的做法是传递一个散列,而不是声明具体的方法参数。 例如,不是用参数声明一个方法,而是像这样调用它: def my_method(width, height, show_border) my_method(400, 50, false) 你可以这样做: def my_method(options) my_method({"width" => 400, "height" => 50, "show_border" => false}) 我想知道你的意见。 这是一种好还是坏的做法,我们应该做还是不做? 在什么情况下使用这种做法是有效的,在什么情况下会是危险的?

JavaScript中的x> = x模式

在阅读D3.js的源代码时,我看到了x >= x模式。 如果是为了检测数字中的NaN,为什么不只是isNaN(x)或x == x ? 来源,我遇到它的地方 : d3.min = function(array, f) { var i = -1, n = array.length, a, b; if (arguments.length === 1) { while (++i < n) if ((b = array[i]) != null && b >= b) { a = b; break; } while (++i < n) if ((b = […]

使用不带括号的if语句是不好的做法?

我看过这样的代码: if(statement) do this; else do this; 我不喜欢那个,我觉得这个更干净,更可读 if(statement){ do this; }else{ do this; } 这只是一个偏好的问题,还是会推荐一种方法?

风格指南为C#?

我喜欢c ++使用谷歌的风格指南, 这里发表。 有没有类似的风格指南可用于C#也? 我正在寻找更多的良好实践,以及简单的事情,就像在谷歌风格指南为c + +。

将Python代码转换为符合PEP8的工具

我知道有些工具可以validation你的Python代码是否符合PEP8,例如有一个在线服务和一个python模块 。 但是,我找不到可以将我的Python文件转换为自包含的PEP8有效Python文件的服务或模块。 有谁知道有没有? 我认为这是可行的,因为PEP8是关于代码的外观,对吧?

在vim自动缩进空格与C?

我已经有点被宠坏了使用Eclipse和Java。 我开始使用vim在linux环境下进行C编码,有没有办法让vim自动为块做适当的间距? 所以input一个{下一行将有2个空格缩进,并在该行的返回将保持在相同的缩进,一个}将移回2个空格?

如何打破Python中的链式方法?

我有一行下面的代码(不要责怪命名约定,他们不是我的): subkeyword = Session.query( Subkeyword.subkeyword_id, Subkeyword.subkeyword_word ).filter_by( subkeyword_company_id=self.e_company_id ).filter_by( subkeyword_word=subkeyword_word ).filter_by( subkeyword_active=True ).one() 我不喜欢它的外观(不太可读),但在这种情况下我没有更好的想法将行限制为79个字符。 有没有更好的方法打破它(最好没有反斜杠)?

缩进#defines

我知道#define s等通常不会缩进。 为什么? 目前我正在编写一些代码,其中有#ifdef , #else #ifdef , #else , #else #endif等等的混合。所有这些经常混入正常的C代码中。 #define的非缩进使得它们很难阅读。 缩进代码与非缩进#define s的混合是一场噩梦。 不缩进#define s有什么好处? 如果我缩进,会不会让我变成坏人? 这不是更好吗? #ifdef SDCC #if DEBUGGING == 1 #if defined (pic18f2480) #define FLASH_MEMORY_END 0x3DC0 #elif defined (pic18f2580) #define FLASH_MEMORY_END 0x7DC0 #else #error "Can't set up flash memory end!" #endif #else #if defined (pic18f2480) #define FLASH_MEMORY_END 0x4000 #elif defined […]