MATLAB社区

MATLAB、社区和更多

得分在科迪

海伦上周写道,科迪是一种新的基于MATLAB的游戏,可以在MATLAB的中央。

我们已经愉快地惊讶于科迪的活动。周一早晨开始,700人创造了130个问题,提供17000多个正确答案(更不用说很多不正确的)。

我们得到很多关于科迪的热情的反馈,我们正在使用构建下一组特性。自然,一些反馈的形式出现的投诉,其中最大的抱怨是这样的(我在这里套用):

“你的评分系统是可怕的。科迪促进不好的编程习惯,鼓励他们写短,神秘的计划。”

这个人在谈论什么?他有一个点吗?

让我们考虑一下科迪得分是如何工作的。想象你是官方科迪得分手。人们把你每分钟几十个解决方案,他们都围着你问金宝搏官方网站“这是一个好吗?这一个怎么样?”不需要你很长的告诉哪个答案是正确的。但是你想提供更多的信息。你想把正确的答案。如何快速和持续排名所有这些答案吗?主观措施优雅和可读性,同时吸引人,很明显。如果我们有一个Elegantometer,我们将使用它。但是我们没有。我们应该使用圈复杂度?还是代码分析器的消息数量?你会用什么指标?

我们决定在代码大小是最坏的选择。它有很长一段路要走。很简单、客观、一致和粒状。“颗粒”,我们的意思是,我们得到一个合理的平稳分布的代码大小对于任何给定的问题,而不是两个或三个巨头统一集群。

现在我们有另一个问题。如果我们同意,代码大小值得测量,我们如何衡量?行代码?坏主意。人们会把一切都放到一行。字符计数?不,因为我们不想惩罚人,给他们的变量添加注释好的描述性的名字。再一次,我们想出了“最不坏”的选择是测量代码的大小在pre-chewed之后,准备好消化的MATLAB翻译。我们数一数解析树中的节点。如何? There’s already a科迪有关此主题的问题。如果你想尝试自己“官方”得分的代码,你可以找到它文件交换

任何度量可以博弈。我们知道短代码并不总是更好的代码,您可以看到通过观察任何混淆编程比赛。但代码就像药。如果你能使用更少的仍然是健康的,你应该。也就是说,在其他条件相同的情况下(说,可读性),较短的代码通常更好。和规模无疑是一个有用的维度指当推理关于大量的项目。这是一幅287年的最近的数据问题的解决方案。金宝搏官方网站

这里的关键是,科迪只是一个游戏。

上周我们已经了解到,这个游戏很擅长激励人们解决实际问题,而且即使他们争相提出“获胜”的解决方案在科迪,他们正在学习宝贵的编程实践。金宝搏官方网站最重要的是,人们似乎享受自己。

因此,尽管有些人告诉我们,得分是不好的,别人告诉我们,他们正在学习很多。你怎么认为?

|

评论

留下你的评论,请点击在这里MathWorks账户登录或创建一个新的。