اپن سورس (Open Source) چیست؟

open source www.itAfzar.net   اپن سورس (Open Source) چیست؟

 اپن سورس (Open Source) چیست؟

آی تی افزار: نرم‌افزارهای اختصاصی متعلق به یک شرکت یا شخص حقیقی است و استفاده از آنها مستلزم خرید یا کسب مجوز بهره‌برداری از دارنده است.
نرم‌افزارها را می‌توان به ۲ گونه اصلی تقسیم‌بندی کرد: نرم‌افزارهای اختصاصی که نرم‌افزارهای تولیدی شرکت مایکروسافت نمونه‌ای از این نوع نرم‌افزاها هستند و نرم‌افزارهای آزاد یا متن‌باز که به نرم‌افزارهای FLOSS(Free/Libre/Open Source Software) مشهورند.
 
 نرم‌افزارهای اختصاصی متعلق به یک شرکت یا شخص حقیقی است و استفاده از آنها مستلزم خرید یا کسب مجوز بهره‌برداری از دارنده است. اصل حمایت یا عدم حمایت و استفاده از کدهای منبع (که زبان برنامه‌نویسی نرم‌افزار هستند) موضوع مهم‌ترین مباحث حقوقی و عملی در خصوص نرم‌افزارهاست. آنچه یک برنامه رایانه‌ای را ارزشمند می‌سازد کدهایی است که برنامه رایانه‌ای را به ابزاری خلاقانه برای حل طیفی از مشکلات تبدیل می‌کند. به‌عبارت ‌دیگر کدهای منبع، نرم‌افزار را به یک فناوری زنده و سازگار که قابلیت بهبود و اصلاح دارد، بدل می‌کنند. دسترسی به کدهای منبع و تغییر آنها توسط کاربر در نرم‌افزارهای اختصاصی، امکان‌پذیر نیست. مطابق شرایط و ضوابط آنچه « موافقت‌نامه مجوز بهره‌برداری کاربر نهایی» نامیده می‌شود، کاربران مجاز به تکثیر، به اشتراک گذاشتن، تغییر، توزیع مجدد یا مهندسی معکوس کدهای منبع نیستند. هم‌چنین این مجوزهای بهره‌برداری معمولا اجازه استفاده از نرم‌افزار را فقط بر روی یک رایانه به کاربر می‌دهد و نصب نرم‌افزار بر روی رایانه‌های دیگر مستلزم پرداخت هزینه اضافی است.
