小编onn*_*odb的帖子

我在哪里可以在Google Chrome浏览器上找到并提交错误报告?

对于想要开发chrome浏览器的开发人员来说,能够查看现有的bug(避免过多的拔毛),并添加新的(以改善这一点)对于开发人员来说非常重要.但我似乎无法找到该项目的错误跟踪.它开源的,对吗?

bug-tracking google-chrome

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

在科学环境中编程的实践?

背景

去年,我在一所大学的物理研究小组实习.在这一组中,我们主要使用LabVIEW编写程序来控制我们的设置,进行数据采集和分析数据.对于前两个目的,这非常正常,但对于数据分析,这是一个真正的痛苦.最重要的是,每个人都大多是自学成才,因此编写的代码通常非常混乱(难怪每个博士都迅速决定从头开始重写所有内容).由于IT部门严格的软件和网络规定,版本控制未知,无法设置.

现在,实际上事情确实令人惊讶,但是自然科学中的人们如何进行软件开发呢?

问题

一些具体问题:

  • 您使用哪些语言/环境来开发科学软件,尤其是数据分析?什么图书馆?(例如,你用什么来绘图?)
  • 对于没有任何重要编程背景的人进行过培训吗?
  • 你有没有像版本控制和错误跟踪的东西?
  • 您将如何尝试为编程创造一个体面的环境,而不会对个别科学家造成太大影响(特别是物理学家是顽固的人!)

到目前为止的答案摘要

到目前为止的答案(或我对它们的解释):( 2008-10-11)

  • 似乎使用最广泛的语言/包:
  • 几乎所有受访者都使用版本控制; 错误跟踪和其他过程不太常见.
  • 软件木工课程是向科学家传授编程和开发技术的好方法.
  • 如何改善事物?
    • 不要强迫人们遵守严格的协议.
    • 自己设置一个环境,并向他人展示好处.帮助他们自己开始使用版本控制,错误跟踪等.
    • 查看其他人的代码可能会有所帮助,但要注意并非每个人都可以理解这一点.

collaboration physics scientific-computing

92
推荐指数
8
解决办法
7247
查看次数

多个SVN存储库或单个公司存储库

我们是否应该为所有公司提供一个单独的存储库,其中包含许多开发项目或每个项目的存储库?关于经验/最佳实践的任何想法?

svn repository

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

如果.svn文件夹已损坏,如何恢复svn控件?

我有几个大的签出,其中.svn文件夹已损坏所以我得到并且错误,"清理无法处理以下路径.."而且我不能再提交或更新该目录中的文件.

我只是删除并再次结帐,但整个目录都在演出.

是否有一个工具可以恢复特定文件夹的.svn文件夹,而无需下载所有内容?

我知道它必须下载该文件夹中的所有文件,以便它可以确定它们是否已被更改..但是具有有效.svn文件夹的子目录应该没问题.

哦..我是TortoiseSVN或Linux命令行的忠实粉丝.

思考?

svn

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

你会如何设计一个好的搜索UI?

我想为我的用户提供一个"高级"搜索引擎.我基本上有很多搜索条件可供选择:

  • 一些非常简单/常见,并将在很大程度上使用(即时间段,项目ID)
  • 有些人不那么主流
  • 有些不会被大量使用,但我仍然想提供它们

总的来说,我有大约30多个标准可供选择

结果是我在网格中显示的数据集.

我在互联网上寻找灵感,甚至谷歌似乎也没有一个很好的高级搜索解决方案.

我过去曾设计过这种工具,虽然用户最终能够非常有效地使用它,但我对结果并不满意.

  • 您是否认为搜索面板应始终可见(即显示在我的结果网格顶部)或以单独的形式提供(这样可以让我为所有控件使用更多位置)

  • 您是否认为最好显示所有搜索条件,或者如果用户希望查看/使用更多条件,则让用户点击"高级"

  • 你会如何组织标准?按使用频率,或者更确切地说按区域(即与用户,地点,时间等有关的标准)

  • 我应该在哪里放置"搜索"按钮?旁边是更常见的搜索控件,还是底部或两者?

更一般地说,您是否有关于如何设计一个漂亮的搜索UI的技巧?在这种"高级"搜索引擎中,您通常会错过哪些功能?

usability user-interface search-engine

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

适用于Mac的Good Git存储库查看器

任何人都可以为Git推荐一个好的存储库查看器,类似于gitk,可以在Mac OS X Leopard上运行吗?(我不是说gitk不起作用)

当然我想要一个原生的Mac应用程序,但是由于我还没有找到,gitk的最佳选择是什么?

我知道gitview,但我期待尽可能多地评估替代方案.

http://sourceforge.net/projects/gitview

git macos version-control

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

绕过(禁用)Delphi对接口的引用计数

对于我正在研究的应用程序架构中的一个特定问题,接口似乎是一个很好的解决方案.具体来说,一些"业务对象"依赖于从实际应用程序中的数据库中提取的一堆设置.让这些业务对象请求接口(通过控制反转),并让中央TDatabaseSettings对象实现这些接口,允许更好的隔离,从而更容易进行单元测试.

