使用恶意工具进行编码的提示?

时间:2010-08-27 12:27:11

标签: coding-style

我正在使用错误的工具开发应用程序。我不想进入这个的权利或错误 - 平台已被祝福为战略,现在没有任何改变。但是我希望有人可以给我一些如何充分利用这种情况的技巧。

我们使用服务器端语言,我们称之为X,客户端HTML / JS / CSS(在IE6上)。从应用程序开发的角度来看,X是原始的(但对于数据处理来说非常好,这就是我们使用它的原因);它甚至没有用户定义函数的概念,因此尝试以任何方式使应用程序模块化都是一个挑战。想想成千上万行嵌套的if / then / else语句。

我目前的假设是减少代码的意大利面因素是不可能的,真正伟大的文档是我唯一的武器,反对这成为一个完全不受支持的噩梦,最终在TheDailyWTF。

有人有任何其他想法吗?

(我没有提到X语言是什么,因为我希望找到使用缺陷工具的一般问题的答案,而不是X的任何特定策略。)

修改

好吧,对于病态的好奇,X是SAS。我不想让问题集中在函数式宏是函数(它们不是,也不能实现设计模式),或者责怪它 - 考虑到这个特定项目的约束,我实际上同意使用的决定它!我也确信大多数软件都是在令人难以置信的非最佳环境中开发的(破坏的工具,糟糕的管理,过度的遗留负担等等),并且必须有使策略工作的策略。

7 个答案:

答案 0 :(得分:8)

您熟悉Church thesis吗?

如果你不能在Y中解决“A”,但是你可以在Y中模拟Z而Z可以解决“A”,那么根据定义,Y可以解决“A”。

也许你可以编写一些通用的例程,以某种方式使X对手头的问题更有效? X的一种扩展,或者更好的是,在X中实现的little-language

似乎其他人倾向于将“小语言”与文档混为一谈。虽然你可以试着这样做(在这种情况下,我建议你看一下Robodoc)我正在考虑接近Wasabi的方法,即接近 - 即真正使用你的工具X创建一个排序对于X ++甚至是Y的解释器,当然不知道X是什么,当然也不是那个。

答案 1 :(得分:2)

X有评论吗?

在评论中写下你的小语言aka伪代码。

答案 2 :(得分:1)

除了文档之外,选择变量名称和使用它们的约定可能会有所帮助。您也可以在代码中设置一些结构约定,以便有一些规律性。当人们写汇编程序时,好的程序员会产生可读代码。

答案 3 :(得分:1)

嗯,听起来像另一个MUMPS / Intersystems Cache开发人员;)

说真的,您可能想要检查是否有任何可以映射程序流的“X”工具,或者作为文档过程的一部分,可以打开像Visio或其他类似工具的部分,您可以在其中进行操作代码并绘制出它的功能(或多或少)。最难的部分可能是不得不回去盯着那段代码并向后跳,所以你可以做任何事情来记录它/图表/图表它会有所帮助。

答案 4 :(得分:0)

是否可以使用不同的技术,更适合X和客户端之间的问题?

或者,您可以使用更多IF / Then / else语句来构建模块化代码块,这可能有助于维护。

答案 5 :(得分:0)

我发现很难相信你在X中没有任何形式的用户定义函数 - 甚至批处理文件都有函数(种类)

只要你有功能,你就可以使事情至少相当模块化。

答案 6 :(得分:0)

你可以找到你喜欢的语言,并实现通常的“将一些数据打成模板” - 级别的web-app中的东西,然后实现包装器调用'X'来获取它擅长的东西。