Page 1 of 1

对“不要重复制造轮子”这一句话的感触

Posted: 2023-05-07T08:54:19+00:00
by expl
对“不要重复制造轮子”这一句话的感触
现在在大陆开发者圈子里很流行一句话“不要重复制造轮子”,或许一开始说这句话的人仅仅是想让大家利用好已有的库文件来加快开发节奏。
但是慢慢的,这句话变味了,很多没写过代码的人也开始复述这句话,而且多带有训斥的语气...
这里我想给大家讲一个历史,有一个软件叫做 zoneminder ,它有一个版本是依赖于 libavformat.so.59 这个库文件的,但是2023年某月的某一天 ffmpeg 版本更新时把 libavformat.so 的版本升级到了 libavformat.so.60 并且没有保留 libavformat.so.59 当然这种做法很常见,很少有人会愿意被批评在 library 路径中留下一堆过时的文件。于是 zoneminder 的后台中的一个模块 zmdc 就在启动 /dev/video0 是会失败。但是如果 zoneminder 在发布包中包含了它能用到的 libavformat.so.59 中的功能的话这个错误就会被避免。至此,我们作为开发人员应该引以为鉴,不要再被“不要重复制造轮子”这类的没经验的屁话所左右。