জিপিএল লাইসেন্স সহ "হ্যালো ওয়ার্ল্ড" কোডটি চুরি করতে না করতে আমার কী করতে হবে?


42

প্রকল্পে, আমি একটি ফাইল পেয়েছি math.c, একটি বড় জিপিএল শিরোনাম এবং ...

//------------------------------------------------------------------------------
/// Returns the minimum value between two integers.
/// \param a  First integer to compare.
/// \param b  Second integer to compare.
//------------------------------------------------------------------------------
unsigned int min(unsigned int a, unsigned int b)
{
    if (a < b) {
        return a;
    }
    else {
        return b;
    }
}

ঠিক আছে, শীতল তাই আমার ন্যূনতম মান পেতে হবে এবং ... এই ফাইলটি !? সুতরাং আমার পুরো প্রকল্পটি এটির কারণে খোলার দরকার আছে? নাকি আমার গণিত পুনরুদ্ধার করা দরকার?

আমি বিশ্বাস করি না এটি কেবল উন্মাদ, সুতরাং প্রশ্নটি: আমরা যখন কেবল জিপিএল শিরোনামটি সরাতে পারি?

আমি অবশ্যই একটি বিদঘুটে লোক হতে হবে এবং এটা করতে :

unsigned int min(             unsigned int
JEIOfuihFHIYEFHyigHUEFGEGEJEIOFJOIGHE,
unsigned int hyrthrtRERG            ) {  if
(JEIOfuihFHIYEFHyigHUEFGEGEJEIOFJOIGHE
< hyrthrtRERG            ) {  return JEIOfuihFHIYEFHyigHUEFGEGEJEIOFJOIGHE;  }
else {return hyrthrtRERG            ;    } }

সিরিয়াসলি, তারা কি আমাকে উপরের মতো কোড লিখতে চান?


22
ঠিক আছে, গুগল বনাম ওরাকল এর সাম্প্রতিক ক্ষেত্রে the jury did find that one nine-line function that Google acknowledged copying was infringing( আর্টটেকনিকা থেকে )।
জেনন

5
ছি, সিরিয়াসলি, মিনিট?
মিরসিয়া চিরিয়া 12'12

33
আমি বলব এই প্রশ্নের খুব অস্তিত্ব একটি খারাপ জিনিস প্রমাণ করে - একটি প্রোগ্রামারের চাকরি কম প্রোগ্রামিং, আরও আইনী বিশৃঙ্খলা এবং আমলাতন্ত্র হয়ে উঠেছে
কে.স্টেফ

4
এটি কপি করুন । একটি তুচ্ছ ফাংশন minকপিরাইট দ্বারা আচ্ছাদিত করা হয় না। বিস্তারিত জানার জন্য আমার উত্তর দেখুন।
টনি দি টনি

6
@ লোকি, আপনি এটি এক মাইল মিস করছেন। অ্যালগরিদমগুলি কপিরাইট দ্বারা নয়, পেটেন্ট দ্বারা আচ্ছাদিত। লেখকের মৃত্যুর 70 বছর পরে কপিরাইটের মেয়াদ শেষ হয়, সুতরাং 60 এর দশকে কপিরাইটযুক্ত কাজগুলি এখনও বেশ তাজা। শেষ অবধি, প্রশ্নটি এই কোডটি অনুলিপি করার বিষয়ে, অ্যালগরিদম সম্পর্কে নয়।
অ্যালেক্সিস

উত্তর:


53

এখানে ব্যবহারকারীর অনেকের বিপরীতে, আমি কেবল সুপারিশ করব: এটি অনুলিপি করুন!

কোডটির ফর্ম্যাটিংটি আপনার কোডিং মানের সাথে খাপ খায় এবং আপনার মন্তব্যটি মুছে ফেলা বা পুনর্লিখন করা উচিত তা নিশ্চিত করুন। আপনি কখনই এটি অনুলিপি করেছেন তা কেউ জানতে পারবে না - যখন কোডের একটি অংশটি এই সাধারণ হয়, আপনি সম্ভবত এটি স্ক্র্যাচ থেকে লিখেছিলেন written আপনার কোডিং স্ট্যান্ডার্ডটি যদি কোনওভাবে স্নিপেটে ঠিক একইভাবে দেখতে ফাংশনটির প্রয়োজন হয়, তবে তা হ'ল - যতক্ষণ মনে হয় আপনি এটি স্ক্র্যাচ থেকে লিখেছিলেন কিনা তা দেখতে যতক্ষণ দেখাবে।

এটি সম্পর্কে চিন্তা করুন, এটিই প্রথম (!) প্রথমবারের মতো এই নির্ভুল টুকরোটি লেখা হয়েছে - যখন কোনও কিছু এই তুচ্ছ হয়, তখন এটি অনুলিপি করার কোনও কারণ নেই, যদি আপনি নিজেই এটি লেখার মতো অনুভব করেন না।

