Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 概述:编程代码指南&;风格_C#_Java_C++_C - Fatal编程技术网

C# 概述:编程代码指南&;风格

C# 概述:编程代码指南&;风格,c#,java,c++,c,C#,Java,C++,C,我知道每种编程语言都有一定的指导方针和风格。我的问题是关于我编写代码的两种语言,这两种语言不是很流行,也没有文档记录 我知道这个话题非常广泛,每个人都有自己独特的做事方式。我想听听某些风格的优点和缺点 为了探索这个问题,假设您正在编写自己的编程语言,基于您过去的经验,什么是处理事情的最佳方式 记住,基于特定的语言,可能会有起伏,所以如果这种语言不重要的话,请想一想。我对编程还不熟悉,所以我想养成让代码可读、易于理解的最佳习惯 有这么多的话题要谈,我会从基本内容开始: 全局变量 它们应该从u开始,

我知道每种编程语言都有一定的指导方针和风格。我的问题是关于我编写代码的两种语言,这两种语言不是很流行,也没有文档记录

我知道这个话题非常广泛,每个人都有自己独特的做事方式。我想听听某些风格的优点和缺点

为了探索这个问题,假设您正在编写自己的编程语言,基于您过去的经验,什么是处理事情的最佳方式

记住,基于特定的语言,可能会有起伏,所以如果这种语言不重要的话,请想一想。我对编程还不熟悉,所以我想养成让代码可读、易于理解的最佳习惯

有这么多的话题要谈,我会从基本内容开始:

全局变量
它们应该从u开始,全部资本化吗

局部变量
它们是否应该以u结尾并始终小写

变量名
如果我定义的是员工的小时工资,它应该是EmployeeHourlyWage,EmployeeHourlyWage吗

变量类型
您是否应该在名称中包含变量的类型,例如,如果我定义了$Hours,并且它存储了一个整数,那么我是否应该将它命名为$Hours\u INT,以便在引用它时知道它是什么类型?谁知道呢,我可能有一个$Hours\u浮动

花括号
括号应该与它们自己对齐吗?例如,单词,还是什么?以下哪一个是最好的、首选的、可读性最好的

IF ($Test) {
 //code
} ELSE {
 //code
}

IF ($Test)
{
 //code
} ELSE {
 //code
}

IF ($Test)
{
 //code
}
ELSE
{
 //code
}
对齐
我不断地排列变量和它们的值,所以我有一个想法。这是一种不好的做法:

// Assuming GUI(TOP, LEFT, HEIGHT, WIDTH)

GUI( 23    , 44   , 245   , 2323    )
GUI( 232   , 4332 , 22    , 6576    )
GUI( 21    , 4    , 1     , 5       )
GUI( 34235 , 13   , 31237 , 4564665 )

// OR

GUI(23,44,245,2323)
GUI(232,4332,22,6576)
GUI(21,4,1,5)
GUI(34235,13,31237,4564665)
缩进
为什么有些程序员使用空格而不是制表符?是否有推荐的空间数量


我知道所有这些都可能是他们自己的问题。我不知道从哪里获得这些知识?我可以花几个小时问你最好的方法是什么。我敢肯定,我修的大学课程越多,我就越会喜欢(或不喜欢)


如果有这样一个网站,所有类型的程序员都在这里谈论/讨论/评价/维基编程的最佳方法和实践,那就太棒了。也将有助于为未来的语言服务,以更好地满足需求。我想如果有一个正确的方法,语言和风格就不会有这么多的变化。我只想知道你的观点和主流是什么,这样我的同事们就知道我在写什么了。

我认为这完全是个人品味的问题

只要有可能,就使用您觉得适合的编码样式

当你在一个团队中工作时,尽量使用相同的编码惯例,除非你想让代码一团糟

如果你真的不知道该选择什么惯例,那就选择一个流行的惯例:不管是谷歌的、理查德·斯泰尔曼的还是其他人的都不重要:只要保持一致就行

我的在过去几年中不断发展,你的也可能如此


以下是我的建议:你应该首先专注于编写好的、可维护的代码;存在修复/更改编码样式的工具。

这些都是非常主观的问题-人们对这类事情大多持不同意见,老实说,这真的没那么重要!:-)


我想说的是,你唯一可能做错事的就是对你所使用的模式不一致。

在你的团队中有一个共同的标准,并在团队中始终如一地遵循。确保其可读性和可理解性。在我们人类阅读所有代码之后:)计算机仍然使用目标代码

遵循这些原则并将其记录在案

只要代码可以理解就足够了

如果一个新加入者能够根据您提供的文档理解您的代码,那么您就擅长于此


我认为这已经足够了。不过这是我的意见……)

对于Java,大多数人似乎遵循一种基于本文档中描述的事实标准的风格:

对于变量名,这意味着使用驼峰大小写,以小写字母开头,例如:
employeeHourlyWage
。对于
static final
值(常量),请使用所有大写字母和下划线分隔的单词,例如:
EMPLOYEE\u HOURLY\u WAGE

不要以下划线开头全局变量,不要以下划线结尾局部变量。不要在变量名称中包含变量类型的缩写(这样做称为)

我更喜欢以下括号样式:

if (condition) {
    // do something
}
else {
    // do something else
}
用4个空格缩进在Java中最常见

我同意其他答案,即一致性比你选择的特定风格更重要。对于Java来说,选择基于上述文档的样式是一个好主意,因为这将是大多数Java程序员所期望的,并且是标准Java库和几乎所有开源Java库中使用的样式


对于C,这可能是一件值得关注的好事情。

以下是我的想法。其他人会不同意,但正如我认为已经指出的那样,最重要的是保持一致

全局变量:我对它们没有特殊的命名约定,主要是因为我尽量避免使用它们。在我的C代码中,我确实使用了静态作用域的变量,即在编译单元中可见的变量,但我也不介意任何命名约定

我倾向于使用Java大写惯例,即实例、变量、成员等使用小写首字母。类、结构、typedef类型使用大写首字母的CamelCase

我避免使用任何类型的前缀和后缀。事实上,我讨厌前缀,因为我必须调试一个C++类,它有大约二十个实例变量,所有这些都开始“MyLPSZ”,因此是ALMOS。