تبليغات
تبلیغات در دانشجو کلوب محک :: موسسه خيريه حمايت از کودکان مبتلا به سرطان ::
جستجوگر انجمن.براي جستجوي مطالب دانشجو کلوپ مي توانيد استفاده کنيد 
برای بروز رسانی تاپیک کلیک کنید
 
امتیاز موضوع:
  • 1 رأی - میانگین امتیازات: 5
  • 1
  • 2
  • 3
  • 4
  • 5

هفت دليل براي‌ برنامه‌نويسي با لينوكس!

نویسنده پیام
  • ♔ αϻἰг κнаη ♔
    آفلاین
  • مدیرکل  سایت
    *******
  • ارسال‌ها: 16,105
  • تاریخ عضویت: تير ۱۳۹۰
  • اعتبار: 1090
  • تحصیلات:زیر دیپلم
  • علایق:مبارزه
  • محل سکونت:ایران زمین
  • سپاس ها 34951
    سپاس شده 49155 بار در 13535 ارسال
  • امتیاز کاربر: 551,587$
  • حالت من:حالت من
ارسال: #1
هفت دليل براي‌ برنامه‌نويسي با لينوكس!
اشاره :
در اين يادداشت مي‌خواهم شما را با محيط‌هاي برنامه‌نويسي لينوكس آشنا كنم، اگرچه مي‌دانم خيلي از برنامه‌نويسان متأسفانه تنها با محيط ويندوز كار مي‌كنند و از مزاياي زياد محيط‌هاي برنامه‌نويسي لينوكس بي‌اطلاع هستند.

در اين يادداشت مي‌خواهم شما را با محيط‌هاي برنامه‌نويسي لينوكس آشنا كنم، اگرچه مي‌دانم خيلي از برنامه‌نويسان متأسفانه تنها با محيط ويندوز كار مي‌كنند و از مزاياي زياد محيط‌هاي برنامه‌نويسي لينوكس بي‌اطلاع هستند.

به‌طور كلي محيط‌هاي برنامه‌نويسي به دو دسته كلي تقسيم مي‌شوند: واسط‌هاي كاربر مبتني بر خط دستور و واسط‌هاي كاربر گرافيكي. در سيستم‌عامل لينوكس محيط‌هاي برنامه‌نويسي، سرويس‌ها و امكانات فراواني دارند و بدون‌ ترديد مي‌توان گفت كه لينوكس قدرتمندترين محيط برنامه‌نويسي را در اختيار ما قرار مي‌دهد.

ممكن است خيلي از شما طرفدار سيستم‌عامل‌هايي مانند ويندوز باشيد و متعصبانه بگوييد چرا بايد چنين باشد؟ شايد هفت دليل زير شما را قانع كند.

دليل يكم: لينوكس براي برنامه‌نويسي قانون‌هاي مخصوص به خود را دارد: از جمله اين‌كه برنامه نبايد براي همه كاربران همه چيز را فراهم سازد. به عنوان مثال، در محيط برنامه‌نويسي متني نيازي نيست كه آن محيط بتواند ايميل هم بفرستد و تمام تمركز كاري روي هدف اصلي برنامه است. همچنين ابزارهاي متعدد و متمركزي را در اختيار برنامه‌نويسان قرار مي‌دهد تا نيازهاي فني خود را برطرف كنند.

دليل دوم: مدل مديريت پردازشگر لينوكس پيشرفته است، به نحوي كه اگر پروسه‌اي داراي مجوزهاي لازم باشد مي‌تواند پروسه‌هاي ديگري را ايجاد كند كه ما به آن‌ها پروسه‌هاي بچه يا Child process مي‌گوييم كه مي‌توانند با آن‌ها تبادل اطلاعات كنند و تقاضاي انجام قسمتي از عملياتي كه به آن‌ها واگذار شده است را از آن‌ها داشته باشند.

دليل سوم: خيلي كم پيش مي‌آيد كه لينوكس مانند ويندوز يك‌باره هنگ كند و با صفحه آبي مرگ روبه‌رو شويم. زيرا سيستم‌عامل براي kernel خود، CPU و RAM خاص اختصاص مي‌دهد تا كارهاي جاريش را انجام دهد و براي برنامه‌هاي ديگر مانند مرورگر يا برنامه‌هاي كاربردي از User Space استفاده مي‌كند و نمي‌تواند به طور مستقيم به Kernel Space دسترسي داشته باشد.

البته ناگفته نماند كه اين كار مشكلاتي را نيز دربرخواهد داشت. به عنوان مثال، برنامه‌هاي User Space برخلاف ويندوز به تجهيزات سخت‌افزاري سيستم دسترسي ندارند و اگر برنامه نرم‌افزاري بخواهد با كارت شبكه كار كند مدير سيستم بايد براي كاربر برنامه اين دسترسي را ايجاد كند.

دليل چهارم: در لينوكس مدل امنيت خاصي برقرار است كه در آن همه كاربران تعريف شده براي سيستم با هم برابر نيستند (مانند‌ كاربر Root كه از بيشترين اختيارات برخوردار است) و هر كاربر معمولي بايد دسترسي استفاده از امكاني را داشته باشد. اين مدل امنيتي روي برنامه‌نويسي تأثيرات مثبتي خواهد گذاشت. مثلا‌ً مي‌توان به اين نكته اشاره كرد كه چون با توجه به مدل امنيتي لينوكس تهيه شده پس سيستمي هم كه توليد خواهد شد به يقين امنيت خوبي خواهد داشت.