এমনকি এই আলোচনা হওয়া আমার কাছে কিছুটা অতিরিক্ত অতিরিক্ত মনে হয় - সত্যিকারের কোনও কাজ শেষ করতে গেলে আমাদের ব্যবহারিক হতে হবে!


5
আসল প্রশ্নগুলি হ'ল তুচ্ছ এবং অপ্রয়োজনীয় মধ্যে বাধা কোথায় এবং একেবারে নিশ্চিত হওয়ার উপায় আছে যে লোকেরা আমার কোডকে একটিরকম কিছু দিয়ে দেখায় না "লট আইটি'র আমার জিপিএল মিন রিলিজেশন!" ... আমি সত্যিই ভয় করি সেই লোকদের> _ <

20
ঠিক আছে, কপিরাইটে মৌলিকতার প্রান্তিক ধারণা রয়েছে । এবং এই জাতীয় একটি সহজ পদ্ধতি খুব কমই কপিরাইটযোগ্য হওয়া উচিত। আইএনএল, যদিও এবং এখতিয়ারগুলি পৃথক হয়। তবুও, প্রতিটি সিএস আন্ডারগ্রাড কমপক্ষে পাঁচবার ঠিক একইভাবে লিখেছেন এমন কিছু খুব ভালভাবে এর অধীনে আসতে পারে।
জয়ে

4
@ নীলু: Let us then say that the programmer wrote his own version of MIN and it ended up looking exactly like the one from math.c - would it then be okay?হ্যাঁ, যদি এটি দুর্ঘটনা হত। "তিনি যদি কেবল এটি অনুলিপি করেন তবে তাতে কী পার্থক্য হবে?" বিটগুলির রঙ আছেAnsuz.sooke.bc.ca/entry/23 এটি বেশিরভাগ কম্পিউটার বিজ্ঞানীরা বুঝতে পারে এমন কিছু নয় - এটি প্রকৃতপক্ষে একটি জটিল বিষয়, তবে এটি এমন একটি বিষয় যা আইন দ্বারা স্বীকৃত। কোনও কিছু আইনী কিনা তা নিয়ে আপনার যদি সন্দেহ হয় তবে আপনার কোনও আইনজীবীর সাথে কথা বলাই ভাল ছিল ।
বাইয়ার্সকে চিহ্নিত করুন

4
@ অ্যালেক্সিস: আমি আপনার বক্তব্যটি বুঝতে পেরেছি, তবে আমি সত্যিই একমত নই - ফলাফল ফলাফলটি যদি একরকম হয় তবে প্রোগ্রামার ব্যতীত অন্য কেউ জানতে পারবেন না যে এটি অনুলিপি থেকে অনুলিপি করা হয়েছে বা লেখা হয়েছিল কিনা। স্পষ্টতই, মিনিটটি কার্যকর করতে কারও খুব কম সমস্যা হওয়া উচিত এবং অন্যটির প্রয়োগের সন্ধানের চেয়ে এটি সম্ভবত কম সময় নেয়। তবে, যদি কোনও প্রোগ্রামার সত্যই এটি অনুলিপি করেন এবং অন্য কেউ জানেন না যে তিনি নিজেই ফাংশনটি রচনা করেন নি, তাহলে কী ক্ষতি হয়েছে? প্রোগ্রামার যদি একরকম 'অপরাধবোধ' অনুভব না করে, উত্তরটি কোনওোটাই নয়। বাকিগুলি কেবল শব্দার্থবিজ্ঞানের।
নীলু

5
@ মার্কবায়ার্স: যখন আমি বলি যে 'প্রমাণ করতে পারে না', তখন আমি বোঝাতে চাইছি যে কোনও অপরাধ এমনকি সংঘটিত হয়েছে তা প্রমাণ করার জন্য কোনও শারীরিক প্রমাণ উপস্থিত নেই - যে অপরাধটি করা হয়েছিল তা পুরোপুরি প্রোগ্রামারের মনে সীমাবদ্ধ। স্পষ্টতই, যদি কিছু মিষ্টি চুরি হয়ে যায় তবে এটি ঘটতে পারে না - এটি পৃথিবীতে শারীরিক প্রভাব ফেলে (ললিপপ - = 1)। যদি 'অপরাধ' আপনার নিজের মনে সীমাবদ্ধ থাকে তবে কে বিচার করবেন যে এটি নৈতিক বা অনৈতিক?
নীলু

18

এটি সরাসরি আপনার প্রশ্নের উত্তর দেয় না, তবে এটি চেষ্টা করুন:

#define min(a,b) ((a) < (b) ? (a) : (b))

