Veritabanı şemaları hakkında benzer bir soru vardı: Bir rakibin veritabanı şemasını kopyalamak istiyor musunuz? Orada, tüm şemanın kopyalanmasının, bir yargıç tarafından takdir edilen kopyalamanın ölçeğine bağlı olarak muhtemelen bir telif hakkı ihlali olacağını yanıtladı.
Sorunuzun benzer olsa bile, ben tam tersini cevap verecektir: Eğer yapabilirsiniz yöntem imzaları kopyalayın. Neden?
Aslında, yöntem imzaları sağduyudan gelir.
İlk olarak, aşırı bir örnek alırsak, Microsoft adın telif hakkını alamazRandom
ve sözcüğü Random
herhangi bir uygulamada kullanacak herkese dava açamaz .
İkincisi, tam olarak ne yapmaya çalışıyorsunuz? .NET Framework yeniden uygulanıyor mu? Neden? Tekerleği yeniden icat etmeye gerek yok . Nasıl daha iyi, daha sezgisel hale getirileceğini vb. Biliyorsanız, sınıfların ve yöntemlerin daha iyi isimleri, daha iyi bir organizasyon vb. İle geleceksiniz. .NET Framework'ün yapısını başka birine taşımak için kopyalamaya çalışırsanız dil , o zaman konum Microsoft'a doğrudan rakip değil, bu yüzden size dava açmak için ciddi bir nedenleri yoktur (bu söyleniyor, kaynak kodun kendisini kopyalarsanız sizi dava edeceklerdir). Aslında, sizden bile faydalanacaklar: Bu yapıyı diğer çerçevelere kopyalamak sadece .NET Framework'ün başarısını göstermekle kalmaz, aynı zamanda .NET geliştiricilerinin diğer dillerle ve diğer dillerdeki geliştiricilerin öğrenmesini kolaylaştırır .AĞ.
Üçüncü olarak, .NET Framework yöntemlerinin ve sınıflarının adlarını kopyalayacak herkese dava açmaktan daha ciddi şeyleri var .
Şimdi, amacınız tüm .NET Framework'ü kopyalamak ve birçok geliştirici tarafından kullanılacak bir ürün yapmaksa, risk almadan önce bir avukata danışın.
Bir örnek:
Ben tamamen mutsuz .NET Framework dosya yollarındaki Shaming 259 karakter sınırlaması ve dosya düzeyinde kod işlemler kullanmak yetersizlik ile. Bu yüzden kendi File
sınıfımı sadece küçük kısa yollar için değil, herhangi bir yol için beklendiği gibi çalışacak yöntemlerle uyguladım ve işlemleri gerçekleştirdim. İlk versiyonda, ben de yöntemlerin adlarını klonlamak için karar File
ve Directory
sınıfları . Microsoft bunu yaptığım için bana dava açar mı? Şüpheliyim.
Her durumda, ikinci versiyonda yeni bir sözdizimi, geldi new File(string fileName)
ben çok daha sezgisel bulmak, benim için . Yöntemlerin adlarını klonlamak bazen yararlıdır, ancak bunu yapmak için iyi bir nedeniniz olması gerekir.