کدام مجوز را در GitHub انتخاب کنید: انواع، مقایسه

Программирование

چگونه مجوز GitHub را انتخاب کنیم و چرا انتخاب اشتباه مهم است؟ GitHub بزرگترین سرویس برای توسعه مشترک پروژه های فناوری اطلاعات و میزبانی بعدی آنها است. با کمک این وب سرویس، تعداد نامحدودی از افراد می توانند به طور هم زمان روی یک پروژه و همچنین کاملاً از هر کجای دنیا کار کنند. همچنین در GitHub یک سیستم مدیریت یا کنترل وجود دارد که به شما امکان می‌دهد تمام تغییرات را در هر زمان توسط توسعه‌دهندگان مشاهده و کنترل کنید و همچنین به شما امکان می‌دهد به حالت قبل از تغییرات برگردید.
کدام مجوز را در GitHub انتخاب کنید: انواع، مقایسهاما به بیان ساده، GitHub به اصطلاح یک شبکه اجتماعی برای برنامه نویسان و توسعه دهندگان است که می توانید آن را پیدا کنید و سپس با استفاده از کدهای توسعه دهندگان دیگر تمرین کنید. همچنین می توانید نمونه کارها خود را در GitHub ذخیره کنید. در مجموع، GitHub سرویسی است که هم برای توسعه دهندگان تازه کار و هم برای برنامه نویسان با تجربه مناسب است. با این حال، کاربران این سرویس ممکن است گاهی اوقات سوالاتی در مورد انتخاب مجوز داشته باشند، زیرا انتخاب آنها در آنجا کاملاً متنوع است.

مجوز GitHub چیست؟

مجوز یک سند ویژه است که توسط فرم دولتی ایجاد شده است و به فرد امکان می دهد در نوع خاصی از فعالیت های کارآفرینی شرکت کند که لزوماً توجه ویژه ای از طرف دولت دارد. اما، اغلب، در عمل، فقط از قراردادهای مجوز مختصر یا موافقت نامه هایی استفاده می شود که صدور مجوزهای حقوق خصوصی را پیش بینی می کند. به طور کلی، مجوز تنها یک مورد را دنبال می کند، اما مهم ترین هدف، توافق در مورد تعهدات و حقوق بین مجوز دهنده و دارنده مجوز است. این وظایف و حقوق می تواند مطلقاً هر چیزی باشد، اما فقط در چارچوب قانون. یک مثال قابل توجه این است که مجوز دهنده ممکن است در هنگام استفاده از اثر توسط دارنده مجوز، از ذکر اجباری نام دارنده حق چاپ استفاده کند. یا مثلا اجازه کپی کردن کار را بدهیداما مطلقاً هرگونه تغییر آن را ممنوع کنید. یا برای استنباط چنین الزاماتی که اثر باید کاملاً با همان شرایط اصلی تولید شود و غیره، نمونه های زیادی از شرایط مختلف مطرح می شود.
کدام مجوز را در GitHub انتخاب کنید: انواع، مقایسهنمونه ای از یکی از مجوزهای آپاچی [/ caption]

اما، همچنین نباید فراموش کنیم که مجوز از حقوق نه تنها مجوز دهنده، بلکه از دارنده مجوز نیز محافظت می کند. از آنجایی که در آن می توانید تمام شرایط استفاده از اثر را به وضوح ببینید و بخوانید و بنابراین نیازی به ترس ندارد که مجوز دهنده به طور ناگهانی حق امتیاز یا هر گونه غرامت دیگری را برای استفاده از کارش مطالبه کند.

اگر از مجوزی که با یک اثر مرتبط است انصراف دهید، حق نسخه‌برداری همچنان مطابق با قوانین قانونی موجود در آن کشور اعمال خواهد شد. به بیان ساده، عدم وجود مجوز به هیچ وجه به این معنی نیست که سایر نویسندگان می توانند هر طور که می خواهند از این پروژه استفاده کنند. همه چیز، کاملاً برعکس، زیرا بدون هیچ مجوز خاصی، یک برنامه نویس به هیچ وجه از حقوقی که توسط قانون اعطا شده است چشم پوشی نمی کند. همچنین مهم است که همیشه به یاد داشته باشید که مجوز بر کلیه حقوق و تعهدات حاکم است. این برای محافظت از صاحب اثر در برابر انتظارات کاربر و آنچه که هر ضمانتی مستلزم آن است. بالاخره هیچکس به هیچ وجه نمی خواهد کد او به دادگاه برود.