আমি এই দ্বারা এই গৌরবময়, জটিল ম্যাক্রোটিকে সর্বজনীন ডোমেনে প্রকাশ করি। যদিও এই কৌশলটি সম্পর্কে আমার একটি কাগজ প্রকাশ করতে হতে পারে।

আপনি যদি ম্যাক্রো-ফোবিক হন তবে এই ইনলাইন সংস্করণটি ব্যবহার করে দেখুন (সত্যই, আপনি যদি একটি স্পার্কে কোডিং না করেন, আপনি minপ্রবেশ / প্রস্থান কোডের মতো সর্বব্যাপী কোনও ফাংশনটি মোড়ানো না করে আপনি প্রচুর সিপিইউ চক্র সংরক্ষণ করবেন ):

inline int min(int a, int b)
{
    return a < b ? a : b;
}

তুচ্ছ স্নিপেটের জন্য কোড লাইসেন্সের বিষয়টি সত্যিই কিছুটা উপদ্রব। একজন আইনজীবীর সাথে চেক করুন, তবে আমি ধরে নিতে প্রলোভিত হয়েছি যে তাদের সত্যিকার অর্থে লাইসেন্স দেওয়া যাবে না এবং / অথবা লাইসেন্সটি বাস্তবে প্রয়োগ করা যাবে না। আপনি যেমন 'শব্দ' শব্দটি কপিরাইট বা ট্রেডমার্ক করতে পারবেন না, তারপরে যারা এটি ব্যবহার করেন তাদের উপর ঝুঁকুন। (ওহো)


1
ওহ, তারা অবশ্যই সেই কোডটি কপিরাইট করতে পারে, তবে অ্যালগরিদমের সরলতার কারণে তারা আদালতে প্রমাণ করতে কঠোরভাবে চাপ দিতে হবে যে আপনি বাম মন্তব্যের মতো বোকা কিছু অক্ষত না করে ইত্যাদি যদি আপনি এটি অনুলিপি করেন তবে এই নিয়মটি নয় যে আপনি করতে পারেন একই কোডটি ব্যবহার করবেন না, নিয়মটি হ'ল আপনি নিজের মস্তিষ্ক ব্যবহার করে এটি লিখে থাকলে এবং কোনও ফ্যাশনে মূলটি অনুলিপি না করে আপনি কেবল এটি করতে পারেন।
রোবট

2
@ স্টেভেনবার্নাপ অবশ্যই মূল কোডটিতেও একই সমস্যা থাকবে: তারা কি প্রমাণ করতে পারে যে তাদের কপিরাইট রয়েছে (যেমন তারা কিছু পূর্ববর্তী বাস্তবায়ন থেকে এটি অনুলিপি করেনি)?
রিচার্ড

19
আপনি যখন চেষ্টা করার চেষ্টা করেন তখন মিনিটের ম্যাক্রো সংস্করণে সমস্যা হয় min(a++,b++)

4
"এটি প্রকাশ করুন ... সর্বজনীন ডোমেইনে" খুব মার্কিন-কেন্দ্রিক। এটি অনেক দেশে একই জিনিসটির অর্থ নয় এবং কিছু দেশে আইনতভাবে সম্ভব নয়।

9
ধন্যবাদ, কিন্তু 2000 থেকে কম্পাইলার, একটি কম্পাইলার trivialities পছন্দ ইনলাইন করতে min
ডেড এমজি

18

দাবি অস্বীকার : আমি আইনজীবী নই। আমার পরামর্শকে নিজের ঝুঁকিতে ব্যবহার করুন।

এই বাস্তবায়ন minহয় কপিরাইটযুক্ত না , শুধুমাত্র আছে যেহেতু এটি লেখার খুব কম যুক্তিসঙ্গত উপায়ে।

আইনী বিশ্বে এটি একীভূত মতবাদ হিসাবে পরিচিত (এটি ধারণা-এক্সপ্রেশন বিভাজন হিসাবেও পরিচিত)। ফাংশনের (কপিরাইটযোগ্য নয়) ধারণাটি (সম্ভাব্য কপিরাইটযোগ্য) অভিব্যক্তির সাথে "একীভূত" হয়েছে বলে জানা গেছে । অতএব, কোডটি কপিরাইটের সাপেক্ষে নয় - আপনি এটি ব্যবহার করতে মুক্ত।

নিরাপদে থাকার জন্য, এটি ভারব্যাটিক অনুলিপি করবেন না । ভেরিয়েবলের জন্য বিভিন্ন নাম ব্যবহার করুন, নিজের ফর্ম্যাটিং প্রয়োগ করুন, শব্দের জন্য মন্তব্যগুলির শব্দটি অনুলিপি করবেন না। এই কোডটির সঠিক আক্ষরিক উপস্থাপনা কপিরাইটের আওতায় আসতে পারে।