در مقابل، نرم‌افزارهای متن‌باز و آزاد که هر۲ زیرمجموعه نرم‌افزارهای FLOSS هستند در یک ویژگی مشترک هستند: همه‌ کاربران آنها باید به کدهای منبع دسترسی داشته باشند. بدین معنی که کدهای منبع این نرم‌افزارها به شخص یا شرکت خاصی اختصاص ندارند و می‌توان آنها را به اشتراک گذاشت.
نرم‌افزارهای متن‌باز از طریق همکاری عمومی کاربران مورد اصلاح و ارتقا قرار می‌گیرند. تمایل کاربران به مناسب‌سازی برنامه‌ها متناسب با نیازهای‌شان، تجربه همکاری افراد مختلف برای بهبود برنامه‌های رایانه‌ای ازجمله سیستم‌عامل لینوکس و تلاش‌های سازمان‌ها و افراد مخالف با نظام انحصاری کپی‌رایت ازجمله ریچارد استالمن منجر به شکل‌گیری جنبش موسوم به CopyLeft و ترویج استفاده و توزیع آزادانه کدهای منبع شد.
نرم‌افزارهای آزاد لزوما رایگان نیستند و نباید آنها را با نرم‌افزارهای رایگان یکی دانست. واژه آزاد به امکان استفاده، توزیع مجدد و تغییر و اصلاح آن به‌عنوان بخشی از یک برنامه جدید اشاره دارد. نرم‌افزارهای رایگان به‌طور رایگان قابل دانلود و استفاده هستند اما ممکن است قابلیت استفاده مجدد و تغییر و اصلاح توسط کاربر را نداشته باشند. انتخاب نرم‌افزاری متناسب با نیازهای هر کسب‌وکار برای صاحبان حرفه‌های مختلف اهمیت بسیار زیادی دارد. درگذشته عمدتا گزینه‌ای به‌جز خرید نرم‌افزارهای اختصاصی وجود نداشت. هرچند امروزه نیز استفاده از نرم‌افزارهای اختصاصی در بازار غلبه دارد اما نرم‌افزارهای متن‌باز نیز در حال تثبیت جایگاه خود به‌عنوان جایگزینی قابل‌اتکا هستند. استفاده از هریک از این ۲ نوع نرم‌افزار مزایا و معایبی دارد.
مزایا و معایب نرم‌افزارهای اختصاصی و متن‌باز
هنگامی‌که شما یک نرم‌افزار اختصاصی متعلق به یک شرکت شناخته‌شده را خریداری می‌کنید، اگر به مشکلی برخورد کنید به‌راحتی می‌توانید با بخش مربوط به خدمات مشتریان شرکت تولیدکننده تماس گرفته و مشکل را به سرعت حل کنید. درواقع فاصله شما با خدمات پس از فروش تنها چند کلیک یا یک تماس تلفنی است درحالی‌که در مورد مشکلاتی که در راستای استفاده از نرم‌افزارهای متن‌باز با آن مواجه می‌شوید، یک مرجع پاسخگویی واحد وجود ندارد و باید در انجمن‌ها و تالارهای گفت‌وگوی تخصصی به دنبال پاسخ پرسش خود باشید. انتخاب میان این ۲ نوع نرم‌افزار به حجم و اندازه پروژه نیز بستگی دارد. طبق بررسی انجام‌شده در خصوص کیفیت ۴۵۰ میلیون نرم‌افزار اختصاصی و متن‌باز در آمریکا، نرم‌افزارهای متن‌باز برای پروژه‌های کوچک و متوسط مناسب است و استفاده از آنها در پروژه‌های بزرگ سرعت پیشرفت پروژه را کاهش می‌دهد.
صرف‌نظر از هزینه‌های بالای خرید و اخذ مجوزهای بهره‌برداری از نرم‌افزارهای اختصاصی برای شرکت‌ها ، یکی دیگر از دلایل گرایش به نرم‌افزارهای متن‌باز، شکل‌گیری و توسعه آنها توسط گروهی از برنامه‌نویسان و متخصصان است. این موضوع سبب می‌شود که هنگام بروز مشکل، تعداد زیادی از نیروهای متخصص درگیر رفع نقص برنامه شوند و درنتیجه میزان ابتکار و نوآوری در این نرم‌افزارها در مقایسه با نرم‌افزارهای اختصاصی بیشتر باشد. البته نباید این نکته را ازنظر دور داشت که کاربر هرگز نمی‌تواند از مهارت و تخصص کافی برنامه‌نویس نرم‌افزار متن‌باز مطمئن باشد و برخلاف روند تولید آنها، نرم‌افزارهای اختصاصی با شناخت دقیق از نیازهای هر کسب‌وکار و تمرکز بر رفع این نیازها تهیه و تولید می‌شوند.
در مقابل، نرم‌افزارهای متن‌باز انعطاف‌پذیر هستند یعنی به‌گونه‌ای طراحی می‌شوند که بتوانند به‌راحتی با سایر نرم‌افزارهای متن‌باز کار کنند و تعامل داشته باشند درحالی‌که نرم‌افزارهای اختصاصی معمولا در یک سیستم همگون و بسته قابل‌اجرا هستند.
باوجود معایب و محاسن هریک از این ۲ نوع نرم‌افزار و جدال‌های تئوریک بر سر استفاده از آنها، طبق یک بررسی در سال ۲۰۱۰ از میان ۲ هزار شرکت فراملی، ۷۵درصد آنها در تمام یا بخشی از پروژه‌های خود از نرم‌افزارهای متن‌باز استفاده کرده‌اند و پیش‌بینی می‌شود که این رقم تا سال ۲۰۱۶ به ۹۹درصد افزایش یابد. بنابراین به نظر می‌رسد امروزه نرم‌افزارهای متن‌باز بیش‌ازپیش درحال رقابت با نرم‌افزارهای اختصاصی هستند.

نویسنده: مرد آی تی !

تکنولوژی + ترفند + برنامه نویسی و توسعه و ...

اشتراک گذاری این نوشته

دیدگاه شما چیست ؟

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

شما می‌توانید از این دستورات HTML استفاده کنید: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>