(コードをコピーするのではなく) 可能であれば他のライブラリを実装するのが最善であることは理解していますが、コードをコピーした方が便利な場合もあります。
コードをコピーするための正しいエチケットは何ですか? あなたのファイルの先頭、使用されたコードの近くにクレジットがありますか? コードが認識できないほどリファクタリングされた場合はどうなりますか?
(コードをコピーするのではなく) 可能であれば他のライブラリを実装するのが最善であることは理解していますが、コードをコピーした方が便利な場合もあります。
コードをコピーするための正しいエチケットは何ですか? あなたのファイルの先頭、使用されたコードの近くにクレジットがありますか? コードが認識できないほどリファクタリングされた場合はどうなりますか?
GNU GPL は、そのライセンスを通じて取得したコードをどのように使用できるかについて非常に具体的です。(注意してください: 問題のコードのライセンスが GPL ではなく、たとえば LGPL である場合は、別の規則が適用されます。) 基本的に GPL は次のようになります。
コードが見分けがつかないほどリファクタリングされたとしても: 配布したい場合は、これらの条件に従い、変更した部分を相手が理解できるようにする必要があります (見分けがつきません ;-))。これはエチケットではなく、著作権法であることを忘れないでください。
BSD ライセンスなどの他のライセンスには、異なる条件があります。たとえば、BSD ライセンスの下でコードを使用する場合、著作権表示を保持するだけで済みますが、ソース コードの有無にかかわらず、選択したい任意のライセンスの下で喜んでコードを再配布できます。
ライセンスの種類によって異なります。
一般に、ライセンスは、それらがあなたの作品ではなく、誰にとっても無料であるという事実を保護したいと考えています。これには通常、プロジェクトのどこかにライセンスを含める必要があります。
多くのオープン ソース ライセンスとその条項のリストは、http ://www.opensource.org/licenses/alphabetical にあります。
自分が行っていることにコードをコピーすることは、合法的に二次的著作物を作成することになるため、ライセンス要件に従う必要があります。私が調べたすべてのオープン ソース/フリー ソフトウェア ライセンスは、帰属表示を維持することを要求しているため、これは単なるエチケットの問題ではありません。
どこかにクレジットのリストがある場合は、ライセンサーがそのリストにあることを確認する必要があります。それが独自の別のセクション (独自のファイルまたはより大きなファイルの一部) にある場合は、それにフラグを立てて (もちろん) 属性を付けるとよいでしょう。
認識を超えてリファクタリングされた場合、それは依然として派生物であり、他の誰かのコードをまだ使用しているため、法的にも道徳的にも信用を与える必要があります.
もちろん、他のすべての制限に従わなければなりません。あなたはGPLについて言及しました。この場合、製品全体を GPL の下で再配布するか、まったく再配布しないようにする必要があります。コード内でコードを直接使用している限り、コードが見分けがつかないほどリファクタリングされ、ファイル間で分割されているかどうかは問題ではありません。もちろん、コードのさまざまな部分は、GPL と互換性がある限り、追加のライセンスの下にある場合がありますが、再配布するには GPL の要件に従う必要があります。