মনে রাখবেন যে এটি আপনাকে কেউ মামলা করবে না এমন গ্যারান্টি দেয় না, তবে কমপক্ষে আপনার শক্ত প্রতিরক্ষা থাকবে।

এছাড়াও, মনে রাখবেন যে কোডের কোনও অংশ কপিরাইট দ্বারা সুরক্ষিত না থাকলেও এটি কোনও সফ্টওয়্যার পেটেন্ট দ্বারা আবৃত হতে পারে (এটি আপনার minফাংশনের ক্ষেত্রে নয় )।


2
আপনি ওরাকলকে বলার চেষ্টা করুন!
গর্ডনএম

1
সম্ভবত 9-লাইনের ফাংশনটি তুচ্ছ ছিল না ... আমি কোডটি দেখতে চাই।
টনি পোনি

1
প্রোগ্রামারস.স্ট্যাকেক্সেঞ্জাংআআআআ / 148362/28718 আমার কাছে মনে হচ্ছে এটি সঠিক কোড ass
গর্ডনএম

12

আমি বিএসডি লাইসেন্সের অধীনে নিম্নলিখিত কোডটি প্রকাশ করছি । যেহেতু লাইসেন্সটি অনেক বেশি অনুমোদিত, আপনি যদি আমার প্রয়োগটি ব্যবহার করেন তবে কপিরাইট সংক্রান্ত সমস্যাগুলিতে আপনাকে চালিত করা উচিত নয়।

unsigned int min(unsigned int a, unsigned int b)
{
    return (a > b? b: a);
}

আমি কীভাবে নিশ্চিত হতে পারি যে আপনি সেই জিপিএল কোডটি সিল করে পুনরায় লেখেন নি? : পি (স্রেফ ঠাট্টা করা)
শে

1
তুমি নও. তবে আপনি যদি আমার কোড ব্যবহার করেন তবে আপনি দাবি করতে পারেন আপনি এটি ভাল বিশ্বাসে ব্যবহার করেছেন।
গর্ডনএম

3
ভাইয়েরা, আনন্দ যেমন নতুন যুগে ডুবেছে - এখন আমরা minবদ্ধ-উত্স সফ্টওয়্যারটি খুঁজে পেতে পারি । এছাড়াও, @ শোলি, এখন এটি গর্ডনএমের সমস্যা যে তিনি এটি অনুলিপি করেছেন, না।
স্টেফ

5
আপনি এটি "ক্রিয়েটিভ কমন্স" এর অধীনেও প্রকাশ করছেন কোডটি এখানে আটকানো সম্পর্কে এই পৃষ্ঠার নীচে দেখুন।
মার্টিন ইয়র্ক


11

এটি একটি অযৌক্তিক পরিস্থিতি, আমি সম্মত, তবে আপনি নিজেকে দোষী করেছেন। আপনি যদি স্বত্বাধিকারী কোডটি লিখছেন তবে আপনার জিপিএল-লাইসেন্সযুক্ত উত্স ফাইল, পিরিয়ড পড়া উচিত নয়। আপনার ফাইল সিস্টেম থেকে math.c সরান, ডকুমেন্টেশন রাখুন এবং আপনার প্রয়োজনীয় API এর যে কোনও অংশটি পুনরায় প্রয়োগ করতে দ্বিধা বোধ করবেন না। আপনি যদি কোডটি না পড়েন তবে আপনার নিজের কোডটি একই রকম হয়ে যায় কিনা তা আপনার চিন্তার দরকার নেই।

অপব্যয়ী, আপনি বলেন? জিপিএল ইচ্ছাকৃতভাবে আপনাকে বাস্তুতন্ত্রকে ফিরিয়ে না দিয়ে ফ্রি কোড থেকে উপকার পেতে বাধা দেয়। আপনি যদি এটির শর্তাদি মেনে না নিতে বা না পারাতে পারেন এবং আপনি আর কোনও গণিতের গ্রন্থাগারটি প্রয়োগ করতে চান না, আপনি সর্বদা একটি কিনতে পারেন বা কোনও গ্রহণযোগ্য লাইসেন্স নিয়ে আসে এমন একটি বিনামূল্যে সন্ধান করতে পারেন।

মাইক্রোসফ্টের প্রোগ্রামারদের ওপেন সোর্স কোড পড়ার অনুমতি নেই, সংস্থাটিকে আইনী সমস্যা থেকে রক্ষা করতে। খাঁটি নীতিগত কারণে, আপনি যে কোনও প্রোগ্রামের লাইসেন্স মেনে চলতে চান না এমন কোনও প্রোগ্রামের সাথে আপনার একই কাজ করা উচিত।

