问题列表 - 第7879页

选择好的标识符名称

好的,所以你可以阅读关于标识符命名的指导原则,直到你脸色发青蓝......骆驼的情况下,pascal的情况下,让它们描述性......但它们无法帮助你真正选择给定的最佳名称应用领域.

最容易选择(恕我直言)是一个或两个单词的名词组:

  • 报名表
  • 雇员
  • WidgetCollection

但并不是每个类都整齐地适合一个名词,所以我看到很多人通过在它们的末尾添加-er将动词变为名词:

  • 客户经理
  • RecordCounter
  • ProcessRunner

我看到这个问题的最大问题是很多时候他们都很模糊......特别是经理.究竟是什么管理?

所以我的问题是你如何为一个班级选择一个好名字?"好",我的意思是内容丰富,毫不含糊.

我知道我知道.几乎每个现代IDE都内置了重构支持,您可以更改名称而不必睁眼,那么重点是什么?一个选择不当的名字会混淆和误导任何偶然发现它的人,直到它被重命名为止,这仍然是一个有效的问题.

有关

命名类的最佳方法是什么?

naming-conventions

8
推荐指数
2
解决办法
1107
查看次数

修改MSBuild ItemGroup元数据

是否可以在声明后修改ItemGroup的元数据.

例如:

  <ItemGroup>
    <SolutionToBuild Include="$(BuildProjectFolderPath)\MySolution.sln">
      <Targets></Targets>
      <Properties></Properties>
    </SolutionToBuild>

  </ItemGroup>

  <Target Name="BuildNumberOverrideTarget">
     <!--Code to get the version number from a file (removed)-->

     <!--Begin Pseudo Code-->
     <CodeToChangeItemGroupMetaData 
           ItemToChange="%(SolutionToBuild.Properties)" 
           Condition ="'%(SolutionToBuild.Identity)' ==
                       '$(BuildProjectFolderPath)\MySolution.sln'"
           NewValue="Version=$(Version)" />
     <!--End Pseudo Code-->         

  </Target>
Run Code Online (Sandbox Code Playgroud)

我希望有一种方法不要求我删除该项目然后重新声明它.

谢谢你的回答.Vaccano

msbuild

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

h1 em和h1> em之间的区别

这两个CSS语句之间有什么区别:

h1 em { color:#ddd; }
Run Code Online (Sandbox Code Playgroud)

h1 > em { color:#ddd; }
Run Code Online (Sandbox Code Playgroud)

据我所知,他们做的完全相同(尽管根据我在W3C上读到的第一种情况,em被认为是'后代',而在第二种情况下它被认为是'孩子',尽管我有不知道这实际上是多么不同).任何人都可以解释这些是如何不同的,为什么你会选择使用一种语法而不是另一种语法.我总是只使用第一种方法,但我不时地在其他人的代码中遇到第二种风格.

css css-selectors

3
推荐指数
1
解决办法
792
查看次数

套接字只接收消息C#的一部分

我有一些接收一系列消息的代码:

byte[] buffer = new byte[10240];
//...
sock.Receive(buffer);
string response = message(buffer);
Console.WriteLine("Message Recieved");
if (!verifyUser(response, sock))
Console.WriteLine("User Invalid");
//...
static private bool verifyUser(string userString, Socket sock)
{
   string[] userData = userString.Split(' ');
   int i = 0;
   while (true)
    {
        if (userData[0].ToUpper() != "USER")
        {
           byte[] buffer = message("WHO");
           sock.Send(buffer);
           userData = userString.Split(' ');
           i++;
           if (i > 4)
           {
                        return false;
                    }
                    continue;
                }
                else
                    break;
            }
Console.WriteLine("Connection recieved from " + userData[1] + " with hash of "/* …
Run Code Online (Sandbox Code Playgroud)

c# sockets

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

NSOperation对象(线程环境)中的非原子属性,何时使用它?

我仍然在使用线程环境中工作NSOperation,我有兴趣了解如果使用nonatomic属性甚至是值得的,如果你是子类NSOperation

如果你defaultQueue的设置为1,那么非原子的额外开销值得吗?如果每个操作队列执行多个线程,可能需要它吗?

感谢您提供解决方案,以便更好地了解线程环境中的此属性.

iphone multithreading cocoa-touch objective-c ios

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

如何防止使用Perl和Apache进行跨站点请求伪造?

有没有我可以使用的透明库或简单的东西,所以我可以防止使用Perl和Apache进行跨站点请求伪造(CSRF)?如何为表单生成令牌并在服务器端验证它们?

apache perl csrf

2
推荐指数
1
解决办法
2674
查看次数

ssh -D <port> <username@server.com>; 但反过来呢?

是否可以设置具有动态端口转发的SSH隧道,如下所示:

ssh -D

但反过来呢?这就是说我想在我的本地机器上启动连接并在那里进行动态端口转发,让我的朋友将他的浏览器连接到隧道的另一端.

如果我的朋友输入上述内容,上面的工作完美,但我不想给他ssh访问我的机器,只是让他代理他的浏览器.

ssh tunneling

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

函数式编程的原理,最佳实践和设计模式

在使用函数式编程语言编写代码时,是否有任何已知的原则,最佳实践和设计模式?

design-patterns functional-programming principles

23
推荐指数
4
解决办法
8627
查看次数

Django与GROUP BY相当于COUNT

我知道Django 1.1有一些新的聚合方法.但是我无法弄清楚以下查询的等价物:

SELECT player_type, COUNT(*) FROM players GROUP BY player_type;
Run Code Online (Sandbox Code Playgroud)

是否可以使用Django 1.1的Model Query API,还是应该使用纯SQL?

python sql django django-queryset django-aggregation

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

我应该写自己的CMS吗?

我打算在今年六月开始我的第一个个人项目:一个关于学生的社区.我想拥有的是一个wiki,其中包含有关大学的信息,一个人们可以讨论的论坛以及一个包含新闻,文章等的博客,它们三者都集成在一起.

现在,要走的路看起来像wordpress + mediawiki +一些论坛软件,但我一直在考虑尝试编写自己的CMS.我有一些RoR和PHP的知识,但当然不能写我自己的CMS,特别是从头开始.

你认为我需要花多少时间才能实现它?我认为/估计我每天可以花3到5个小时来处理它,我希望整个网站在8月底启动并运行(这给了我大约300个小时的工作,因为我还计划花一些时间.什么都不做!:P).

问题是,值得吗?它会帮助我提高编程技巧吗?

php wordpress forum ruby-on-rails content-management-system

7
推荐指数
4
解决办法
3986
查看次数