رفتن به مطلب
مرجع رسمی سی‌پلاس‌پلاس ایران

جستجو در تالارهای گفتگو

در حال نمایش نتایج برای برچسب های 'مجوز‌ها'.



تنظیمات بیشتر جستجو

  • جستجو بر اساس برچسب

    برچسب ها را با , از یکدیگر جدا نمایید.
  • جستجو بر اساس نویسنده

نوع محتوا


آی‌او‌استریم

چیزی برای نمایش وجود ندارد

چیزی برای نمایش وجود ندارد

تالارهای گفتگو

  • انجمن‌های آی او استریم
    • اخبار و اعلامیه‌های سایت
    • اسناد و قوانین مرجع
    • جلسات و دوره‌همی‌های آنلاین
    • پادکست‌های آموزشی
    • معرفی محصولات نوشته شده‌ بومی
    • مرکز نظرسنجی
    • مقالات و اسناد مشاوره‌ای
    • مرکز چالش برانگیز برنامه‌نویسان
    • رمز‌های موفقیت
    • ابزار‌ها و نرم‌افزارهای کاربردی برنامه‌نویسان حرفه‌ای
  • برنامه نویسی در C و ‏++C
    • سوالات عامیانه در رابطه با ++C مدرن
    • کتابخانه‌های استاندارد STL
    • کتابخانه بوست (Boost)
    • کتابخانه کیوت (Qt)
    • کتابخانه‌‌ی SDL
    • کتابخانه‌های گرافیکی Vulkan, OpenGL, Metal, Direct3D
    • کتابخانه‌‌ی OpenCV
    • کتابخانه‌‌ی Cuda
    • کتابخانه‌‌ی OpenMP
    • کتابخانه‌‌ی OpenCL
    • کتابخانه‌های دیگر
    • کامپایلر‌ها
    • کتابخانهٔ SFML
    • ابزار‌ها
  • استارتاپی و کسب‌و‌کار
    • استارتاپ‌ها
    • سرمایه گذاری
    • شتاب دهنده‌ها
    • پارک‌های علم و فناوری و مراکز رشد
    • مصاحبه با استارت‌آپ‌ها
    • قوانین حقوقی
    • داستان‌های موفقیت
    • کارآفرینان و متخصصین
    • مشاوره اجرای کسب‌وکار
    • اخبار حوزه‌ی استارتا‌پی
    • آگهی‌های استخدامی
  • ابزار‌های ساخت و ساز
    • ابزار CMake
    • ابزار QMake
    • ابزار Qbs
    • ابزار Make و Autotools
  • طراحی و توسعه وب
  • طراحی و توسعه وب اپلیکیشن‌ها
    • طراحی و توسعه در Angular
    • طراحی و توسعه در React.JS
    • طراحی و توسعه در Vue.JS
  • طراحی و توسعه موبایل و اِمبِد‌ها و تلوزیون‌ها
    • برنامه نویسی تحت محصولات اپل
    • برنامه نویسی تحت محصولات گوگل
    • طراحی و توسعه تحت محصولات دیگر
  • برنامه‌نویسی سطح پایین و سیستم عامل‌ها
    • سیستم عامل‌های آزاد
    • سیستم عامل‌های تجاری
    • مباحث آموزشی مرتبط با سیستم‌عامل
  • شبکه و اینترنت
    • مباحث و منابع آموزشي
    • سوالات و مشکلات
  • بانک‌های اطلاعاتی
  • برنامه نویسی تحت محصولات اپل
  • برنامه نویسی تحت محصولات مایکروسافت
  • طراحی و توسعه تجربه کاربری (UX) و رابط کاربری (UI)
  • سوالات و مباحث عامیانه
  • سطل آشغال

Product Groups

  • کتاب‌ها و مقالات آموزشی

تقویم ها

دسته ها

  • علمی
  • استارتاپی
  • برنامه‌نویسی
    • زبان‌های برنامه نویسی
    • معماری‌ها
  • کامپایلر و مفسر
  • محیط‌های توسعه
  • طراحی و توسعه‌ی وب
  • مجوز‌های نرم‌افزاری
  • فناوری‌ها
    • پردازش تصویر
    • اینترنت اشیاء
    • پردازش ابری (Cloud Computing)
    • چند سکویی (Cross-Platform)
    • بیگ دیتا (Big Data)
    • هوش مصنوعی (AI)
    • سخت افزار
    • نرم‌افزار و اپلیکیشن
    • اینترنت و شبکه
    • رمزنگاری
    • امبد‌ها (Embedded)
  • طراحی
    • تجربه کاربری
    • رابط کاربری

دسته ها

  • عمومی

دسته ها

  • عمومی
  • گرافیکی
  • شبکه و ارتباطات

دسته ها

  • کامپایلر‌ها
  • محیط‌های توسعه
  • کتابخانه‌ها
  • ماژول‌ها و پلاگین‌ها
  • محصولات بومی
  • کتاب‌ها و مقالات
  • زبان‌ها و ابزار‌ها
  • طراحی و گرافیک

جستجو در ...

نمایش نتایجی که شامل ...


تاریخ ایجاد

  • شروع

    پایان