دليل پنجم: اگر چه شما در لينوكس فكر مي‌كنيد صاحب CPU هستيد، اما اين‌طور نيست؛ شما به طور مجازي به CPU احاطه داريد. CPU در سيستم‌عامل لينوكس به صورت چندرشته‌اي كار مي‌كند و روي پردازشگر در زمينه اختصاص منابع و محاسبه براي هر Task مديريت خاصي وجود دارد.

دليل ششم: لينوكس به صورت پيش‌فرض به گونه‌اي طراحي شده كه چند كاربر بتوانند همزمان با هم كار كنند و برنامه‌هايي كه در محيط‌هاي لينوكسي نوشته و استفاده مي شوند بايد با دقت طراحي شوند. برنامه‌نويسان نبايد فكر كنند كه مي‌توانند به منابع دسترسي محض داشته باشند.

دليل هفتم: مهم‌ترين دليلي كه مي‌توان ذكر كرد اين است كه در سيستم‌عامل لينوكس مكانيزم IPC (سرنام Interprocess Communication) به برنامه‌ها امكان مي‌دهد تا اطلاعات و منابع خود را با حداقل مقدار Overhead به اشتراك گذارند. IPC به سه حالت مي‌تواند در سيستم‌هاي لينوكس كارايي داشته باشد:

1- صف‌هاي پيغام‌ها: از ساختار اطلاعاتي‌ FIFO (سرنام First in First Out) استفاده مي‌كند تا پروسه‌ها پيغام‌هاي كوتاه خود را به آساني با هم رد و بدل كنند.

2- Semaphores: يا به‌كارگيري علامت خاص براي نشان دادن اين‌كه مثلاً يك فايل خاص چه دسترسي دارد.

3- استفاده از حافظه مشترك براي كار در سيستم‌هايي كه چند كار را با هم انجام مي‌دهند.

به طور كلي، به نظر مي‌رسد در مقايسه با سيستم‌عامل‌هاي ديگر استفاده از لينوكس نه تنها از لحاظ اقتصادي به صرفه است، بلكه به دلا‌يلي مانند قابليت ارتقاي مناسب‌تر، اعتمادپذيري، امنيت و قدرت بيشتر براي برنامه‌نويسان حرفه‌اي محيط مناسب‌تري است.

البته هر فرد سليقه‌اي دارد برخي سادگي كار سيستم‌عامل ويندوز و وجود محيط‌هاي متنوع و قدرتمندي را كه در اختيار قرار مي‌دهد، مي‌پسندند. به نظر من هيچ اشكالي ندارد كه با همه سيستم‌عامل‌ها برنامه‌نويسي كنيم، اما لينوكس حرفه‌اي‌تر است. اگر با اين سيستم‌عامل كار كرده باشيد، منظور از اين سخن را خوب متوجه مي‌شويد.

مطالب مشابه ...







هفت دليل براي‌ برنامه‌نويسي با لينوكس!

۱۲-۸-۱۳۹۰ ۱۰:۵۳ عصر
جستجو یافتن همه ارسال های کاربر اهدا امتیازاهدای امتیاز به کاربر پاسخ پاسخ با نقل قول
 سپاس شده توسط senior engineer

برای بروز رسانی تاپیک کلیک کنید


مطالب مشابه ...
موضوع: نویسنده پاسخ: بازدید: آخرین ارسال
  [اموزشی] آموزش نصب لینوکس Ubuntu به کمک برنامه VirtualBox ♔ αϻἰг κнаη ♔ 0 4,958 ۱۱-۵-۱۳۹۱ ۰۴:۳۱ عصر
آخرین ارسال: ♔ αϻἰг κнаη ♔
  [اموزشی] روش های نصب برنامه ها در لینوکس ♔ αϻἰг κнаη ♔ 0 420 ۸-۲-۱۳۹۱ ۰۱:۲۳ صبح
آخرین ارسال: ♔ αϻἰг κнаη ♔
  [اموزشی] راهنماي پيشرفته نصب لينوكس ردهت نسخه8-قسمت چهارم ♔ αϻἰг κнаη ♔ 0 138 ۸-۲-۱۳۹۱ ۰۱:۱۱ صبح
آخرین ارسال: ♔ αϻἰг κнаη ♔
  [اموزشی] راهنماي پيشرفته نصب لينوكس ردهت نسخه8-قسمت سوم ♔ αϻἰг κнаη ♔ 0 165 ۸-۲-۱۳۹۱ ۰۱:۱۰ صبح
آخرین ارسال: ♔ αϻἰг κнаη ♔
  [اموزشی] راهنماي پيشرفته نصب لينوكس ردهت نسخه8-قسمت دوم ♔ αϻἰг κнаη ♔ 0 144 ۸-۲-۱۳۹۱ ۰۱:۰۹ صبح
آخرین ارسال: ♔ αϻἰг κнаη ♔
  [اموزشی]  راهنماي پيشرفته نصب لينوكس ردهت نسخه8-قسمت اول ♔ αϻἰг κнаη ♔ 0 158 ۸-۲-۱۳۹۱ ۰۱:۰۸ صبح
آخرین ارسال: ♔ αϻἰг κнаη ♔
  برنامه نویسی shell در لينوكس ♔ αϻἰг κнаη ♔ 0 844 ۱۲-۸-۱۳۹۰ ۱۰:۵۲ عصر
آخرین ارسال: ♔ αϻἰг κнаη ♔

پرش به انجمن:

کاربرانِ درحال بازدید از این موضوع: 1 مهمان