کپی رایت چیست

کپی رایت تنها زمانی برای شخص ظاهر می شود که در نتیجه فعالیت فکری، اثری بی نظیر، اما در عین حال مفید خلق کند، به عنوان مثال می توانید نوشتن همان برنامه را در نظر بگیرید. وقتی همه موارد بالا انجام شد، شخص نویسنده می شود و اکنون کاملاً تمام حق چاپ این اثر را دارد. همچنین باید گفت کپی رایت اختصاصی و غیر اختصاصی است. تفاوت آنها در این است که حقوق مالکیت می تواند به هر کسی منتقل شود، اما حقوق مالکیت همیشه در هر شرایطی فقط نزد نویسنده باقی می ماند. بالاخره نویسنده بودن یک حق مسلم و مسلم است.

مجوز منبع باز برای چیست؟

این یک سوال نسبتاً محبوب در بین توسعه دهندگان و برنامه نویسان تازه کار است، زیرا آنها به سادگی نمی دانند که چرا باید مجوزی را به پروژه های خود متصل کنند، زیرا بدون آن پروژه نیز می تواند به راحتی وجود داشته باشد. با این حال، این کاملاً درست نیست، زیرا اگر، برای مثال، برخی از توسعه دهندگان تازه کار کد نسبتاً مهم و مفیدی را نوشته اند، اما با مجوز از آن محافظت نکرده اند، کاربران دیگر سؤالاتی دارند. و دقیقاً به همین دلیل وقتی مشتریان به او مراجعه می‌کنند و می‌خواهند از این کد برای اهداف تجاری خود استفاده کنند، می‌بینند که این کد مجوزی ندارد و به سادگی از آن امتناع می‌کنند. این به این دلیل است که شرکت ها به سادگی از کد بدون مجوز استفاده نخواهند کرد، زیرا نیازی به مشکل با قانون و وکلا ندارند.
کدام مجوز را در GitHub انتخاب کنید: انواع، مقایسهو به همین دلیل است که حتی مفیدترین و راحت ترین پروژه نیز هرگز محقق نخواهد شد. و توسعه‌دهنده‌ای که می‌خواهد این قطعه کد را بگیرد، باید به دنبال یک جایگزین باشد و از آن استفاده کند یا کدی را که قبلاً توسط یک توسعه‌دهنده تازه کار نوشته شده بود، کاملاً بازنویسی کند. به همین دلیل است که بهتر است از قبل مطمئن شوید که برنامه نویس از لایسنس صحیح و مهمتر از همه مناسب استفاده می کند. GitHub را در یک فیلم آموزشی در 15 دقیقه کاوش کنید: https://youtu.be/JfpCicDUMKc

کدام مجوز GitHub برای شرایط خاص مناسب است – چگونه انتخاب کنیم؟

هیچ پاسخ دقیقی برای این سوال وجود ندارد، زیرا انتخاب مجوز فقط به اهداف پروژه و ترجیحات و خواسته های شخصی خود توسعه دهنده بستگی دارد. همانطور که می بینید، تعداد زیادی لایسنس مختلف در GitHub وجود دارد و مهمتر از همه، همه آنها رایگان و در دسترس عموم هستند، به این معنی که هر برنامه نویسی می تواند
مجوز منبع باز را پیدا کند که دقیقاً برای پروژه او مناسب است. اما مهمتر از همه، ما نباید فراموش کنیم که مجوز منبع باز فقط یک کد بدون مجوز نیست.
کدام مجوز را در GitHub انتخاب کنید: انواع، مقایسهخانواده مجوزها در GitHub [/ caption] پس از کمی تحقیق، می توانید همه مجوزهای منبع باز را جمع آوری کرده و آنها را به سه گروه اصلی تقسیم کنید:

  1. به شدت محافظ
  2. دفاع ضعیف
  3. مجاز.

به شدت محافظ

مجوزهای دفاعی قوی اغلب انواعی از GPL هستند. این مجوزها لزوماً به مجوز پروژه و همچنین افشای کدهای منبع نیاز دارند، حتی با وجود نحوه استفاده یا استفاده از هر کد یا پروژه.

دفاع ضعیف