آخرین بروزرسانی

  • شروع

    پایان


فیلتر بر اساس تعداد ...

تاریخ عضویت

  • شروع

    پایان


گروه


درباره من


شماره تلفن همراه


شناسه گیت‌هاب


شناسه لینکدین


شناسه پیام رسان


شهر


آدرس پستی

2 نتیجه پیدا شد

  1. کامبیز اسدزاده

    انواع مجوزهای منبع‌باز (Open Source)

    با توجه به اینکه اکثر طراحان و توسعه دهندگان نرم‌افزارها دید روشنی از تفاوت گواهینامه‌های متعدد متن باز ندارند در این مقاله ما به ویژگی‌ها و شرایط هر یک از آن‌ها اشاره کرده‌ایم که به شما یک شفاف سازی سریع در رابطه با اینکه کدام مجوز مناسب محصول شما به صورت منبع‌باز خواهد بود را ارائه می‌کند. قبل از هر چیز در زیر لیستی از انواع مجوز‌های منبع باز را در نظر بگیرید: Apache License 2.0 BSD 3-Clause “New” or “Revised” license BSD 2-Clause “Simplified” or “FreeBSD” license GNU General Public License (GPL) v3.0 GNU Library or “Lesser” General Public License (LGPL) MIT license Mozilla Public License 2.0 Creative Commons License مجوز APACHE LICENSE حقوق موجود در مجوز آپاچی نسخه ۲.۰ را می‌توان برای مقوله کپی‌ رایت‌ یا پتنت استفاده کرد (البته برخی مجوزها را تنها می‌توان روی کپی‌ رایت اعمال کرد و برای پتنت‌ها مورد استفاده قرار نمی‌گیرند). به طور کلی، بخشی از جزئیات مجوز آپاچی به شرح زیر است: حقوق هیچ‌گاه به اتمام نمی‌رسد:‌ وقتی حقوقی تحت مجوز آپاچی ارائه شود، دیگر نیازی به تکرار مجوز برای آن نیست و همیشه می‌توانید تحت همین مجوز از آن‌ها استفاده کنید. نفوذ جهانی: حتی اگر حقوقی در یک کشور عرضه شود، به صورت خودکار در همه کشورها قابل استفاده می‌شود. عرضه رایگان یا دریافت حق امتیاز: بدون هزینه، هزینه بر مبنای استفاده یا هر نوع دیگری اجرایی است. حقوق غیرقابل فسخ است: هیچ‌کس نمی‌تواند ادعا کند که کار مشتق شده شما از سورس‌ کدی که تحت این مجوز عرضه شده را دیگر نمی‌توانید استفاده کنید (عبارتی در این مجوز وجود دارد که بیان می‌کند اگر شما از فردی به خاطر نقض پتنت یا هر چیز دیگری تحت این لایسنس شکایت کنید، مجوز شما باطل می‌شود، اما این قضیه فقط به کارهای پتنت‌ شده اختصاص دارد و تا وقتی که شما از کسی شکایت نکنید، نگرانی خاصی وجود ندارد). نمونه‌ی مجوز Copyright [yyyy] [name of copyright owner] Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. مجوز BSD License مجوز BSD بخشی از خانواده مجوزهای نرم‌ افزار آزاد است که در مقایسه با مجوزهای نرم‌ افزاری دیگر، محدودیت‌های کمتری درباره نحوه توزیع دارد که دو نسخه مهم آن عبارت‌ است از: The New BSD License / The New Modified BSD License The Simplified BSD License / FreeBSD License هر دو به‌ عنوان مجوزهای متن باز توسط Open Source Initiative پذیرفته شده‌اند. مجوز New BSD که با نام «مجوز سه شرطی» نیز شناخته می‌شود، اجازه توزیع مجدد نامحدود را برای هر هدفی می‌دهد (البته تا وقتی که کپی‌ رایت‌ و رفع تعهدهای این مجوز برقرار باشند). این مجوز یک شرط جالب نیز دارا است به این شکل که استفاده از نام مشارکت‌ کنندگان برای تأیید کارهای انجام شده در پروژه را بدون اجازه شخصی آن‌ها ممنوع می‌کند. این تبصره در‌ واقع به این معنی است که اگر کسی سورس‌ کد توسعه دهنده شناخته‌ شده‌ای را fork کرده باشد و تغییراتی را برای ساخت پروژه جدید در آن انجام داده باشد، نمی‌تواند از نام آن فرد مطرح برای تأیید و اعتبار بخشی به پروژه خود استفاده کند (در حقیقت، تفاوت اصلی میان نسخه جدید و نسخه ساده مجوز BSD در استفاده از این شرط است). نمونه‌ی مجوز Copyright <YEAR> <COPYRIGHT HOLDER> Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. مجوز GNU با وجود این مجوز محدودیت خاصی برای کپی کردن کدها در پروژه‌هایی که لایسنس GPL دارند وجود نداشته و می‌توانید کدهای دارای این مجوز را به‌ سادگی کپی کنید. همچنین، می‌توانید آن را روی فلش یا هارد خود توزیع کنید یا کدها را در وب‌ سایت خود با لینک دانلود و به همراه همین لایسنس منتشر کرده یا روی کاغذ پرینت کنید. در‌ واقع، به هر شکلی که بخواهید می‌توانید پروژه‌های دارای لایسنس GPL را توزیع کنید. می‌توانید با این مجوز از مخاطب در قبال ارائه نرم‌ افزار به او هزینه دریافت کنید ولی به خاطر داشته باشید که باید یک کپی از GNU GPL را نیز ارائه کنید که به آن‌ها می‌گوید می‌توانند نرم‌ افزار را از جای دیگر بدون هزینه دریافت کنند (در کنار این کار، همچنین می‌توانید دلیلی که به خاطر آن از مخاطب هزینه دریافت می‌کنید را نیز بیان کنید) اگر بخواهید تغییراتی در پروژه ایجاد کنید (اصطلاحاً آن را Fork کنید)، این امکان برای شما وجو دارد؛ به عبارت دیگر، ویژگی‌هایی که می‌خواهید را حذف و اضافه کنید اما تنها به‌ شرطی که شما هم پروژه‌ٔ خود را تحت مجوز GNU GPL ارائه کنید (همچنین این نکته اهمیت دارد که باید تفاوت بین سورس‌ کد پروژه و توزیع باینری آن را بدانید؛ به این دلیل که محدودیت‌هایی در رابطه با هر کدام وجود دارد. همچنین، اگر پروژه‌ای از GNU GPL استفاده می‌کند، باید با برخی قوانین استاندارد دربارهٔ کامنت‌ گذاری بخش‌های مختلف این مجوز درون سورس‌ کد نیز مطابقت داشته باشد. مجوز GNU LESSER GENERAL PUBLIC LICENSE این لایسنس حقوق کمتری را برای استفاده در مقایسه با GNU GPL نیاز دارد و معمولاً در لایبرری‌ها و پروژه‌هایی استفاده می‌شود که قصد دارند اجازهٔ لینک شدن آن‌ها را به نرم‌ افزارهای بدون مجوز GPL و با سورس‌ کد بسته نیز بدهند. در مورد مجوز GPL، هر پروژه و سورس‌ کدی که در پروژه‌ی تحت GPL عرضه می‌شود، خود نیز باید GPL باشد و کدهای تحت GPL نمی‌تواند در پروژه‌های اختصاصی مورد استفاده قرار بگیرند. LGPL این مورد را نادیده گرفته و نیاز به مجوز مشابه را برای استفاده از کدهای دارای LGPL از بین می‌برد (به عبارت دیگر، نسبت به GPL آزادی بیشتری در اختیار توسعه دهندگان قرار می‌دهد). نمونه‌ی مجوز <one line to give the program's name and a brief idea of what it does.> Copyright (C) <year> <name of author> This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. مجوز MIT LICENSE این مجوز، کوتاه‌ترین و احتمالاً پراستفاده‌ترین مورد بین تمامی لایسنس‌های متن باز است زیرا شرایط آن آسان است و به‌ اصطلاح از مجوزهای دیگر راحت‌تر عمل می‌کند. اگر بخواهیم ماهیت اصلی این لایسنس را شرح دهیم، بایستی بگوییم که به وسیله این مجوز، اجازه استفاده بدون هزینه به هر شخصی که یک کپی از سورس‌ کد یا نرم‌ افزار و مستندات مربوط به آن را دریافت کرده، داده می‌شود تا در آن نرم‌ افزار بدون هیچ‌گونه محدودیتی تغییرات خود را اِعمال کند که شامل استفاده بدون محدودیت، کپی، تغییر، ترکیب، انتشار، توزیع، استفاده بخشی از مجوز یا فروش کپی‌هایی از نرم‌افزار می‌شود و به افرادی که این نرم‌ افزار برای آن‌ها تهیه شده نیز در این موارد اجازه داده می‌شود به شرطی که ملاحظاتی که در بالا به آن‌ها اشاره شد و همچنین معرفی این لایسنس را در تمامی کپی‌ها یا بخش‌های مهم این نرم‌ افزار در معرض دید کاربران قرار دهند. با این مجوز در واقع اجازه استفاده، کپی و تغییر در نرم‌ افزار را هر طوری که تمایل دارید خواهید داشت؛ هیچ کسی نمی‌تواند شما را از بکارگیری آن در پروژه‌های دیگر منع کند و می‌توانید نرم‌ افزار را تحت این مجوز به صورت رایگان یا از طریق فروش آن عرضه کنید. هیچ شرطی برای این توزیع به هیچ طریقی وجود نخواهد داشت و هر کسی می‌تواند هر تغییری را که می‌خواهد در کدهای تحت لیسانس MIT انجام دهد (البته مادامی که مجددا تحت این مجوز عرضه شوند). نمونه‌ی مجوز The MIT License (MIT) Copyright (c) <year> <copyright holders> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. مجوز Mozilla Public License مجوز همگانی موزیلا (Mozilla Public License) یک مجوز نرم‌ افزار آزاد مفصل است که توسط بنیاد موزیلا نوشته و نگهداری می‌شود. از این مجوز به عنوان مجوزی که هم ویژگی‌های مجوز تغییر یافته BSD و هم ویژگی‌های مجوز GPL را دارد، یاد می‌شود که سعی دارد مشکلات و نگرانی‌های توسعه‌ دهندگان نرم‌ افزار آزاد و نرم‌افزار انحصاری را تعادل بخشد. این مجوز دو بار مورد بازبینی قرار گرفته‌ است و در نسخه آخر آن یعنی نسخه ۲.۰، سعی شده تا سادگی مجوز حفظ شود و سازگاری بهتری با دیگر مجوزها داشته باشد. این مجوز که به اختصار به MPL هم گفته می‌شود، مجوزی است که در موزیلا فایرفاکس، موزیلا تاندربرد و بقیه نرم‌ افزارهای بنیاد موزیلا مورد استفاده قرار می‌گیرد اما اخیراً دیگران هم به استفاده از این مجوز روی آورده‌اند، همانند شرکت Adobe که از این مجوز برای نرم‌ افزار ادوبی فلکس استفاده کرده و همچنین لیبره‌آفیس که از این مجوز به همراه LGPL (نسخه ۳) استفاده می‌کند. شرکت‌هایی مانند سان مایکروسیستمز هم از نسخه ۱.۱ این مجوز برای نوشتن یک مجوز ترکیبی مثل مجوز توسعه و توزیع مشترک استفاده کرده‌اند. نمونه‌ی مجوز /* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ # This Source Code Form is subject to the terms of the Mozilla Public # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at https://mozilla.org/MPL/2.0/. <!-- This Source Code Form is subject to the terms of the Mozilla Public - License, v. 2.0. If a copy of the MPL was not distributed with this - file, You can obtain one at https://mozilla.org/MPL/2.0/. --> This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at https://mozilla.org/MPL/2.0/. مجوز CREATIVE COMMONS مجوز Creative Commons که به اختصار CC گفته‌ می‌شود، خیلی هم اپن‌ سورس نبوده و به صورت معمول در پروژه‌های مربوط به طراحی استفاده می‌شود. انواع مختلفی از این نوع لایسنس وجود دارد که هر کدام برای موارد خاصی ایجاد شده که حق و حقوق معینی را اعطا می‌کنند، به طوری که یک مجوز CC دارای چهار بخش اساسی است که عبارت است از: اعتباربخشی: نویسنده (مؤسس) باید به عنوان خالق اثر نام برده شود؛ سپس می‌توان آن را تغییر داد، توزیع کرد، کپی نمود و به صورت دیگری استفاده کرد. انتشار تحت مجوز کریتیو کامانز: می‌توان اثر را تغییر داد و توزیع کرد ولی تنها تحت مجوز CC. غیرتجاری: یک اثر تحت این مجوز می‌تواند تغییر داده شود یا توزیع شود ولی نه برای اهداف تجاری (البته عبارت Commercial به‌ معنی «تجاری» کمی مبهم است و هیچ تعریف مشخصی از آن ارائه نشده است) ممنوعیت اعمال تغییرات: می‌توان اثر دارای چنین مجوزی را کپی کرده یا توزیع کرد، اما نمی‌توانید آن را به هیچ صورت تغییر دهید یا اثری را براساس طرح اصلی ایجاد کنید. به خاطر داشته باشید که این‌ها قوانین الزامی موجود در همه مجوزهای مبتنی بر CC نیستند؛ برخی از مجوزهای CC ممکن است این شرط‌ها را نداشته باشند، چرا که برخی از این شرط‌ها دو به دو ناسازگار هستند و برخی می‌توانند براساس نیاز با هم ترکیب شوند. نمونه‌ی مجوز <WORK'S NAME> (c) by <AUTHOR'S NAME> <WORK'S NAME> is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License. You should have received a copy of the license along with this work. If not, see <http://creativecommons.org/licenses/by-sa/3.0/>.
  2. کامبیز اسدزاده

    انواع مجوز‌های نرم‌افزاری

    در دنیای مدرن برنامه‌نویسی امروز همانند دیگر کسب‌و‌کار‌ها در حوزه‌های مختلف، برنامه‌نویسی و توسعه‌ی نرم‌افزار دارای قوانین و چهارچوب‌های تقریباً مشخصی است که توسعه‌دهندگان حقوقی و حقیقی باید در باره‌ی آن‌ها بدانند تا در میدان دردسرهای پیش‌بینی‌نشده و ناخواسته سقوط نکنند. در این مقاله به انواع مجوز‌ها و همچنین قوانین حاکم بر آن‌ها اشاره می‌شود که شما را دعوت به مطالعه‌ی آن می‌کنیم. در بسیاری از مواقع، نوشتن یک برنامه‌ی کاربردی، بدون استفاده از انوع کتابخانه‌های از قبل نوشته شده (کد‌هایی که دیگران نوشته‌اند)، تقریباً غیرممکن است. مهم‌ترین چیزی که پیش از دست زدن به کدها و تصاویر آماده‌ی گرافیکی، یا استفاده از کتابخانه‌ها باید بررسی کنید، مجوز، یا به‌ اصطلاح (لایسنسی) است که اثر را تحت آن توزیع کرده‌اند. برای اطلاع از آن، معمولاً باید به دنبال فایلی با نام license.txt بگردید یا صفحه‌ی مربوط به مجوزها (Legal/Licensing) را در سایت اصلی بیابید. برخی از تفکرات غلط که باید به آن‌ها توجه شود قرار است شما کتابخانه‌ای را بنویسید و یا محصولی را توسعه دهید، در توسعه‌ی آن شما نیاز به استفاده از کتابخانه‌ها و یا تکه‌کد‌هایی هستید که دیگران آن‌ها را توسعه داده‌اند، با توجه به اینکه محصول شما قرار نیست منبع‌باز باشد (تجاری) بنابراین نباید اینگونه فکر کنید که چون محصول من تجاری است و قرار نیست کسی کد آن را ببیند، پس نیازی به حفظ حقوق توسعه‌دهنده و یا عنوان کردن کتابخانه‌ها و توسعه‌‌دهندگان دیگر باشم! این یک تفکر غلظ است (چرا که محصول شما بدون وجود کدهای نوع سوم (Third-Party) قادر به انجام کارهایی که از آن انتظار دارید را نخواهد داشت (مگر اینکه محصول شما به صورت کامل توسط خود شما توسعه داده شده باشد) که این کار در بسیاری از مواقع تقریباً غیر‌ممکن است. برای مثال اگر نیاز است شما در رابطه با مباحث امنیتی از کتابخانه‌ای مانند OpenSSL استفاده کنید، دیگر نوشتن یک کتابخانه‌ی عظیمی مانند آن حماقتی بیش نیست چرا که چنین کتابخانه‌هایی توسط شرکت‌ها، سازمان‌ها و توسعه‌دهندگان بسیاری از قبل توسعه و مورد استفاده قرار گرفته‌اند و از لحاظ پایداری و اطمینان استفاده مورد تایید قرار گرفته‌اند. دقت کنید که استفاده از کتابخانه‌ها و حتی هدف از نوشتن یک کتابخانه باید تحت شرایط حاکم بر مجوز‌ها را در نظر داشته باشد. برای مثال، اگر شما قصد دارید کتابخانه‌ای را مورد استفاده قرار دهید و یا قرار است کتابخانه‌ای را ایجاد و توسعه دهید بهترین کار قبل از شروع توسعه آن است که بدانید هدف شما از توسعه‌ی آن کتابخانه چه چیزی است؟ آیا قرار است کتابخانه‌ی مورد نظر شما به صورت انحصاری و تجاری در اختیار کاربران قرار بگیرد و یا قرار است به صورت کاملاً رایگان به اشتراک‌ گذاشته شود؟ شاید ابتدا به این فکر کنیم که چرا باید کدی را که برای آن زحمت کشده‌ایم به صورت رایگان در اختیار دیگران قرار دهیم، چرا که ممکن است آن را بدون حفظ نام نویسنده تغییر، توسعه و بازنشر و برای استفاده در مصارف تجاری (غیر رایگان) قرار دهند؟ برای پاسخ به این سوأل‌ها پیشنهاد می‌کنیم به ویژگی‌های مجوز‌های موجود دقت کنید چرا که حتی وقتی شما یک تکه کد را به صورت رایگان در اختیار دیگران قرار می‌دهید استفاده کننده موظف است تا طبق قوانین از پیش تعریف شده‌ی مجوز‌های منبع‌باز (Open Source) آن را مورد استفاده قرار دهد که به حفظ حقوق چاپ و تکثیر، توسعه و دیگر موارد پرداخته است. انواع مجوز‌های نرم‌افزاری و ویژگی‌های آن نرم افزارهای متن باز (Open Source Software) نرم افزار متن باز را می‌توان نرم‌افزاری معرفی کرد که تحت یک مجوز (Licence) دارای موافقتنامه‌ی انتشار یافته، که اجازه‌ی به اشتراک‌گذاری کد منبع (کد‌ کامپیوتری) را جهت مشاهده و انجام تغییرات در آن توسط کاربران و سازمان‌های دیگر می‌دهد. مثال‌هایی از این نوع نرم افزارها می‌توان به مرورگر موزیلا، لینوکس، جوملا، وردپرس و غیره اشاره کرد. نرم افزارهای اختصاصی (متن بسته) (Closed Source Software) اینگونه نرم‌افزارها، نرم‌افزارهایی اختصاصی هستند که تحت یک مجوز دارای موافقتنامه‌ برای انجام تغییرات، توزیع، کپی و انتشار محدود و کنترل شده در اختیار کاربران و سازمان‌ها قرار می‌گیرند. یا به صورت ساده تر نرم‌افزارهایی که برای دریافت آنها باید پول پرداخت کنید و اجازه دسترسی به کد منبع برنامه را ندارید. مثال‌هایی از این نوع نرم‌افزارها می‌توان به محصولات مایکروسافت مانند Office یا شرکت Adobe مانند Photoshop و غیره اشاره کرد. مجوز آزاد (CopyFree) کدهایی که تحت این نوع مجوز توزیع می‌شوند، هیچ محدودیتی بر برنامه‌ی نهایی شما ایجاد نمی‌کنند. شما آزاد هستید که هر تغییری در آن‌ها ایجاد کنید و لزومی ندارد کدهای تغییریافته یا استفاده‌شده را بازنشر دهید. حتی منبعی برای استفاده‌ی تجاری از این کدها نیز وجود ندارد. انواع اصلی این لایسنس‌ها عبارتند از Apache، BSD، MIT/X11 و Academic Free Licence مجوز‌های BSD و MIT بسیار مختصر هستند و تنها به مثابه‌ی اعلامیه‌ای برای سلب مسئولیت از نویسنده به کار می‌روند و گزینه‌ی مناسبی برای کامپوننت‌ها و کدهای کوچک قلمداد می‌شوند. در حالی که Apache و AFL، متن‌های حقوقی و کاملی هستند که تکلیف مسائلی نظیر سرنوشت پتنت‌ها را نیز مشخص کرده‌اند. برنامه‌های کامل، ترجیحاً با مجوز‌های Apache عرضه می‌شوند. به عنوان مثال، برنامه‌های معروفی که از این نوع لایسنس‌ها استفاده می‌کنند، می‌توان به LLVM/Clang، X11، FreeBSD، OpenSSL، Apache Server، اپل وب‌کیت و کرومیوم، و قسمت‌های یوزرلند اندروید اشاره نمود. مجوز تجاری (Copyrighted/Proprietary) کپی‌رایت شده همه‌ی برنامه‌های تجاری با این عنوان عرضه می‌شوند. این کدها بدون تهیه‌ی مجوز لازم از توزیع‌کننده، در کدهای شما قابل استفاده نیستند. استفاده از این کدها یا لینک کردن به آن‌ها، معمولاً در ازای پرداخت پول مجاز است. پس از دریافت مجوز، ممکن است فایل‌های کامپایل‌شده (سورس‌بسته) یا کدهای اصلی (همراه سورس) را در اختیار شما قرار دهند، اما به شما اجازه‌ی توزیع آن کدها را نخواهند داد. از گروه سورس‌بسته می‌توان به ویندوز و مایکروسافت آفیس، و از گروه همراه با سورس می‌توان به vBulletin، Unix و کامپوننت‌های DevExpress اشاره کردبر خلاف مجوز‌های متن‌باز لزوماً همراه داشتن سورس به معنی متن‌باز (opensource) بودن نرم‌افزار نیست. بلکه شرایط دیگری مثل شرایط بازنشر نیز لحاظ می‌شود. عملاً فقط مجوزهای آزاد و کپی‌لفت تحت این عنوان قرار می‌گیرند، استاندارد رایجی برای مجوزهای کپی‌رایت تجاری وجود ندارد و توصیه می‌شود فایل لایسنس، به‌دقت مطالعه شود. مجوزهای کپی‌لِفت قوی (Strong Copylefted) کدهایی که تحت این عنوان توزیع می‌شوند، لایسنس خود را به برنامه‌ی شما تحمیل می‌نمایند. حتی اگر یک خط از آن‌ها را وارد برنامه‌ی خود کنید، ناچار خواهید بود کل برنامه‌تان را به صورت کپی‌لفت، در اختیار سایرین قرار دهید. این مجوزها به شما اجازه‌ی تجاری‌سازی یا فروش برنامه و کدتان را نمی‌دهند. سخت‌گیری مجوزهای کپی‌لفت تنها به استفاده از کدها ختم نمی‌شود. حتی لینک کردن به نسخه‌ی کامپایل‌شده‌ی آن‌ها نیز، چه به صورت استاتیک انجام شود و چه به صورت دینامیک، همه‌ی کدهایتان تحت این مجوزها قرار خواهد گرفت. بنابراین اگر قصد ندارید بدون انتشار همه‌ی کدهای خود برنامه‌تان را توزیع کنید و یا از فروش آن کسب درآمد نمایید. جهت اطلاع از روش‌های درآمدزایی از پروژه‌های متن-باز به این سند مراجعه کنید. البته کسب درآمد از طریق ارائه‌ی خدمات پشتیبانی و نصب و راه‌انداری قانونی‌ست و مدل تجاری شرکت‌های بزرگی همچون ردهت بر این اساس بنا نهاده شده است.انواع اصلی این لایسنس‌ها GPL و AGPL هستند که هر کدام چندین نسخه دارند. در میان برنامه‌های معروفی که با این نوع لایسنس عرضه می‌شوند، می‌توان به لینوکس (کرنل) و یوزرلند اصلی آن، GNU، و همچنین MySQL، وردپرس، جوملا، لیبرآفیس(LibreOffice)، کامپایلر GCC، فریمورک Qt و… اشاره نمود. معدودی از این برنامه‌ها و کدها، هم‌زمان با لایسنس تجاری هم عرضه شده‌اند که اگر بخواهید از برنامه‌ای که نوشته‌اید، از طریق فروش نرم‌افزار و بدون انتشار سورس کد کسب درآمد کنید، می‌بایست نسخه‌ی تجاری آن‌ها را خریداری نمایید. فریمورک Qt و بانک اطلاعاتی MySQL از این دسته برنامه‌ها هستند. مجوزهای کپی‌لفت ضعیف (Weak Copylefted) تنها تفاوت انواع ضعیف مجوزهای کپی‌لفت با انواع قوی آن،‌ در این است که اجازه‌ی لینک دینامیک به کتابخانه‌های کامپایل‌شده با این لایسنس را می‌دهد. برای مثال، Glibc، کتابخانه‌ی پوزیکس و زبان سی POSIX / Standard C Library در لینوکس، که عملاً دروازه‌ی هسته‌ی لینوکس برای همه‌ی برنامه‌های کاربردیست، با این مجوز توزیع شده است و اگر به خاطر همین مجوز کپی‌لفت ضعیف نبود، اساساً امکان عرضه‌ی برنامه‌های تجاری برای لینوکس وجود نداشت. به عنوان انواع اصلی این مجوز ها، می‌توان به LGPL و MPL (موزیلا) اشاره کرد.برنامه‌ها‌ی Firefox و VLC و کتابخانه‌ی معروف FFmpeg نیز نمونه‌ی دیگری از این گروه مجوزهاست. اگرچه برخی اجزای کتابخانه FFmpeg تحت لیسانس GPL منتشر شده‌اند. در صورت فعال شدن همان اجزا، کل کتابخانه تحت GPL قرار خواهد گرفت.در سیستم عامل اندروید، برای آن که کوچک‌ترین نگرانی برای برنامه‌سازان تجاری باقی نماند و از سرایت لایسنس هسته‌ی اصلی لینوکس به بقیه‌ی نرم‌افزارها جلوگیری شود، کتابخانه‌ی پوزیکس/سی اختصاصی آن به نام Bionic، با لایسنس BSD عرضه شده است. مجوزهای کرییتیو کامنز (Creative Commons, CC) نوعی مجوز آزاد و رایگان که برای آثار گرافیکی و نوشتاری رایج است و بر اساس ویژگی (Types) آن می‌توانند مجاز یا ممنوع برای استفاده‌ی تجاری باشند. اگر برنامه‌ی تجاری می‌نویسید، تنها از کارهای گرافیکی استفاده کنید که استفاده‌ی تجاری را آزاد گذاشته‌اند.این مجوز می‌تواند ویژگی‌های دیگری نظیر عدم اجازه‌ی تغییر در کار اصلی را همراه خود داشته باشد که باید به آن‌ها نیز توجه نمایید. آیا می‌توانم با نرم‌افزارهای کپی‌لفت، محتوای تجاری تولید کنم؟ جامعه‌ی متن‌باز، مراقب این موضوع بوده که مجوز‌ برنامه‌هایشان محتوای شما را تحت تأثیر قرار ندهند و در صورت لزوم این موضوع را به صراحت نیز قید کرده‌اند. بنابراین می‌توانید با برنامه‌ای نظیر LibreOffice که تحت GPL توزیع شده، محتوای تجاری تولید کنید، یا برنامه‌ی تجاری خود را توسط GCC کامپایل نمایید. اطلاعات سایت‌هایی که تحت نرم‌افزارهای کپی‌لفت هستند تحت تأثیر این لایسنس قرار نخواهند داشت (چرایی آن از نظر حقوقی خود یک مقاله است). در واقع، سایت‌های خبررسانی زیادی نظیر CNN از این سرویس‌ها استفاده می‌کنند. از نرم‌افزاری با مجوز GPL (مثل وردپرس) برای راه‌اندازی سایت خود استفاده کرده‌ام. تکلیف چیست؟ این گونه برنامه‌ها همراه سورس هست و آزادید آن‌ها را تغییر بدهید. خیالتان راحت باشد که محتوای سایت شما تحت این نوع مجوز قرار نخواهد گرفت و تنها کدهاست که شامل لایسنس می‌شوند. حتی اگر چیزی به سورس آن اضافه کنید یا تغییر دهید، ولی قصد توزیع آن را نداشته باشید، به این کار مجبور نمی‌شوید. ولی توجه داشته باشید که پلاگین‌ها و تم‌های وردپرسی که شما تهیه می‌کنید، یا تغییراتی که به‌اصطلاح هاردکد می‌کنید، تحت مجوز GPL قرار می‌گیرند و تنها در صورتی که بخواهید آن‌ها را به فرد دیگری بدهید، حتی یک نفر دیگر، مجبورید سورسشان را به رایگان برای همه منتشر کنید. در واقع این موضوع، یکی از بزرگ‌ترین معضلات حقوقیست که تهیه‌کنندگان پلاگین‌ها و تم‌های تجاری وردپرس با آن درگیرند. اگرچه مجوز GPL شما را مجبور نمی‌کند که تغییراتی که برای استفاده‌ی شخصی داده‌اید منتشر کنید، اما این مجوز خواهرخوانده‌ای به نام AGPL دارد که در صورتی که کد تغییر یافته را روی سرور اجرا کنید، باید منتشرش نمایید. آیا می‌توانم کدی که تحت مجوز MIT یا BSD منتشر شده را در برنامه‌ی تحت GPL استفاده کنم؟ احتمال زیادی وجود دارد که هر قسمت از یک پروژه‌ی بزرگ، تحت لایسنس جداگانه‌ای توزیع شده باشد. برای مثال در اندروید، هسته‌ی لینوکس تحت GPL، بیونیک (کتابخانه‌ی پوزیکس/سی) تحت BSD و بقیه‌ی قسمت‌ها عمدتاً بر اساس آپاچی منتشر شده‌اند. در سیستم عامل MacOSX، هسته‌ی Darwin و برخی اجزا تحت BSD و بقیه به صورت تجاری و سورس بسته هستند. بنا بر یک قاعده‌ی کلی، شما می‌توانید مجوز یک کد را از یک لایسنس بازتر نظیر MIT، به لایسنس محدودتر نظیر GPL تغییر دهید، حتی اگر صاحب آن نباشید. ولی روند معکوس آن تنها برای صاحب اصلی اثر امکان‌پذیر است[ref]برای نمونه برنامه‌ی VLC ابتدا تحت GPL قرار داشت اما در نهایت به دلیل ناسازگاری آن با استور آیتونز توسط شرکت سازنده به لایسنس بازتر MPL/LGPL منتقل شد. یا نرم‌افزار ToyBox که تحت لایسنس LPGL بود اما برای اینکه بتواند روی دستگاه‌های موبایل قرار گیرد تحت BSD قرار گرفت و اندرویید مارشملو از BusyBox به آن سوییچ کرد.به عنوان مثال، با این که مجوز آپاچی همانند MIT آزاد است، ولی از نوع محدودتر قلمداد می‌شود،‌ پس نمی‌توان کدهای تحت آپاچی را با مجوز MIT بازنشر کرد.به طور مختصر ترتیب مجوزهای متن‌باز، از بازترین به محدودترین، به شکل زیر است: Public Domain -> MIT/X11 -> BSD -> Apache -> LGPL/MPL -> GPL -> AGPL آیا برنامه‌ی تحت ویندوز، شامل لیسانس تجاری مایکروسافت خواهد شد؟ مایکروسافت به شما این اجازه را می‌دهد که در چارچوب سیستم عامل ویندوز، به dllهای سیستم‌عامل لینک دهید و از آن‌ها استفاده نمایید، اما این بدان معنا نیست که شما اجازه داشته باشید dllها را به برنامه‌ی خود اضافه نمایید. بنابراین استفاده از dllهای خود ویندوز، در سیستم‌عامل‌ها و شبیه‌سازهای غیرمایکروسافتی (نظیر ReactOS یا Wine)، غیرقانونی است و این‌ها به طور مستقل، پیاده‌سازی کدهایی را انجام داده‌اند که با اینترفیس برنامه‌نویسی ویندوز (Win32 API) سازگار هستند. در ایران که قانون کپی‌رایت وجود ندارد، باز هم ملزم به رعایت و توجه به این موارد هستیم؟ صرف نظر از مسائل اخلاقی که ما را ناگزیر از رعایت این موارد می‌کنند، باید توجه داشته باشیم که اگر بخواهیم برنامه‌ی خود را در اپ‌استورهایی همچون آیتونز یا گوگل پلی منتشر کنیم، رعایت این موارد ضروری است چرا که در صورت عدم رعایت، برنامه‌های شما را از فروشگاه حذف می‌شود. همچنین، گرچه جامعه‌ی متن‌باز اهل شکایت و دادگاه نیستند، ولی از فردای روزی که ایران به سازمان تجارت جهانی بپیوندد، مسائل حقوقی ناشی از آن، همچون شمشیر داموکلس، بر سر‌کدهای شما خواهند بود. بسیاری از توسعه‌دهندگان تازه‌کار متأسفانه بدون در نظر گرفتن قوانین و شرایط توسعه وارد نشر و تکثیر کد‌ها و محصولاتی می‌شوند که شاید به صورت ناخودآگان تمامی قوانین حقوقی و مجوز‌های مربوطه را نقض می‌کنند. همچنین اپ‌استورهای معروف ایرانی تعهدی از توسعه‌دهنده درباره‌ی عدم استفاده از کدهای بدون مجوز اخذ نمی‌کنند و رویه‌ای برای شکایت از ناقضین ندارند و علاوه بر آن، خود نیز رأساً اقدام به بازتوزیع برنامه‌های خارجی، بدون اخذ رضایت از صاحب اثر می‌نمایند و اگر این رویه‌ی خود را مورد بازبینی قرار ندهند، ممکن است در آینده‌ای نزدیک مجبور به پرداخت خسارت‌های هنگفتی شوند. باید توجه داشت که توزیع رایگان یک برنامه، به این معنا نیست که دریافت‌کننده حق توزیع مجدد آن را، حتی به صورت رایگان، داشته باشد. نمونه‌ی بارز آن یونیکس است که به همراه سورس توزیع شود و برای دانشگاه‌ها رایگان است، اما این قبیل استفاده از آن بدون پرداخت هزینه‌های مربوطه ممکن نیست. بنابراین حتی بازتوزیع نرم‌افزارهای رایگان خارجی در استورهای ایرانی نیز احتمالاً بدون عواقب نیست. منابع و مستندات Software license - Wikipedia Comparison of free and open-source software licenses - Wikipedia CI: policy > permissive CI: policy > copyleft CI: policy > copyright https://scriptics.ir
×
×
  • جدید...