আপনার এটি ব্যবহারের অধিকার নেই math.c, তবে কেউ বাস্তবায়নে বাজারকে কোণঠাসা করার চেষ্টা করছেন না min। জিপিএলের লক্ষ্য প্রোগ্রামার "স্বাধীনতা" (এবং শেষ ব্যবহারকারীর স্বাধীনতা) বাড়ানো, এটি সীমাবদ্ধ রাখার নয়। জিএনইউ লাইসেন্স, এফএসএফ এবং ফ্রি সফটওয়্যার মুভমেন্ট রিচার্ড স্টলম্যানের সাথে শুরু হয়েছিল, এবং স্টলম্যান প্রতীকী লিস্পের প্রতিটি নতুন সংস্করণ প্রকাশিত হওয়ার সাথে সাথে পুনরায় বাস্তবায়ন শুরু করেছিল। জিপিএল লাইব্রেরি পুনরায় বাস্তবায়নের জন্য এফএসএফ কারও পিছনে যাবে না (এবং পারে না)।


তবে, এটি সত্যিই অদ্ভুত উদাহরণ। এটি উদাহরণস্বরূপ, এর অর্থ হ'ল এটি অবশ্যই পড়তে হবে এবং এটি অনুসরণ করা উচিত ... তবে আমি যতদূর বুঝতে পেরেছি আমি এখানে জিপিএল লাইসেন্স না নেওয়ার পক্ষে স্বাধীন। সুতরাং আমি জানি কে স্টলম্যান;)

2
শোলি, দুঃখিত তবে আপনি কী বলছেন তা আমার কোনও ধারণা নেই! কি উদাহরণ? (আপনি কি আমাকে জিজ্ঞাসা করছেন স্টলম্যান কে? গুগল এটি। বা কেবল উইকিপিডিয়া পরীক্ষা করুন।)
অ্যালেক্সিস

3
"মাইক্রোসফ্টের প্রোগ্রামারগুলিকে ওপেন সোর্স কোড পড়ার অনুমতি নেই" ওরে আমার, এটি ভয়াবহ - আমি সে সম্পর্কে কোথাও পড়তে পারি? গুগল সহায়তা করছে না।
আমারা

ভাল প্রশ্ন. আমি এটি সম্পর্কে কয়েকটি আয়রন পাইথন ডেভলপমেন্ট ফোরামে পড়েছি, তবে দুর্ভাগ্যক্রমে আমি এখন এটি খুঁজে পাচ্ছি না। সংক্ষিপ্তসার: জিম হুগুনিন ( hugunin.net/microsoft_fewell.html ) উল্লেখ করেছে যে তাদের অজগর বাস্তবায়ন দেখার অনুমতি নেই এবং মজা করে কেউ জিজ্ঞাসা করেছিল যে তাদের নিজস্ব কোড দেখার অনুমতি দেওয়া হচ্ছে (মাইক্রোসফ্ট আয়রন পাইথন উন্মুক্ত উত্স তৈরি করেছিল) । উত্তরটি হ'ল: তারা আয়রন পাইথনের জন্য একটি বিশেষ ব্যতিক্রম করেছিল।
অ্যালেক্সিস

জিপিএল যে সমস্ত লোকদের স্বাধীনতা বৃদ্ধির উদ্দেশ্যে রয়েছে তারা হ'ল প্রোগ্রামটির ব্যবহারকারীরা, বিশেষত প্রোগ্রামার নয়।
জেমস ইয়ংম্যান

7

উত্তর: কেবল লেখকের স্পষ্ট অনুমতি নিয়ে with

এটি কপিরাইটযুক্ত কোড। আপনি এটি লেখকের অনুমতি ব্যতীত অনুলিপি করতে পারবেন না।

আপনাকে নিজের সংস্করণটি লিখতে হবে minবা minকোনও ভিন্ন লাইসেন্স ব্যবহার করে তার বৈকল্পিকটি অনুলিপি করতে হবে।

মনে রাখবেন, কপিরাইট সঙ্গে, এটা কোডটি সুরক্ষিত, এর না অ্যালগরিদম। কপিরাইট আইন পাঠ্য থেকে আসে। এমনকি যদি "math.c" মন্তব্যগুলি ব্যতীত কিছুই না ছিল এবং এর কোনও প্রয়োগযোগ্য কোড নাও ছিল, তবুও এটি কপিরাইটের আওতায় সুরক্ষিত থাকবে।


1
নিজস্ব সংস্করণ বলতে কী বোঝায়? MIN এর আমার OWN সংস্করণ, হাসিখুশি!

2
মনে রাখবেন, আপনি নিজের মালিক নন min, প্রয়োগের ক্ষেত্রে ঘটে যাওয়া অক্ষরের একটি নির্দিষ্ট ক্রমের মালিক আপনি min
রোবটটি

