如果在所选的IDE中启用"查看右边距",则可能默认为80个字符.我倾向于将它改为120,除了它是几年前我公司的标准,没有其他公司告诉我做不同的事情.
我的问题是,是否有任何研究实际上显示80个字符是代码可读性的最佳最大宽度,或者这个值只是"它一直是这样的方式"而没有人真正知道为什么会这样?并且,一行代码的宽度是否应该是编码标准的一部分?
在Eclipse中,在Windows- > Preference- > Java- >下Code Style,您可以为注释和代码定义代码模板,并且可以设置代码格式化程序.
我想知道在Eclipse中是否有可能每次保存源文件时这些设置都会生效.基本上,我没有突出显示所有内容并按Ctrl+ Shift+ F,而是希望Eclipse负责确保我的代码格式正确.
这是可能的吗?你如何设置它?
关于使用自动格式的注意事项: 最好选择"格式编辑行",因为当您重新格式化源控件中尚未正确格式化的整个文件时,合并更改变得非常困难.已经对同事这样做了.
只要我记得我已经避免使用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语句.我认为第一个代码示例非常有用且安全.第二个似乎有点危险.
以下是Sun Java教程的摘录:
一种开关用的工作原理
byte
,short
,char
,和int
原始数据类型.它还与枚举类型(在类和继承讨论)和少数特殊类作品是"包装"某些基本类型:Character
,Byte
,Short
,和Integer
(在简单的数据对象讨论).
必须有一个很好的理由为什么long
不允许原始数据类型.有人知道这是什么吗?
Joshua Bloch的Effective Java描述了一个Builder模式,可用于构建具有多个可选定制参数的对象.他为Builder函数建议的命名约定,"模拟在Ada和Python中找到的命名可选参数",似乎不符合Java的标准命名约定.Java函数往往依赖于使用动词来启动函数,然后依靠基于名词的短语来描述它的作用.Builder类只有该函数定义的变量的名称.
Java标准库中是否有使用Builder模式的API?我想在继续使用之前,将本书中的建议与核心Java库集中的实际实现进行比较.
我正在寻找一些关于在Perforce仓库中创建单个开发分支的方法的优缺点的反馈.如果我理解正确,有两种方法可以解决这个问题.第一种是创建一个Private分支,它是您正在处理的分支的完整副本.分支将完全独立,并完全隔离您的更改与目标分支.
我听过的另一种方法是Sparse分支.它在Practical Perforce中有描述(第9章,第242页).这将创建一个分支,但仅限于您需要编辑的文件.然后,您将目标分支客户端视图与此稀疏开发分支客户端视图重叠.
这两种方法都需要程序员执行一些集成工作,以便在目标分支中进行更改.Private Branch方法似乎需要更多额外的内存才能创建整个分支的副本.但是,Perforce文档声明它在这种情况下执行"惰性副本".
集成还使Perforce能够执行文件的"惰性复制".分支文件时,服务器实际上并不包含两个文件副本 - 它只保存源文件,数据库中的指针记录了发生目标文件分支的事实.懒惰副本使分支成为低开销操作; 服务器不必跟踪文件的重复副本.
这使得看起来Sparse分支方法只是向进程添加了人为错误的可能性,例如,开发人员可能开始处理他们没有添加到Sparse分支的文件,然后意外地将更改更新为打破构建的目标分支.但是,稀疏分支功能存在是有原因的.任何关于它为什么存在以及为什么我应该在一个完整的私有分支上使用它(或反之亦然)的反馈将不胜感激.
我正在查看FileInputStream的Java代码,并对open和close方法的作用感兴趣.这些函数或它们的一部分是本机实现的.你知道我在哪里可以找到这段代码吗?此代码是JDK的开源许可证的一部分吗?
作为集成的一部分,P4V在尝试解析大量文件时一直在喋喋不休.我希望能够在命令行中执行此操作.
这是P4V中的步骤:
有人可以将此转换为具有正确参数的p4命令行命令吗?
Stackoverflow上有几个关于是否有任何研究或研究什么是最佳编码约定/风格的问题.这不是这个问题的关键所在.这个问题是关于是否有任何研究来研究是否有任何优势,生产力增益或其他积极的副作用,以具有组织范围的编码惯例和风格.
我对此有自己的看法,基本上就是制定这样的标准有很大的好处.老实说,我不能不关心我需要使用哪种风格,只要它在我可能需要使用的所有代码中都是一致的.
我只是想知道是否有任何研究支持我的意见或反驳他们.
java ×3
perforce ×2
builder ×1
coding-style ×1
conventions ×1
eclipse ×1
long-integer ×1
openvg ×1
p4v ×1
styles ×1