مجوزهای دفاعی ضعیف اغلب انواع Lesser GPL هستند. که در آن تفاوت اصلی با مجوزهای مجاز این است که به سادگی مجوز برنامه تحت مجوز GPL و همچنین ارائه کدهای منبع بدون نقص ضروری است. علاوه بر این، اگر پروژه برنامه نویس دارای یک کتابخانه باشد، یعنی پیوند استاتیک یا پیوند پویا تحت مجوز LGPL، آنگاه با هر یک از مجوزهای پروژه برنامه نویس نیز سازگار خواهد بود.
کدام مجوز را در GitHub انتخاب کنید: انواع، مقایسهجایی که نوع مجوز در GitHub نشان داده شده است [/ caption]

مجاز

تعداد زیادی مجوز مجاز وجود دارد که از جمله محبوب ترین مجوزها می توان به MIT، Apache 2.0 و BSD اشاره کرد. با تغییرات جزئی، این مجوزها امکان استفاده از کد را هم در پروژه های متن باز و هم برای اهداف و پروژه های تجاری دارند. اما، در این مورد، مهم است که به یاد داشته باشید که لازم است نویسندگی برنامه اصلی را مشخص کنید.

سایر مجوزهای محبوب GitHub

علاوه بر این سه گروه از مجوزها، لایسنس های دیگری نیز وجود دارند، به عنوان مثال یکی دیگر از مفیدترین مجوزها GPLv2 با پسوندهای classpath است. این مجوز هم در پروژه های متن باز و هم در پروژه ها و اهداف تجاری قابل استفاده است. محبوب ترین ظاهر آن در Oracle است، این شرکت از GPLv2 با پسوندهای classpath برای مجوز پروژه ها و راه حل های منبع باز خود استفاده می کند. این مجوز بسیار مهم و مفید است، زیرا برای مثال مجوزهای GPL معمولی هرگز نمی توانند بایت کد را کنترل کنند. یعنی توصیف خاصی از فرآیند کامپایل و پیوند دارند که برای سایر زبان های برنامه نویسی تفسیر شده کاملاً نامناسب است، چنین زبان هایی شامل محبوب ترین زبان جاوا می شود.برای چنین مواردی است که مجوز ویژه GPLv2 با پسوندهای classpath منتشر شد. از این گذشته، بسیار واضح و روشن می گوید که کتابخانه ای که تحت این مجوز منتشر شده است، می تواند در پروژه ها و اهداف تجاری کاملاً با هر مجوز دیگری استفاده شود.
کدام مجوز را در GitHub انتخاب کنید: انواع، مقایسهچه چیز دیگری باید در مورد
مجوزهای GitHub بدانید .

اضافه کردن مجوز

پس از انتخاب نهایی لایسنس، تنها چیزی که باقی می ماند این است که آن را به ریشه پروژه اضافه کنید. برای انجام این عمل، باید لایسنس انتخاب شده را در حین ایجاد خود پروژه یا به طور کلی در هر زمان دیگری در زیر ریشه پروژه اضافه کنید. اما حتی در این اقدام، وب سرویس GitHub موفق شد از کاربران خود مراقبت کند و آنها یک راه نسبتاً راحت برای اضافه کردن مجوز نهایی حتی در شروع خود پروژه ایجاد کردند.
کدام مجوز را در GitHub انتخاب کنید: انواع، مقایسهبا این حال، متأسفانه این همه چیز نیست، زیرا توسعه دهنده یا برنامه نویس باید کاملاً تمام وابستگی هایی را که در ایده یا پروژه خود استفاده شده است بررسی کند. یعنی حتی اگر یکی از وابستگی‌ها تحت مجوز GPL منتشر شود، قطعاً کل پروژه توسعه‌دهنده باید با GPL سازگار باشد. برای چنین تأییدی، معمولاً از برنامه ها یا ابزارهای ایجاد شده قبلی برای این کار استفاده می شود. به عنوان مثال، ابزاری برای این https://github.com/pivotal/LicenseFinder وجود دارد:
کدام مجوز را در GitHub انتخاب کنید: انواع، مقایسهمی توان گفت که صدور مجوز یک کار نسبتا وقت گیر است، اما در عین حال یک اقدام ضروری برای زندگی یک پروژه یا هر ایده یک برنامه نویس است. برای انتخاب مجوز مناسب، متأسفانه باید زمان زیادی را صرف کنید، اما برای موفقیت پروژه ارزشش را دارد. بهتر است هنگام نوشتن یک برنامه، انتخاب مجوز را در وهله اول قرار دهید، زیرا با انجام این کار در همان ابتدا، می توانید تمام تلاش خود را در مسیر درست هدایت کنید و برنامه ای بنویسید که برای اکثر افراد موفق و راحت باشد. کاربران

info
Rate author
Add a comment