open source چیست؟

open source چیست؟

عبارت open source به چیزی که افراد می توانند آن را تغییردهند یا به اشتراک بگذراند اشاره می کند زیرا طراحی آن به طور عمومی در دسترس است. بنابراین در این مقاله می خواهیم open source را بطور کامل بررسی کنیم.

 

این عبارت در زمینه توسعه نرم افزار به منظور تعیین یک رویکرد خاص برای ایجاد برنامه های کامپیوتری ایجاد شده است. امروزه عبارت open source مجموعه ای از مقادیر گسترده تری را تعیین می کند که ما آن را رویکرد open source می نامیم. پروژه ها، محصولات یا ابتکارات open source ، اصولی تبادل باز، همکاری اشتراکی، نمونه سازی سریع، شفافیت و توسعه انجمن گرا را در بر می گیرد.

نرم افزار open source چیست؟

نرم افزار open source نرم افزاری است که هر کس می تواند کد آن را بررسی و اصلاح کند و آن را توسعه دهد.

Source code،قسمتی از نرم افزار است که بسیاری از کاربران رایانه تا به حال آن را ندیده اند،برنامه نویسان با نوشتن کدها می توانند به تغییر نحوه ی کارکرد یک بخش از نرم افزار(یک برنامه) دست یابند. برنامه نویسانی که دسترسی به کد یک برنامه رایانه ای را دارند می توانند این برنامه را با افزودن ویژگی هایی به آن و یا اصلاح بخش هایی که به درستی کار نمی کنند آن را بهبود ببخشند.

تفاوت بین نرم افزارهای open source و انواع دیگر نرم افزارها چیست؟

برخی از نرم افزارها دارای کدی هستند که فقط فرد، تیم یا سازمانی که آن را ایجاد کرده اند -و کنترل منحصربفردی رو آن دارد- میتواند آن را تغیییر دهد. این نوع نرم افزارها را "اختصاصی" یا "closed source" می نامند.

تنها تولیدکنندگان اصلی نرم افزار اختصاصی می توانند به صورت قانونی آن را کپی و بررسی کنند و آن را تغییر دهند. برای استفاده از نرم افزار اختصاصی، کاربران باید بپذیرند(معمولا با امضای مجوز نمایش داده شده در اولین باری که نرم افزار را اجرا می کنند) که با نرم افزار، کاری که تولیدکنندگان نرم افزار به طور صریح آن را مجاز نمی دانند، انجام نمی دهند.نرم افزار Microsoft Office و Adobe Photoshop نمونه هایی از نرم افزار های خصوصی هستند.

نرم افزارهای open source متفاوت هستند. تولیدکنندگان این نرم افزارها کد آن را در اختیار کسانی که مایلند کد را مشاهده کنند و کپی کنند، از آن یاد بگیرند، آن را تغییر دهند یا آن را به اشتراک بگذارند، قرار می دهند. GNU Image Manipulation Program وLiber Office نمونه هایی از نرم افزارهای open source هستند.

همانند نرم افزار اختصاصی،کاربران هنگام کار با نرم افزارهای open source نیز باید شرایط مجوز آن را بپذیرند. اما شرایط مجوز نرم افزار های open source کاملا با شرایط مجوز نرم افزار های اختصاصی متفاوت است.

مجوزهای open source بر نحوه استفاده، مطالعه، اصلاح و توزیع نرم افزار تأثیر میگذارند. به طور کلی، مجوزهای متن باز به کاربران رایانه ای اجازه استفاده از نرم افزار متن باز را برای هر هدفی که می خواهند می دهند. برخی ازمجوز های open source -که برخی آن ها را copyleft می نامند- بیان می کند که هرکس که یک برنامه open source را اصلاح و منتشرمی کند باید کد آن را نیز همراه برنامه منتشر کند. علاوه بر این، برخی از مجوز های open source ، تصریح می کنند که هر کسی که برنامه را با دیگران تغییر می دهد و آن را با دیگران به اشتراک می گذارد، باید بدون درنظر گرفتن هزینه مجوز، کد اصلی این برنامه را نیز به اشتراک بگذارد.

