正如问题所言...
与数学代码相比,数学公式形式的方程可能更有意义。能够在评论中加上数学运算可以提高项目的可读性。
在.NET中顺便说一句
我只是用多行代码来做:
// Work out average as: sum (values)
// --------------
// count (values)
//
// and distance between points as:
// _______________________
// / 2 2
// d = \/ (x1 - x0) + (y1 - y0)
//
// and the following function:
//
// 3 2
// f(x) = ax + bx + cx + d
完全不需要魔术。您不只是喜欢ASCII艺术吗?
[几个世纪以来,数学一直被认为是人类智力活动的核心要素之一。这是远古时代的科学观察。培生(Pearson)的MathXL答案工具旨在通过在线平台为世界各地的学生提供高级数学知识。如果您在理解MathXL answers及其应用时遇到困难,可以在Google上搜索Pearsons mathXL答案。
跟随@pax的答案,使用ascii-art / plain文本来渲染方程式(顺便说一句,pax):
以下是与数学相关的字符的快捷键的快速列表:
°(度)-Alt + 0176
±(正负)-Alt + 0177
²(平方)-Alt + 0178
³(立方)-Alt + 0179
¼(1/4)-Alt + 0188
1/2(1/2)-Alt + 0189
¾(3/4)-Alt + 0190
[我使用乳胶:如果很简单,无论如何都可以看到它,如果很复杂,可以将其剪切并粘贴到最近的wordpress窗口中,多数情况下它们可以正确解析。
对于简单的注释,我通常求助于LaTeX或Word的语法。但是通常是Word,因为e。 G。 β比\beta
更具可读性。由于我的源文件通常是Unicode,所以这没有问题。另外,我也不喜欢在所有内容周围加上太多括号:-)
有时,我对Javadoc感到厌倦,并使用大量HTML来获取Javadoc中的公式,但这样做无济于事(并且利用了Javadoc only构建为HTML的事实,.NET在这里没有运气) )。
我将Pax的示例写为
// Work out average as:
// ∑(values)/|values|
// and distance between points as:
// d = √( (x_1 - x_0)² + (y_1 - y_0)² )
// and the following function:
// f(x) = ax³ + bx² + cx + d
不过,我很少使用Unicode下标,因为它们并不是每种字体都存在,尤其是不适用于代码的那些:)
[知道,这将是ScottGu在上一个PDC(他编写了一个MEF插件以不同样式显示注释的地方)上显示的Visual Studio扩展性的出色应用程序。
您可以使用MathML编写数学注释,然后打开一个插件来解析标记并将其显示为适当的方程式。
这更多是在空中发表评论,而不是对您问题的真实答案,但我认为我会发布它以使人们思考。也许有一天会做! :)
这是马特(Matt)的留言,但我的声誉太低了。我为LaTex做过类似的事情。它是一个Sandcastle构建组件,它可以解析嵌入在XML注释中的LaTeX并创建添加回文档中的图像。它是mimeTeX的简单包装。您可以在以下位置看到字母代码:http://github.com/cuda/latex-sandcastle/
对我来说,理解一个复杂的数学问题的最简单方法是插入一些实数并逐步进行计算。除非我只是在提醒自己它的功能,否则仅了解它的工作原理是不够的。
使用Nunit测试对于给出如何使用复杂数学问题的实际示例非常理想。也许只是使用注释来指出,有一些单元测试可以遍历以及在哪里可以找到它们。
为了使数学式的ASCII渲染更容易一些,有asciiTeX。 asciiTeX接受LaTeX样式的方程式,并以ASCII艺术形式将其打印出来。
请记住您的听众是什么。此评论对于从现在开始的几个月以及现在(现在和将来)的队友都必须有意义。因此,如果数学符号对你们所有人来说都是完全可以理解的,那可能很好;不过,由于我不知道谁会读该评论,因此我将添加文字表示或描述。