小编Fos*_*tah的帖子

研究最佳代码宽度?

如果在所选的IDE中启用"查看右边距",则可能默认为80个字符.我倾向于将它改为120,除了它是几年前我公司的标准,没有其他公司告诉我做不同的事情.

我的问题是,是否有任何研究实际上显示80个字符是代码可读性的最佳最大宽度,或者这个值只是"它一直是这样的方式"而没有人真正知道为什么会这样?并且,一行代码的宽度是否应该是编码标准的一部分?

code-readability

121
推荐指数
7
解决办法
3万
查看次数

Eclipse:您可以在保存时格式化代码吗?

在Eclipse中,在Windows- > Preference- > Java- >下Code Style,您可以为注释和代码定义代码模板,并且可以设置代码格式化程序.

我想知道在Eclipse中是否有可能每次保存源文件时这些设置都会生效.基本上,我没有突出显示所有内容并按Ctrl+ Shift+ F,而是希望Eclipse负责确保我的代码格式正确.

这是可能的吗?你如何设置它?

关于使用自动格式的注意事项: 最好选择"格式编辑行",因为当您重新格式化源控件中尚未正确格式化的整个文件时,合并更改变得非常困难.已经对同事这样做了.

eclipse code-formatting code-standards

120
推荐指数
3
解决办法
7万
查看次数

Switch Statement Fallthrough ...是否允许?

只要我记得我已经避免使用switch语句.实际上,我不记得它曾经进入我的意识作为一种可能的做事方式,因为它早在我的头脑中钻了它只不过是转换语句中的一个错误.然而,今天我遇到了一些在设计中使用它的代码,这让我立刻想知道社区中的每个人都认为有关switch语句的漏洞.

这是编程语言应该明确不允许的东西(比如C#,但它提供了一种解决方法),还是任何语言的功能都足以留给程序员手中?

编辑: 我没有具体到达我的意思.我经常使用这种类型:

    switch(m_loadAnimSubCt){
        case 0: 
        case 1: 
            // Do something
            break;
        case 2:
        case 3:
        case 4:
            // Do something
            break;
   }
Run Code Online (Sandbox Code Playgroud)

但是,我很担心这样的事情.

   switch(m_loadAnimSubCt){
        case 0: 
        case 1: 
            // Do something but fall through to the other cases 
            // after doing it.
        case 2:
        case 3:
        case 4:
            // Do something else.
            break;
   }
Run Code Online (Sandbox Code Playgroud)

这种方式只要大小写为0,1就会在switch语句中执行所有操作.我已经通过设计看到了这一点,我只是不知道我是否同意以这种方式使用switch语句.我认为第一个代码示例非常有用且安全.第二个似乎有点危险.

coding-style switch-statement

109
推荐指数
9
解决办法
10万
查看次数

为什么你的switch语句数据类型不能长,Java?

以下是Sun Java教程的摘录:

一种开关用的工作原理byte,short,char,和int原始数据类型.它还与枚举类型(在类和继承讨论)和少数特殊类作品是"包装"某些基本类型:Character,Byte,Short,和Integer(在简单的数据对象讨论).

必须有一个很好的理由为什么long不允许原始数据类型.有人知道这是什么吗?

java language-design switch-statement long-integer

74
推荐指数
3
解决办法
5万
查看次数

OpenVG实现?

哪些OpenVG实现存在?

每个人的利弊是什么?

我正在寻找一种高度稳定,快速的渲染实现,仍然在积极维护和开发.

openvg

26
推荐指数
2
解决办法
2万
查看次数

Java API中的Builder模式示例?

Joshua Bloch的Effective Java描述了一个Builder模式,可用于构建具有多个可选定制参数的对象.他为Builder函数建议的命名约定,"模拟在Ada和Python中找到的命名可选参数",似乎不符合Java的标准命名约定.Java函数往往依赖于使用动词来启动函数,然后依靠基于名词的短语来描述它的作用.Builder类只有该函数定义的变量的名称.

Java标准库中是否有使用Builder模式的API?我想在继续使用之前,将本书中的建议与核心Java库集中的实际实现进行比较.

java design-patterns builder

13
推荐指数
4
解决办法
1万
查看次数

Perforce Dev分支 - 稀疏分支与私有分支

我正在寻找一些关于在Perforce仓库中创建单个开发分支的方法的优缺点的反馈.如果我理解正确,有两种方法可以解决这个问题.第一种是创建一个Private分支,它是您正在处理的分支的完整副本.分支将完全独立,并完全隔离您的更改与目标分支.

我听过的另一种方法是Sparse分支.它在Practical Perforce中有描述(第9章,第242页).这将创建一个分支,但仅限于您需要编辑的文件.然后,您将目标分支客户端视图与此稀疏开发分支客户端视图重叠.

这两种方法都需要程序员执行一些集成工作,以便在目标分支中进行更改.Private Branch方法似乎需要更多额外的内存才能创建整个分支的副本.但是,Perforce文档声明它在这种情况下执行"惰性副本".

集成还使Perforce能够执行文件的"惰性复制".分支文件时,服务器实际上并不包含两个文件副本 - 它只保存源文件,数据库中的指针记录了发生目标文件分支的事实.懒惰副本使分支成为低开销操作; 服务器不必跟踪文件的重复副本.

这使得看起来Sparse分支方法只是向进程添加了人为错误的可能性,例如,开发人员可能开始处理他们没有添加到Sparse分支的文件,然后意外地将更改更新为打破构建的目标分支.但是,稀疏分支功能存在是有原因的.任何关于它为什么存在以及为什么我应该在一个完整的私有分支上使用它(或反之亦然)的反馈将不胜感激.

version-control perforce

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

在哪里可以找到JDK中的本机代码?

我正在查看FileInputStream的Java代码,并对open和close方法的作用感兴趣.这些函数或它们的一部分是本机实现的.你知道我在哪里可以找到这段代码吗?此代码是JDK的开源许可证的一部分吗?

java

10
推荐指数
1
解决办法
4292
查看次数

从命令行Perforce自动解析?

作为集成的一部分,P4V在尝试解析大量文件时一直在喋喋不休.我希望能够在命令行中执行此操作.

这是P4V中的步骤:

  1. 右键单击CL.
  2. 选择"解析文件..."将出现一个对话框.
  3. 选择"如果不存在冲突,请合并您的和他们的".
  4. 单击自动.

有人可以将此转换为具有正确参数的p4命令行命令吗?

perforce p4v

10
推荐指数
2
解决办法
7378
查看次数

具有标准编码风格的优势研究

Stackoverflow上有几个关于是否有任何研究或研究什么是最佳编码约定/风格的问题.这不是这个问题的关键所在.这个问题是关于是否有任何研究来研究是否有任何优势,生产力增益或其他积极的副作用,以具有组织范围的编码惯例和风格.

我对此有自己的看法,基本上就是制定这样的标准有很大的好处.老实说,我不能不关心我需要使用哪种风格,只要它在我可能需要使用的所有代码中都是一致的.

我只是想知道是否有任何研究支持我的意见或反驳他们.

styles conventions

10
推荐指数
2
解决办法
2986
查看次数