مجوزهای نرم افزاری open source ، همکاری و اشتراک گذاری را گسترش می دهند،زیرا آنها به بقیه اجازه می دهند که تغییراتی در کد انجام دهند و این تغییرات را به پروژه های خود اضافه کنند.آنها برنامه نویسان رایانه را تشویق می کنند تا هر زمان که دوست دارند، به نرم افزار open source دسترسی داشته باشند و آن ها رامشاهده و اصلاح کنند .

آیا نرم افزارهای open source فقط برای برنامه نویسان اهمیت دارد؟

خیر. تکنولوژی open source و تفکر open source هم به برنامه نویسان و هم به غیر برنامه نویسان کمک می کند.

از آنجاییکه مخترعان اولیه، بسیاری از بخش های اینترنت را بر روی فن آوری های open source ساخته اند - مانند سیستم عامل لینوکس و وب سرور آپاچی - هر کسی که امروزه از اینترنت استفاده می کند از نرم افزار open source بهره می برد.

هر بار که کاربران رایانه صفحات وب را مشاهده می کنند، ایمیل چک می کنند، با دوستانشان چت می کنند، موسیقی آنلاین گوش می دهند یا بازی های ویدئویی چند نفره بازی می کنند؛رایانه هایشان، تلفن های همراهشان یا کنسول های بازی آن ها با استفاده از نرم افزار open source به شبکه جهانی از رایانه ها متصل می شوند ،تا داده هایشان را به دستگاه های محلی که در مقابل آنها قرار دارند انتقال دهند. رایانه هایی که تمام این کارهای مهم را انجام می دهند معمولا در مکان های دور قرار دارند که کاربران آن ها را نمی بینند و یا نمی توانند دسترسی فیزیکی به آن ها داشته باشند، به همین دلیل است که برخی آنها را رایانه های راه دور می نامند.

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

برخی (Remote Computing) رایانش از راه دور را "رایانش ابری (Cloud Computing)" می نامند، زیرا شامل فعالیت هایی مانند ذخیره سازی فایل ها، به اشتراک گذاری عکس ها یا تماشای فیلم ها می شوند که نه تنها دستگاه های محلی بلکه شبکه جهانی از رایانه های راه دور را شامل می شود و یک اتمسفری دور آن ها شکل می گرد.

رایانش ابری بخش بسیار مهمی از زندگی امروزه ما با دستگاه های متصل google Apps به اینترنت است.برخی از برنامه های رایانش ابری مانند Owncloudو Nextcloudنرم افزار خصوصی هستند اما برخی دیگر مانندنرم افزارهای open source هستند .

برنامه های رایانش ابری به منظور کنترل نرم افزارهای دیگر اجرامی شوند و به آن ها کمک می کند تا به خوبی کار کنند.به همین خاطر مردم اغلب می گویند که نرم افزار هایی که در پس زمینه اجرا میشوند،می توانند عملیات های اپلیکیشن را به عنوان یک پلت فرم برای آن ها عمل کنند.پلتفرم های رایانش ابری می توانند open source یا closed source باشند. open stack نمونه ای از پلت فرم رایانش ابری open source است.

چرا مردم استفاده از نرم افزارهای اپن سورس را ترجیح می دهند؟

مردم به دلایل مختلفی نرم افزار های open source را به نرم افزار خصوصی ترجیح میدهند از جمله:

کنترل: بسیاری از مردم نرم افزار های open source را ترجیح می دهند زیرا کنترل بیشتری بر این نوع نرم افزارها دارند. آنها می توانند کد را بررسی کنند تا اطمینان حاصل کنند که نرم افزار، کاری که آن ها نمی خواهند را  انجام نمی دهد و می توانند بخش هایی را که دوست ندارند تغییر دهند . کاربرانی که برنامه نویس نیستند نیز از نرم افزار متن باز سودمی برند، زیرا می توانند از این نرم افزار برای هر هدفی که می خواهند استفاده کنند - نه فقط به طریقی که بقیه فکر می کنند باید این گونه باشد.

