相关疑难解决方法(0)

如何分析在Linux上运行的C++代码?

我有一个在Linux上运行的C++应用程序,我正在优化它.如何确定代码的哪些区域运行缓慢?

c++ unix profiling

1732
推荐指数
12
解决办法
49万
查看次数

你最喜欢的"程序员"卡通是什么?

我个人喜欢这个:

替代文字http://www.jeffpalm.com/fox/fox.jpg

PS请不要在没有网站许可的情况下将动画链接到热链接.

language-agnostic

836
推荐指数
124
解决办法
65万
查看次数

你最喜欢的C#扩展方法是什么?(codeplex.com/extensionoverflow)

让我们列出你发布优秀和最喜欢的扩展方法的答案.

要求是必须发布完整代码并提供示例和如何使用它的说明.

基于对该主题的高度关注,我在Codeplex上设置了一个名为extensionoverflow的开源项目.

请标记您的答案并接受将代码放入Codeplex项目中.

请发布完整的源代码而不是链接.

Codeplex新闻:

24.08.2010 Codeplex页面现在在这里:http://extensionoverflow.codeplex.com/

11.11.2008 XmlSerialize/XmlDeserialize现在已实现并且已经过单元测试.

11.11.2008仍有更多开发人员的空间.;-) 现在加入!

11.11.2008第三个贡献者加入了ExtensionOverflow,欢迎来到BKristensen

11.11.2008 FormatWith现在已实现且已经过单元测试.

09.11.2008第二个贡献者加入了ExtensionOverflow.欢迎来到chakrit.

09.11.2008我们需要更多开发人员.;-)

09.11.2008 ThrowIfArgumentIsNull现在在Codeplex上实现单元测试.

.net c# extension-methods open-source

478
推荐指数
57
解决办法
12万
查看次数

为什么可变结构"邪恶"?

在这里讨论了SO之后,我已经多次读过可变结构是"邪恶"的评论(就像这个问题的答案一样).

C#中可变性和结构的实际问题是什么?

c# struct mutable immutability

470
推荐指数
15
解决办法
7万
查看次数

你讨厌自己喜欢的语言有五件事情是什么?

最近Stack Overflow上出现了一群Perl-hate,所以我想我会把" 你讨厌你最喜欢的语言的五件事 "问题带到Stack Overflow.拿你最喜欢的语言告诉我你讨厌的五件事.那些可能是让你烦恼,承认设计缺陷,公认的性能问题或任何其他类别的东西.你只需要讨厌它,它必须是你最喜欢的语言.

不要将它与其他语言进行比较,也不要谈论你已经讨厌过的语言.不要用你最喜欢的语言谈论你喜欢的事情.我只想听听你讨厌但容忍的事情,这样你就可以使用所有其他的东西了,我想听听你希望别人会用的语言.

每当有人试图将他们最喜欢的语言推到我身上时,我就会问这个问题,有时也会作为面试问题.如果有人找不到讨厌他最喜欢的工具的五件事情,他就不会很清楚这一点,无论是提倡它还是使用它来获取大笔资金.他没有在足够多的情况下使用它来充分探索它.他主张将其作为一种文化或宗教,这意味着如果我不选择他喜欢的技术,我就错了.

我不在乎你使用哪种语言.不想使用特定的语言?然后不要.您是否经过尽职调查以做出明智的选择但仍然不使用它?精细.有时候正确的答案是"你有一个强大的编程团队,有很好的实践和很多Bar经验.改变Foo会是愚蠢的."


这也是代码审查的一个很好的问题.真正了解代码库的人会对它有各种各样的建议,那些不太了解代码库的人会有非特定的投诉.我问的问题是"如果你能重新开始这个项目,你会做些什么不同的事情?" 在这个幻想的土地上,用户和程序员会抱怨任何他们不喜欢的东西."我想要一个更好的界面","我想将模型与视图分开","我会使用这个模块而不是另一个","我会重命名这套方法",或者他们真的不喜欢不喜欢目前的情况.这就是我如何处理特定开发人员对代码库的了解程度.这也是关于程序员多少的线索

仇恨并不是弄清楚人们知道多少的唯一方面,但我发现它是一个非常好的维度.他们讨厌的事情也让我知道他们对这个主题的思考程度.

language-agnostic programming-languages

403
推荐指数
62
解决办法
8万
查看次数

如何以毫秒为单位记录方法的执行时间?

有没有办法确定方法需要执行多长时间(以毫秒为单位)?

optimization time objective-c ios

215
推荐指数
8
解决办法
9万
查看次数

