当我即将编写一个简短的算法时,我首先检查我正在使用的基类库是否在其中实现了算法.如果没有,我经常进行快速谷歌搜索,以查看是否有人之前已经完成(事实上,20次中有19次).
大多数时候,我找到了我需要的确切代码.有时很清楚什么许可证适用于源代码,有时候不是.它可能是GPL,LGPL,BSD或其他.有时候人们会在一些随机的论坛上发布一个代码片段来解决我的问题.
我很清楚,如果代码在某种程度上很重要,我不能重复使用代码(将其复制/粘贴到我的代码中)而不关心许可证.我不清楚的是,我是否可以在不执行许可证违规的情况下复制包含5行左右的代码段.
我可以复制/粘贴5行代码片段而无需关心许可吗?单线怎么样?10行怎么样?我在哪里画线(没有双关语)?
我的第二个问题是,如果我找到一个10行代码片段,它完全符合我的需要,但觉得我无法复制它,因为它是GPL许可的而我的软件不是,我已经记住了如何实现它当我开始实现相同的功能时,我的代码几乎与几分钟前看到的GPL许可代码相同.(换句话说,代码被复制到我的大脑和我的大脑之后,将其复制到我的源代码中).
编辑:我位于瑞典.这让我更加困惑,这是依赖国家的.如果我重新使用一段代码(以我居住的合法方式)并将此源代码出售给一个重新使用代码非法的国家的公司,该怎么办?