Coding style 您如何决定是使用库还是编写自己的实现
受此启发,这场战争一开始是无辜的,但现在正演变成一场大战 假设你需要一个实用的方法——相当简单,但不是一行。引用的问题是如何将字符串重复X次。您如何决定是使用第三方实现还是编写自己的实现 第三方方法的明显缺点是,您正在向代码中添加依赖项。 但是,如果你正在编写自己的代码,你需要对它进行测试,(也许)对它进行分析,这样你可能会花费更多的时间 我知道这个决定本身是主观的,但你用来做出决定的标准不应该是主观的Coding style 您如何决定是使用库还是编写自己的实现,coding-style,Coding Style,受此启发,这场战争一开始是无辜的,但现在正演变成一场大战 假设你需要一个实用的方法——相当简单,但不是一行。引用的问题是如何将字符串重复X次。您如何决定是使用第三方实现还是编写自己的实现 第三方方法的明显缺点是,您正在向代码中添加依赖项。 但是,如果你正在编写自己的代码,你需要对它进行测试,(也许)对它进行分析,这样你可能会花费更多的时间 我知道这个决定本身是主观的,但你用来做出决定的标准不应该是主观的 那么,您使用什么标准来决定何时编写自己的代码呢?如果它是一个微不足道的函数,那么不值得使用整
那么,您使用什么标准来决定何时编写自己的代码呢?如果它是一个微不足道的函数,那么不值得使用整个库 如果它是一个非平凡的函数,那么它可能是值得的
如果多个函数都可以通过拉入单个库来处理,那么它几乎肯定是值得的。10个问题… +++(使用图书馆)(编写自己的库)
*/乐趣一般决策 在决定使用什么之前,我将创建一个库必须满足的标准列表。这可能包括规模、简单性、集成点、速度、问题复杂性、依赖性、外部约束和许可证。根据具体情况,做出决策所涉及的因素将有所不同 通常,在编写自己的实现之前,我会寻找一个合适的库来解决这个问题。如果我必须写我自己的,我将阅读适当的算法,并从其他实现中寻求想法(例如,使用不同的语言) 如果在完成了下面描述的所有方面之后,我找不到合适的库或源代码,并且我已经进行了搜索(并在合适的论坛上询问),那么我将开发自己的实现 复杂性 如果任务相对简单(例如,多值映射类),则:
- 写一个门面并把它贡献给社区
- 或者找到一个更简单的API
- 只编译必要的源文件
- 或者找一个较小的图书馆
对我来说,这是一个相当简单的答案 如果您需要具有成本效益,那么最好尝试找到一个满足您需要的库/框架。如果您找不到它,那么您将被迫编写它或找到不同的方法 如果你有时间并且觉得很有趣,写一篇。在这一过程中,您将学到很多东西,您可以通过新的代码包回馈开源社区。如果你没有,那就不要。但是如果你找不到,那你还是得写出来;)