gprof 的替代品

还有哪些程序与 gprof 做同样的事情?

profiler profiling gprof

170
推荐指数
6
解决办法
7万
查看次数

在SQL Server数据库中使用单行配置表.馊主意?

在开发购物车应用程序时,我发现我需要根据管理员的偏好和要求保存设置和配置.此信息可以是公司信息,运输帐户ID,PayPal API密钥,通知首选项等.

创建一个表来在关系数据库系统中存储单行似乎非常不合适.

存储此信息的适当方法是什么?

注意:我的DBMS是SQL Server 2008,编程层是用ASP.NET实现的(在C#中).

sql configuration database-design relational-database

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

什么时候功能太长了?

35线,55线,100线,300线?什么时候应该开始分手?我问,因为我有60行(包括评论)的功能,并且正在考虑将它分开.

long_function(){ ... }
Run Code Online (Sandbox Code Playgroud)

成:

small_function_1(){...}
small_function_2(){...}
small_function_3(){...}
Run Code Online (Sandbox Code Playgroud)

这些函数不会在long_function之外使用,因为较小的函数意味着更多的函数调用等.

你什么时候将一个函数拆分成更小的函数?为什么?

  1. 方法应该只做一个逻辑事情(考虑功能)
  2. 你应该能够用一句话来解释这个方法
  3. 它应该适合您的显示器的高度
  4. 避免不必要的开销(注释明显的评论......)
  5. 对于小型逻辑功能,单元测试更容易
  6. 检查部分函数是否可以被其他类或方法重用
  7. 避免过多的类间耦合
  8. 避免深层嵌套的控制结构

谢谢大家的答案,编辑列表并投票给出正确的答案,我会选择那个;)

我现在正在重构这些想法:)

refactoring coding-style function

125
推荐指数
11
解决办法
5万
查看次数

企业中基于Git的源代码控制:建议的工具和实践?

我将git用于个人项目,并认为它很棒.它快速,灵活,功能强大,适用于远程开发.

但现在它的工作是强制性的,坦率地说,我们遇到了问题.

开箱即用,git似乎不适用于大型(20多个开发人员)组织的集中开发,开发人员具有不同的能力和git复杂程度 - 特别是与Perforce或Subversion等其他源控制系统相比,针对那种环境.(是的,我知道,Linus从未打算这样做.)

但是 - 出于政治原因 - 我们仍然坚持使用git,即使它很糟糕我们正试图用它做什么.

以下是我们看到的一些事情:

  • GUI工具还不成熟
  • 使用命令行工具,很容易搞砸合并并删除其他人的更改
  • 除了全局只读或读写权限之外,它不提供每用户存储库权限
  • 如果您拥有存储库的任何部分的权限,那么您可以对存储库的每个部分执行相同的操作,因此您无法执行类似于在其他人无法在中央服务器上创建小组跟踪分支的操作一塌糊涂.
  • 除了"任何事情"或"仁慈的独裁者"之外的工作流程很难鼓励,更不用说强制执行了
  • 目前尚不清楚是否最好使用一个大型存储库(让每个人都搞乱所有东西)或大量的每个组件存储库(这会让人头疼,试图同步版本).
  • 对于多个存储库,还不清楚如何通过从中央存储库中提取来复制其他人拥有的所有源,或者做到像昨天下午4:30那样获取所有内容的事情.

但是,我听说人们在大型开发组织中成功使用git.

如果您处于这种情况 - 或者如果您通常拥有工具,提示和技巧,以便在一个大型组织中使用git变得更容易和更有效率,而某些人不是命令行粉丝 - 我很想听听您有什么建议.

顺便说一句,我已经在LinkedIn上问了这个问题的一个版本,并没有得到真正的答案,但很多"天哪,我也很想知道这一点!"

更新:让我澄清一下......

在我工作的地方,除了git之外我们不能使用任何东西.这不是一个选择.我们坚持下去.我们不能使用mercurial,svn,bitkeeper,Visual Source Safe,ClearCase,PVCS,SCCS,RCS,bazaar,Darcs,monotone,Perforce,Fossil,AccuRev,CVS,甚至是我在1987年使用的Apple的好投影仪.因此,虽然欢迎您讨论其他选项,但如果您不讨论git,您将无法获得赏金.

另外,我正在寻找有关如何在企业中使用git的实用技巧.我在这个问题的顶部列出了我们所遇到的问题清单.同样,欢迎人们讨论理论,但如果你想获得赏金,请给我解决方案.

git enterprise

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