然而,在Delphi中,接口似乎带有一个令人不愉快的奖励:引用计数.这意味着,如果我这样做:

type
IMySettings = interface
    function getMySetting: String;
end;

TDatabaseSettings = class(..., IMySettings)
    //...
end;

TMyBusinessObject = class(TInterfacedObject, IMySettings)
    property Settings: IMySettings read FSettings write FSettings;
end;

var
  DatabaseSettings: TDatabaseSettings; 
    // global object (normally placed in a controller somewhere)

//Now, in some function...
O := TMyBusinessObject.Create;
O.Settings := DatabaseSettings; 
// ... do something with O
O.Free;
Run Code Online (Sandbox Code Playgroud)

在最后一行(O.Free)上,我的全局DatabaseSettings对象现在也被释放,因为它的最后一个接口引用(包含在其中O)丢失了!

一种解决方案是DatabaseSettings使用接口存储"全局" 对象; 另一种解决方案是覆盖类的引用计数机制TDatabaseSettings,因此我可以继续将其DatabaseSettings作为普通对象进行管理(这与应用程序的其余部分更加一致).

总而言之,我的问题是:如何禁用特定类的接口引用计数机制?

我已经能够找到一些建议覆盖IInterface …

delphi

10
推荐指数
3
解决办法
5284
查看次数

关系数据库中的"差异"对象

我们的win32应用程序从MySQL关系数据库中的许多表中的数据中组装对象.在这样的对象中,多个修订存储在数据库中.

当存储多个版本的东西时,迟早你会问自己一个问题,如果你可以看到两个版本之间的差异:)所以我的问题是:什么是"差异"两个这样的数据库对象的好方法?

  • 你会在数据库级别进行比较吗?(听起来不是一个好主意:太低级,对架构过于敏感).
  • 你会比较对象吗?
    • 你会编写一个"手动"比较两个对象的属性和字段的函数吗?
    • 你如何存储差异?在一个单独的,通用的"TDiff"对象?
    • 关于如何在用户界面中可视化这些东西的任何一般性建议?

关于您自己的经历的建议或故事非常受欢迎; 谢谢一堆!

用例的额外信息(20090515)

回答安东尼的评论:这个特定的应用程序用于安排由教师团队运营的培训课程.教师的日程安排存储在数据库的各个表中,并包含诸如"她必须在哪一天去哪里","谁是她在团队中的同事"等信息.此信息分布在多个表.

偶尔,我们会"发布"日程安排,以便教师可以在网页上看到它.每个"出版物"都是一个修订版,我们希望能够向用户(以及后来的教师)展示两个出版物之间的变化 - 如果有的话.

希望使场景更有形:)

最后的一些评论

好吧,赏金已经结束,所以我接受了答案.如果以某种方式可以将我的代表中的额外100个分开,并将其提供给其他一些答案,我会毫不犹豫地这样做.你们所有人的帮助都很棒,我非常感激!~Onno 20090519

language-agnostic oop diff

9
推荐指数
2
解决办法
995
查看次数

如何打猎Heisenbug

最近,我们收到了一位用户的错误报告:屏幕上的某些内容在我们的软件中显示不正确.不知何故,我们无法在我们的开发环境中重现这一点(Delphi 2007).

一些经进一步研究后,似乎这个bug 表现在"代码优化"被打开.

在这里有没有人有打猎这样的海森堡的经验?在Delphi软件中通常会导致此类问题的任何特定构造或编码错误?你会开始寻找任何地方吗?

我也将以通常的方式开始调试整个事情,但任何特定于与优化相关的错误(*)的提示都将受到欢迎!

(*)注意:我并不是说错误是由优化器引起的; 我认为代码中某些不稳定的构造更有可能被优化器"推到边缘".

更新

这似乎错误归结到时有没有代码优化的纪录被完全零初始化,并且包含一些随机数据相同的记录时存在优化.在这种情况下,随机数据似乎导致枚举类型包含无效数据(令我惊讶的是!).

该解决方案最终涉及到代码深处某处的单元化本地记录变量.显然,没有优化,记录重置(堆?),并且在启用优化的情况下,记录被通常的垃圾填满.感谢大家的贡献 - 我一路上学到了很多东西!

delphi debugging

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

如何让Git对初学者尽可能安全?

我目前正在为Git和版本控制的编程科学家编写一个课程模块.我试图传达的一个好处是(使用VC)可以保护您免受工作损失.但是当然,众所周知,Git为你提供了充足的机会射击自己.让学生在课程中失去工作是一种耻辱,因为使用了一个本来应该阻止这种情况发生的系统:-)

我的问题:你是否有关于你可以教人们(命令,工作流程,技巧)的建议,以便在使用Git时引导他们摆脱困境

具体来说,这主要适用于具有独立工作流程的人,没有先前的Git经验,可能还有初级程序员.

我所知道的那种技巧的例子:

  • 定期将代码推送到GitHub或BitBucket.另外,请备份:)

  • 远离命令git rebase,直到你知道你在做什么.

  • .git在使用历史记录重写之前备份您的代码目录(包括目录),尤其是当您还在学习时.

谢谢!

git

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