براساس آمارها، بیشتر رایانهها و لپتاپهایی که اطرافمان میبینیم از سیستمعامل ویندوز استفاده میکنند، در این بین کسانی که از طرفداران محصولات اپل هستند یا حاضرند هزینه بیشتری برای لپتاپ خود پرداخت کنند، از مک او.اس.ایکس استفاده میکنند اما اگر چند قدم از دنیای کاربران خارج شوید و سراغ برنامهنویسها و توسعهدهندگان وب بروید، با دنیایی کاملا متفاوت مواجه میشوید؛ زیرا آنجا از ویندوز و مک خبری نیست و روی هرکدام از این دستگاهها به سلیقه فردی که از آن استفاده میکند، یکی از توزیعهای سیستمعامل لینوکس نصب شده است. درواقع میتوان گفت لینوکس بهشتی برای برنامهنویسهاست که بنا به دلایلی حاضر نیستند به هیچ وجه آن را با سیستمعاملی مانند ویندوز عوض کنند.
جالب اینکه اگر از نگاه یک کاربر به این سیستمهای عامل نگاه کنید با فضایی ناآشنا روبهرو میشوید که از پشتیبانی بیشتر نرمافزارهای کاربردی عاجز است و میتواند دست و پا گیر باشد. حال اینکه چطور چنین دنیای غریبی به مامن امن و غیرقابل جایگزین برای برنامهنویسها تبدیل شده، پرسشی است که در این مطلب به آن پاسخ میدهیم.
چند نفر را میشناسید که از نسخه اصلی یک سیستمعامل استفاده کنند یا برای نرمافزارهای پولی هزینه کنند؟ بدون شک تعداد این افراد به انگشتان دست نیز نمیرسد. این مساله برای کاربران مشکلساز نیست، زیرا بیشتر مواقع از نرمافزارهای قفل شکسته برای راه افتادن کارشان استفاده میکنند. اما اگر قرار باشد از این نرمافزارهای قفل شکسته برای کدنویسی و کارهای حرفهایتر استفاده کنید، قطعا به مشکل برمیخورید؛ زیرا این کارها به امنیت بالا احتیاج دارد. در مقابل یکی از مزایای اصلی لینوکس این است که کاملا رایگان است. بخصوص اگر در ابتدای راه برنامهنویسی باشید، میتوانید بهصورت رایگان از داشتههایی که حرفهایها از آن استفاده میکنند بهره ببرید. حتی تعدادی از توزیعهای لینوکس پا را از این هم فراتر گذاشتهاند، به طور مثال اگر خواستار آخرین نسخه از توزیع اوبونتو لینوکس باشید کافی است یک ایمیل با همین محتوا برای آنها ارسال کنید تا نسخه رایگان با پست به در خانه شما ارسال شود. تعجب نکنید این اتفاق حتی در ایران هم امکانپذیر است.
بر کسی پوشیده نیست که تمام نسخههای لینوکس کاملا متنباز است؛ به این معنا که شما بهعنوان یک توسعهدهنده برای انجام هیچ کاری محدود نیستید و براحتی میتوانید تمام ساختار سیستمعامل را به دلخواه خود بازسازی کنید. در واقع لینوکس به شما این امکان را میدهد تا به پشت پنجرههای سیستمعامل نگاه کنید و در آن دست ببرید؛ یعنی جایی که تنها کدها فرمانروایی میکنند. کافی است زبان آنها را بلد باشید تا حکمران واقعی شما باشید. علاوه بر این محدودیتهایی که سیستمهای عامل دیگر برای بالا بردن امنیت ایجاد میکنند، معمولا برای توسعهدهندگان دست و پاگیر است و دسترسی آنها به فضای پشتی کرنل (دستورات پشت برنامهای) را محدود میکند؛ اما در لینوکس چنین قوانین دست و پاگیری وجود ندارد. علاوه براین، ویژگی دیگری به نام «اپن فرمت» به توزیعهای لینوکس این امکان را میدهد تا از تمام توان سختافزاری یک دستگاه استفاده کنند. یعنی اینجا دیگر خبری از محدودیت استفاده از رم دستگاه نیست و توسعهدهندگان میتوانند براحتی کارهایی مانند اورکلاک را روی چنین سیستمعاملی اجرا کنند.
راحتی دسترسی و نصب نسخههای موجود یکی دیگر از ویژگیهای بارز این سیستمعامل است. توزیعهای لینوکس با توجه به محبوبیتشان از راحتی بیشتری برای دسترسی و نصب برخوردارند، کافی است فایل فشرده این سیستمعامل یا همان ISO به دست شما برسد. بعد از آن دیگر فرقی ندارد چه سختافزاری دارید یا فایل شما روی چه نوع حافظهای ذخیره شده است. بیشتر نسخههای لینوکس از تمام روشها مانند DVD،USB و هاردهای اکسترنال پشتیبانی میکنند و تنها با زدن چند بار دکمه next سیستمعامل به مرحله استفاده میرسد. همچنین میتوانید بوت دوگانه بین دو سیستمعامل را انتخاب کنید؛ بنابراین میتوانید لینوکس را برای برنامهنویسی و دیگر سیستمعامل خود را برای هر چیز دیگری استفاده کنید.
- پشتیبانی از بیشتر زبانهای برنامهنویسی
لینوکس، قابلیت بالایی در پشتیبانی از انواع زبانهای برنامهنویسی دارد، مگر در مواردی که آن زبان به یک پلتفرم خاص تعلق داشته باشد (مانند ویژوال بیسیک برای ویندوز یا Objective-c برای سیستمعامل مک) که البته باز هم این احتمال که بتوانید آن را روی لینوکس دریافت کنید، بسیار بالاست. زبانهایی مانند C ++، C ، جاوا، پیاچپی، روبی، پایتون، پرل و بسیاری دیگر همه در لینوکس کار میکنند. حتی اگر یک زبان خاص که میخواهید از آن استفاده کنید در حال حاضر به طور پیشفرض روی توزیع لینوکس شما نصب نشده است، میتوانید (بجز موارد نادر) فقط بستههای لازم را بهصورت مستقیم از مخازن توزیع خود دریافت و آن را روی سیستمعامل خود نصب کنید. هر توزیع لینوکس مخازن نرمافزاری اختصاصی خود را دارد که تمام توسعهدهندگان بهصورت رایگان به آن دسترسی خواهند داشت و میتوانند نرمافزارهای رایگان را از آن دریافت کنند. همچنین فرومها و تالارهای توزیعهای لینوکس دنیایی با پرسشهای مشترک است و بدون شک هر پرسش و مشکلی را که شما با آن روبهرو شدهاید دهها نفر دیگر هم پرسیدهاند و به همین میزان به آن پاسخ داده شده است. چنین ویژگیای به شما این امکان را میدهد براحتی از تجربه توسعهدهندگانی بسیار باتجربهتر از خود بدون نیاز به صرف هزینه استفاده کنید.
- بازه بزرگی از نرمافزارهای کدنویسی
پشتیبانی از بسیاری از زبانهای برنامهنویسی بسیار باارزش است؛ اما آنچه در مورد توسعه وب مهم است، برنامههای کاربردی است که برای ویرایش کدها از آن استفاده میکنید. در لینوکس در طیف وسیعی از سلیقهها میتوانید نرمافزار خود را پیدا کنید؛ از یک بسیار حرفهای تا کسی که هنوز در حال یادگیری الفبای ابتدایی است. این قابلیت بدون شک فراتر از چیزی است که در ویندوز از طریقnotepad دریافت میکنید. این شما هستید که انتخاب میکنید به دنبال روشی سادهتر مانند emacs بروید یا ویراستاری متمرکزتر مانند Geany را انتخاب کنید و حتی پا را فراتر گذاشته و سراغ نرمافزار پرطرفداری مانندEclipse بروید. چیزی که مشخص است این که در لینوکس همیشه یک راهحل جایگزین برای مشکلات وجود دارد. در مجموع میتوان گفت لینوکس علاوه بر اینکه محیط ایدهآلی را برای توسعهدهندگان ایجاد میکند، خود نیز مانند یک مهارت است و برنامهنویسی که لینوکس را به عنوان میز کار خود انتخاب کرده در بیشتر مواقع سریعتر از دیگر رقبایش میتواند پیشرفت کند و به هدف خود برسد؛ زیرا اینجا دنیایی اختصاصی برای فرمانروایان کدهاست.
آرش جهانگیری