相关疑难解决方法(0)

C#GUI命名约定的最佳实践?

GUI,无论是用WinForms还是XAML编写,似乎在我看到的项目之间具有最广泛的命名约定.对于一个TextBox人的名字的简单,我已经看到了各种命名约定:

TextBox tbName      // Hungarian notation
TextBox txtName     // Alternative Hungarian
TextBox NameTextBox // Not even camelCase
TextBox nameTextBox // Field after field with TextBox on the end
TextBox TextBoxName // Suggested in an answer...
TextBox textBoxName // Suggested in an answer...
TextBox uxName      // Suggested in an answer...
TextBox name        // Deceptive since you need name.Text to get the real value
TextBox textBox1    // Default name, as bad as you can get
Run Code Online (Sandbox Code Playgroud)

我通常会遵守所有.cs文件的StyleCop规则,并且看到其他人也这样做,但GUI往往会违反这些规则或变化很大.我没有看到任何专门引用GUI元素的Microsoft指南,而不仅仅是普通变量,甚至是在控制台应用程序之外应用的示例.

在GUI中命名元素的最佳实践是什么?

c# user-interface naming-conventions winforms

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

输入deff指针是个好主意吗?

我查看了一些代码并发现惯例是将指针类型转换为

SomeStruct* 
Run Code Online (Sandbox Code Playgroud)

typedef SomeStruct* pSomeStruct;
Run Code Online (Sandbox Code Playgroud)

这有什么好处吗?

c c++ pointers typedef conventions

68
推荐指数
9
解决办法
4万
查看次数

iOS中UITableView中的下拉列表

在此输入图像描述

如何在iOS中创建这种类型的tableview?

在这里,如果我们点击第一行"帐户",然后自动滚动显示在图像中的更多行.如果我们再次点击"帐户",那么该视图将被隐藏.

objective-c uitableview ios swift dropdown

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

是否真的有必要的前缀("匈牙利表示法")?

由于C#是强类型的,我们真的需要为变量添加前缀吗?

例如

iUserAge
iCounter
strUsername
Run Code Online (Sandbox Code Playgroud)

我以前曾经用过前缀,但是前进我看不出任何好处.

c# naming-conventions hungarian-notation

37
推荐指数
7
解决办法
7531
查看次数

33
推荐指数
8
解决办法
9684
查看次数

你对成员变量使用什么样的前缀?

毫无疑问,理解代码必须给成员变量一个前缀,这样才能很容易地将它们与"普通"变量区分开来.

但是你使用什么样的前缀?

我一直在研究我们使用m_作为前缀的项目,在我们仅使用下划线的其他项目上(我个人不喜欢,因为下划线只是不足以说明).

在另一个项目中,我们使用了一个长前缀形式,它也包含变量类型.mul_例如是u nsigned l ong 类型的m ember变量的前缀.

现在让我知道你使用什么样的前缀(请给出一个理由).

编辑:大多数人似乎没有成员变量的特殊前缀代码!这取决于语言吗?根据我的经验,C++代码倾向于使用下划线或m_作为成员变量的前缀.其他语言怎么样?

naming coding-style naming-conventions member prefix

32
推荐指数
9
解决办法
3万
查看次数

PHP 5.3中的接口/抽象类的命名(使用命名空间)

在PHP 5.3之前,我曾经将接口/抽象类命名为:

abstract class Framework_Package_Subpackage_Abstract {}
Framework/Package/Subpackage/Abstract.php

interface Framework_Package_Subpackage_Interface {}
Framework/Package/Subpackage/Interface.php
Run Code Online (Sandbox Code Playgroud)

现在使用PHP 5.3并使用命名空间我不能再使用我的约定了,因为interfaceabstract是保留的关键字.

namespace Framework\Package\Subpackage;
abstract class Abstract {}
Framework/Package/Subpackage/Abstract.php

namespace Framework\Package\Subpackage;
interface Interface {}
Framework/Package/Subpackage/Interface.php
Run Code Online (Sandbox Code Playgroud)

那么,我应该如何命名我的类/接口呢?

php namespaces naming-conventions

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

匈牙利表示法的好例子?

这个问题是寻找匈牙利表示法的好例子,所以我们可以把这些集合汇集在一起​​.

编辑:我认为,匈牙利的类型是不是必要的,我希望更具体的例子,其中它增加了可读性和可维护性,像乔尔给出了他的文章(按我的答案).

naming-conventions hungarian-notation

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

如何确定代码是否在信号处理程序上下文中运行?

我刚刚发现有人正在调用 - 从信号处理程序 - 一个绝对不是我编写的异步信号安全函数.

所以,现在我很好奇:如何避免这种情况再次发生?我希望能够轻松确定我的代码是否在信号处理程序上下文中运行(语言是C,但解决方案不适用于任何语言吗?):

int myfunc( void ) {
    if( in_signal_handler_context() ) { return(-1) }
    // rest of function goes here
    return( 0 );
}
Run Code Online (Sandbox Code Playgroud)

这是在Linux下.希望这不是一个简单的答案,否则我会觉得自己像个白痴.

linux signals handler

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

在解释语言中使用匈牙利表示法前缀是否有意义?

首先,我已经看过以下帖子以避免重复的问题.

/sf/ask/82930221/
为什么我不能使用"匈牙利表示法"?
是否真的有必要的前缀("匈牙利表示法")?
人们在现实世界中使用匈牙利命名约定吗?

现在,所有这些帖子都与C#,C++,Java - 强类型语言相关.
我确实理解在编译之前知道类型时不需要前缀.
不过,我的问题是:

考虑到在运行时之前无法看到对象的类型这一事实,是否值得在基于解释器的语言中使用前缀?

编辑:如果有人可以将此帖子作为社区维基,请执行.我对这篇文章的声誉(或负面声誉)几乎不感兴趣.

python matlab interpreter interpreted-language weak-typing

11
推荐指数
3
解决办法
6058
查看次数