0

对于开发人员来说,这是一个不寻常的问题,但出于某种原因,我想在这里发布它并希望得到足够的答案。

这是一个简单的例子:

我写了一个java函数来计算两个地理点之间的距离。该函数不超过50行代码。我决定从 ibm 下载一个做同样事情的源代码,但是当我打开它时,我发现它看起来非常复杂,几乎有数千行代码。

什么样的人会写这样的源代码?他们只是非常优秀的程序员吗?我应该使用他们的源代码还是我自己的?

我已经注意到这种事情很多次了,我不时开始怀疑是否只有我不知道如何编程或者我错了?

当你浏览其他人的源代码时,你们有同样的感觉吗?

4

1 回答 1

2

您找到的代码是否进行完全相同的计算?也许它考虑了一些你没有想到的边缘情况,或者使用了具有更好数值稳定性、更低渐近复杂度的算法,或者是为了利用分支预测或 CPU 缓存而编写的。或者它可能只是过度设计。

记住这句话:“对于每一个复杂的问题,都有一个简单、优雅和错误的解决方案。” 如果您正在处理数字软件,即使是像添加一堆数字这样最基本的问题也会变得异常复杂。

于 2013-06-29T16:51:20.063 回答