2
আপনি ব্যক্তিগত ব্যবহার ব্যতীত লেখকের অনুমতি ব্যতীত এটিকে একেবারেই পরিবর্তন করতে পারবেন না। আপনাকে এটি স্ক্র্যাচ থেকে পুনরায় লিখতে হবে। এটাই আসল ব্যাপার. মনে রাখবেন যে আপনি যদি কোনও ফাঁকা সম্পাদক হয়ে বসে থাকেন এবং এর সাথে প্রায় অনুরূপ কিছু লিখেছিলেন তবে এটি ঠিক আছে, কারণ আপনি এটি অনুলিপি করেন নি। (ধরে নিচ্ছি আপনি মেমোরি থেকে টাইপ করছেন না।)
রোবটটি

2
না, আমি রসিকতা করছি না। এবং হ্যাঁ, আপনি সম্ভবত এই জাতীয় ক্ষেত্রে এটি এড়াতে পারেন। আপনি এটি সম্পন্ন করেছেন তা প্রমাণ করার জন্য এটি কপিরাইটধারীর হাতে থাকবে। দ্রষ্টব্য যে আমি আপনাকে কেবল আইনটি কী তা বলছি, এটির রক্ষণ নয়।
রোবট

3
কারণ আপনি যদি এই তুচ্ছ জিনিসগুলি পুনরায় না কল্পনা করেন তবে আপনি অন্য কারও কাজ এমনভাবে ব্যবহার করছেন যাতে তারা আপনাকে অনুমতি দেওয়ার অনুমতি দেয়নি। যদি এটি এত তুচ্ছ হয় যে আপনার এটির প্রয়োজন নেই, এটি ব্যবহার করবেন না।
অ্যালেক্সিস

6

গুগল এটি অনুমিতভাবে ছিটকে গেল। এটি একটি অ্যারের জন্য সাধারণ জ্ঞানের মতো মনে হয়।

 908     /**
 909      * Checks that fromIndex and toIndex are in range, and throws an
 910      * appropriate exception if they aren't.
 911      *
 912      * @param arrayLen the length of the array
 913      * @param fromIndex the index of the first element of the range
 914      * @param toIndex the index after the last element of the range
 915      * @throws IllegalArgumentException if fromIndex > toIndex
 916      * @throws ArrayIndexOutOfBoundsException if fromIndex < 0
 917      *         or toIndex > arrayLen
 918      */
 919     private static void rangeCheck(int arrayLen, int fromIndex, int toIndex) {
 920         if (fromIndex > toIndex)
 921             throw new IllegalArgumentException("fromIndex(" + fromIndex +
 922                        ") > toIndex(" + toIndex+")");
 923         if (fromIndex < 0)
 924             throw new ArrayIndexOutOfBoundsException(fromIndex);
 925         if (toIndex > arrayLen)
 926             throw new ArrayIndexOutOfBoundsException(toIndex);
 927     }

যদি এই সব হয়, রায় আপিল উপর নিক্ষেপ করা হবে। তবে ওয়্যার্ডের মতে, বিচারক গুগলকে অন্য 8 টি ফাইল অনুলিপি করে দেখতে পেয়েছেন। Wided.com/wiredenterprise/2012/05/google-oracle-decompile
টনি দি পোনি

5
হ্যাঁ, তবে "সাধারণ জ্ঞান" কপিরাইটের জন্য বার নয়। এটি তারা অনুলিপি থেকে সম্পাদনা করে বা লিখিত হয়েছে কিনা। কিছু "সাধারণ জ্ঞান" পেটেন্টের পরীক্ষা কিনা, কপিরাইট নয়। অন্য কথায়, ওরাকল সেই লেখাটি কপিরাইট করতে পারে তবে তারা সেই অ্যালগরিদমকে পেটেন্ট করতে পারে না।
রোবটটি

এই 9 টি লাইন একীভূত মতবাদের একটি সর্বোত্তম উদাহরণ। অ্যারেতে রেঞ্জ চেক করার জন্য আরও কতগুলি উপায় রয়েছে?
টনি দি টনি

1
@ টনিথপনি, প্রচুর, যদি ফাংশনটি একটি পাঠ্য বার্তা সম্বলিত ব্যতিক্রম ছুঁড়ে।
আভাকার

4
গুগলে এই লেখাটি অনুলিপি করেছেন এমন ব্যক্তি হ'ল সূর্যের সময়ে এটি লিখেছেন এমন ব্যক্তিও কম লোক উল্লেখ করেছেন have প্রোগ্রামারদের বুঝতে হবে স্ট্যালম্যান - পাগল দাড়িওয়ালা চরমপন্থী - ঠিক ছিল । অর্থ, সমস্ত অশুভের মূল এটি লোককে ভুলে যায় যে তারা কেন প্রযুক্তিতে প্রথম স্থানে অংশ নেয়। : - /
হোস্টাইলফোর্কে

