是否有可能使编码过程可扩展的解决方案?

时间:2009-06-27 23:02:48

标签: scalable

我们的每个项目都有一些共同点,

浪费时间和精力。

当共同部分很简单时,这很好,但并非总是如此。

有没有人想过这样的问题?

目标是:

当我们进行编码时,我们只做新的,比如说,与以前完成的任何部分不相似的部分。

如果有一个好的解决方案,对许多程序员来说这将是一个很大的缓解!

4 个答案:

答案 0 :(得分:5)

这是任何库,编程语言或设计模式的要点:抽象出已解决的问题,以便不必再次解决。

当然,总会有新的,更复杂的问题需要解决。人们不同意解决问题的正确方法。所以还有很多工作要做。

答案 1 :(得分:4)

是的,我每天都在思考和思考 - 解决方案并不简单,但可以实现:始终尝试将代码中常见的内容分解为可重用的工件。这是解决方案,但它并非偶然发生 - 这是每天的努力。

答案 2 :(得分:3)

有很多解决方案,从gotos到功能,到类,模块或组件,再到库。所有这些都允许您重用代码。

即使是最简单的hello world应用程序也会大量使用它。您不必自己编写所有输出功能,可以使用语言的标准库,以及用于将文本打印到屏幕的OS例程。

例如,即使像C这样的原始语言也提供printf功能来将文本打印到屏幕上,这样您就不必自己编写。

答案 3 :(得分:0)

当然,代码重用是理想的选择,但是有很多实际的障碍阻碍了它们。例如(主要考虑库重用):

  1. 您可能不了解现有功能,或知道它是否符合您的需求。有时,找到可重用功能所需的时间大于自己实现它所需的时间。

  2. 现有代码可能与您的需求略有不同。有时,在您尝试重用代码之前,差异可能并不明显。

  3. 现有代码可能存在只在您的应用程序中使用时才会变得明显的错误(#2的特殊情况)。调试到其他人的代码通常是一个真正的挑战,特别是如果你没有可修改的源代码。

  4. 现有代码可能附带了不适合您整个项目的许可限制。

  5. 现有代码可能会对其他库和代码产生很多依赖性,使可执行文件膨胀,使其更加脆弱,或者限制将其部署到某些环境的能力。

  6. 现有代码可能与您希望与应用程序关联的其他库发生冲突。