امنیت: برخی نرم افزار های open source را ترجیح می دهند، زیرا آنها را امن تر و پایدار تر از نرم افزار خصوصی می دانند. از آنجا که هر کسی می تواند نرم افزار متن باز را مشاهده و اصلاح کند، ممکن است فردی اشتباه یا غفلتی را که نویسنده اصلی برنامه به جا گذاشته باشد را شناسایی و تصحیح کند. و از آنجایی که بسیاری از برنامه نویسان می توانند بر روی یک قطعه از نرم افزار متن باز بدون درخواست مجوز از نویسندگان اصلی کار کنند، می توانند نرم افزار open sourceرا سریعتر از نرم افزار خصوصی، تعمیر و به روزرسانی کنند و ارتقا دهند.

پایداری: بسیاری از کاربران نرم افزار open source را به نرم افزار اختصاصی برای پروژه های مهم و بلند مدت ترجیح می دهند. از آنجا که برنامه نویسان،کد نرم افزار open source را به صورت عمومی توزیع می کنند،کاربران می توانند برای کار های حیاتی به این نوع نرم افزارها اعتماد کنند. می توانند مطمئن باشند که اگر سازندگان اصلی خودآن ها کار را بر روی آنها متوقف کنند، ابزارهایشان از بین نخواهد رفت.

منظور از open source فقط رایگان بودن است؟

خیر. این یک تصور غلط رایج در مورد آنچه که مفهوم"open source " به آن دلالت می کند، می باشد، و مفهوم آن تنها اقتصادی نیست.

برنامه نویسان نرم افزار open source می توانند برای نرم افزارهای open source که ایجاد می کنند و یا نرم افزار هایی که در آن مشارکت می کنند،پول دریافت کنند. اما در بعضی موارد،به دلیل open source باید کد برنامه را هنگام فروش نرم افزار در اختیار دیگری بگذارندبه همین خاطر برخی برنامه نویسان دریافته اند که گرفتن پول از کابران برای خدمات نرم افزاری و پشتیبانی (به جای خود نرم افزار) سودمندتر است. این گونه، نرم افزارهای آنها به صورت رایگان باقی می ماند، و از کمک کردن به دیگران در نصب،استفاده و عیب یابی آن پول به دست می آورند.

در حالی که برخی از نرم افزارهای open source ممکن است رایگان باشد، مهارت در برنامه نویسی و عیب یابی نرم افزار open source می تواند بسیار ارزشمند باشد. بسیاری از کارفرمایان به طور خاص به دنبال استخدام برنامه نویسانی هستند که دارای تجربه ی کار بر روی نرم افزار open source هستند.

خارج از بحث نرم افزار،open source چیست؟

 علاقه مندیم که بگوییم ما به دنبال راه هایی در سایتOpensource.comهستیم که ارزش های open source و اصول آن را در جهانی فراتر از نرم افزار اعمال کنیم.

نزدیک شدن تمام جنبه های زندگی به راه و روش open source یعنی ابراز تمایل برای به اشتراک گذاشتن، همکاری با دیگران به شیوه ای شفاف (به طوری که دیگران می توانند تماشا کنند و به آن ملحق شوند)،پذیرفتن شکست به عنوان ابزاری برای بهبود و حتی تشویق هر کس دیگری که هم همین کار را می کند.

این همچنین به معنی این است که متعهد شویم که یک نقش فعال را در بهبودی دنیا، بازی کنیم.واین فقط در صورتی ممکن است که به روشی که دنیا طراحی شده است دسترسی داشته باشد.

جهان پر از source code است که به شیوه ای که ما فکر می کنیم و عمل می کنیم جهت دهی و شکل دهی می کند. ما معتقدیم که این کد (هر چه که باشد) باید باز، قابل دسترس و به اشتراک گذاشته شود - بسیاری از مردم می توانند دستی در تغییر آن برای بهتر شدن داشته باشند.

در اینجا، ما نکاتی را درباره تاثیر ارزش های open source در همه زمینه های زندگی  ازجمله علوم ، آموزش، دولت، تولید، سلامت، حقوق و سازمان دهی پویا اراِئه کردیم.ما یک جامعه هستیم که متعهد شده ایم که به دیگران گوش زد کنیم که روش open source بهترین روش می باشد چون عشق به open source مانند هر چیز دیگری است و زمانی که چیزی به اشتراک گذاشته شده شود، بهتر می شود.

 

برای ارسال نظر نیاز است وارد سایت شوید. در صورت نداشتن حساب کاربری عضو شوید.