5

আমি যাইহোক এই কোডটি ব্যবহার করব না, কারণ কোডটি কী করে মন্তব্যটির সাথে মেলে না। integerকোডটি ব্যবহার করার সময় মন্তব্যটি সম্পর্কে কথা বলে unsigned int। এই ফাংশনটির গভীরতার মধ্যে কোন ত্রুটিগুলি সমাহিত করা হয়েছে কে জানে?

গম্ভীরভাবে, এটিই হ'ল "চাকাটিকে পুনরায় উদ্ভাবন করবেন না" হাস্যকর হয়ে যায় এবং আপনি এটিকে লবণের দানা দিয়ে নিতে ভুলে গিয়েছিলেন। স্ক্র্যাচ থেকে কেবল নিজের সংস্করণটি লিখুন, এটি আপনার কোডের নামকরণের কনভেনশন এবং শৈলীর গাইডের সাথে মেলে (যেমন math_min_uint(x, y)) এটি নিশ্চিত করুন যে এটি (ইউনিট পরীক্ষা বা যাই হোক না কেন) কাজ করে এবং জীবন এবং কপিরাইট সমস্যা ছাড়াই চলে।

ক্রমবর্ধমান অভিজ্ঞতার সাথে, এই তুচ্ছ-স্নিপেটগুলি আপনার বারবার প্রয়োজন কেবল আপনার সরঞ্জাম বাক্সে রয়েছে এবং আপনি খুব বেশি চিন্তা না করে এগুলি পুনরায় লিখবেন বা কেবল নিজের লাইব্রেরি থেকে এগুলি পাবেন get


2

লোকেরা মনে হয় যে কপিরাইট আইনটি আত্মা এবং চিঠি উভয়ই ভুলে গেছে, এর অর্থ হ'ল প্রকৃতভাবে অনুলিপি করা নিষিদ্ধ - নিজেই একই চিন্তাকে প্রকাশ করার কাজ নয়, এমনকি যদি ফলাফল সন্দেহজনকভাবে একই রকম হয়ে যায় তবে not

আপনি যদি জিপিএল কোডটি গ্রহণ করেন, এটিকে সংশোধন করুন, এমন কোনও উপায়ে ব্যবহার করুন যা আপনি যে লাইসেন্সের অধীনে পেয়েছেন তার বিপরীতে, এবং দাবি করেছেন যে এটি কোনও উদ্ভূত কাজ নয়, তবে আপনি আইন ভঙ্গ করছেন। এমনকি আপনি যদি দ্বিতীয় সংস্করণ ব্যবহার করেন - আপনি সমস্ত ভেরিয়েবলের নাম পরিবর্তন করেছেন, এবং ফর্ম্যাটটি পরিবর্তন করেছেন, তবে এটি এখনও মূলটি থেকে উদ্ভূত।

তবে, যদি আপনি নিজের সংস্করণটি লেখেন min, এবং কার্যটির তুচ্ছতার কারণে, কেবলমাত্র এতগুলি উপায় রয়েছে যা আপনি বোধগম্যভাবে এই জাতীয় জিনিস লিখতে পারেন এবং কিছুটা কাকতালীয়ভাবে, আপনার সংস্করণটি একেবারে অভিন্ন হিসাবে শেষ হয় জিপিএল কোডটিতে, তারপরে আপনি কোনও কিছু অনুলিপি করেননি।

গল্পটি আদালতে পাস হবে কিনা, তা আলাদা বিষয় হলেও। যদি কোনও বৃহত্তর বা আরও জটিল কোডের নমুনা অন্য কোথাও প্রদর্শিত হয়, মন্তব্যগুলি, ফর্ম্যাট করতে এবং বানান ত্রুটিগুলি দিয়ে সম্পূর্ণ হয় তবে আপনি যে কোনওটিকে স্বতঃস্ফূর্তভাবে লিখেছেন তা বোঝাতে আপনার পক্ষে খুব বেশি সময় লাগবে, তাই যদি এটি দেখানো যায় যে আপনি আসলটি জানতেন উত্স (যা, আপনি এখানে এটি পোস্ট করেছেন এমন তথ্য দেওয়া মোটামুটি তুচ্ছ হওয়া উচিত)।


1

কোডটি যদি "মিনিট" উদাহরণ হিসাবে সত্যই তুচ্ছ হয় তবে খুব বেশি সম্ভাবনা রয়েছে যে অন্য কোনও ওপেন সোর্স লাইসেন্সের আওতায় ইতিমধ্যে অন্য কেউ একই কার্যকারিতা প্রয়োগ করেছেন।

লাইসেন্সের উপর নির্ভর করে আপনাকে আপনার বদ্ধ উত্স অ্যাপ্লিকেশনটিতে কোড অন্তর্ভুক্ত করার অনুমতি দেওয়া যেতে পারে।


1

এটি 30 সেকেন্ডের মধ্যে নিজে লিখুন। আপনি ঠিক একই অ্যালগরিদম ব্যবহার করতে পারেন। শুধু কপি / পেস্ট করবেন না।

কপিরাইট কেবল একটি ধারণার প্রকাশকে সুরক্ষা দেয়, ধারণাটি নিজেই নয়। আপনি ধারণাটি অনুলিপি সরবরাহ করে সরাসরি এটি ব্যবহার করতে পারেন it

এফডাব্লুআইডাব্লু, আমি সন্দেহ করি যে কোডের এইরকম নগণ্য অংশটি অনুলিপি করা আপনাকে যে কোনও উপায়ে সমস্যার মধ্যে ফেলবে। ক্ষতির পরিমাণ শূন্য হবে এবং এটি সম্ভবত বেশিরভাগ এখতিয়ারে ন্যায্য ব্যবহারের মধ্যে পড়বে। তবে আইনী মামলাগুলি এমন একটি বেদনা যা আমি এটি ঝুঁকি নিতে চাই না।


1

এর জিপিএল কোড হিসাবে এখানে বড় প্রশ্নটি হ'ল আপনি কী আপনার কোডটি বিযুক্ত করার পরিকল্পনা করছেন বা আপনার সফ্টওয়্যারটি বিক্রয় করার পরিকল্পনা করছেন।

আপনি যদি কেবল অভ্যন্তরীণভাবে এটি ব্যবহার করছেন তবে জিপিএল আপনাকে নিজের ইচ্ছামতো করার সম্পূর্ণ স্বাধীনতা দেয়।

আপনি যদি আপনার প্যাকেজ বিতরণ করার পরিকল্পনা করছেন - আপনার প্যাকেজটি যে কোনও জিপিএল উত্স হিসাবে ব্যবহার করেছেন একই শর্তে আপনার প্যাকেজটি জিপিএল করা সবচেয়ে সহজ thing অন্যান্য উপায় আছে তবে এটি জটিল হয়ে ওঠে।

আপনি যদি নিজের সফ্টওয়্যারটি বিক্রি করার পরিকল্পনা করছেন, আপনাকে অবশ্যই যে জিপিএল কোড ব্যবহার করেছেন তার জন্য উত্স কোডটি বিতরণ করতে হবে এবং / অথবা আপনি এটি পেয়েছেন একই জিপিএল লাইসেন্সের অধীনে সংশোধিত হতে হবে।


0

আপনি সি ব্যবহার করছেন ++ এবং না সি পারেন, মান গ্রন্থাগার ব্যবহার করে এই সমস্যা sidestep std::minবা std::maxমধ্যে <algorithm>:

http://www.cplusplus.com/reference/algorithm/min/

এটি আপনাকে সাধারণতা কিনে এবং এটি যে কোনও তুলনামূলক প্রকারের জন্য কাজ করবে। এছাড়াও: ডি-ব্যাগ যখনই দাবি করার চেষ্টা করে যে তারা এটি আবিষ্কার করেছে এবং সফ্টওয়্যার পেটেন্টগুলির আচ্ছাদিত রয়েছে, তারা আইএসও কমিটি নিয়ে দৌড়াবে ... আপনি নয়।

সাধারণ ক্ষেত্রে, কোডটি কে প্রকাশ করেছে তা নোট করুন। কর্পোরেশন, না বুদ্ধিমান ব্যক্তি? যদি এটি বুদ্ধিমান ব্যক্তি হয় (যেমন অনেকগুলি মুক্ত উত্সের ক্ষেত্রে হয়) তবে তাদের কাছে একটি দুর্দান্ত নোট লিখুন এবং অনুমতি নিন। ঠিক আছে বলে তাদের প্রতিক্রিয়া সংরক্ষণ করুন। সমস্যা সমাধান.


-2

সাধারণ ক্ষেত্রে: আরও জটিল কোড যা অবশ্যই কমপক্ষে এবং সর্বাধিক (যা কপিরাইট-সক্ষম হতে পারে বা নাও হতে পারে) এর বিপরীতে কপিরাইট-সক্ষম definitely

তারপরে আপনার কোডটি লাইব্রেরির সাথে সম্মতিতে লাইসেন্স করুন অর্থাৎ জিপিএল! তবে খেয়াল করুন যে এখানে এলজিপিএল লাইব্রেরি রয়েছে (এবং ব্যতিক্রমগুলি সহ জিপিএল) যা আপনার কোডটি আপনি চান লাইসেন্স দেওয়ার সময় তাদের প্রয়োগগুলি ব্যবহার করতে দেয়।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.