روبی چیست
در این مطلب با مقاله Ruby چیست؟ بررسی زبان برنامه نویسی روبی و منابع آموزشی از وب سایت آموزش برنامه نویسی سورس باران در خدمت شما هستیم. در این مقاله به معرفی زبان برنامه نویسی Ruby ،مشخصات، کاربردها، مزایا و معایب روبی خواهیم پرداخت. و در انتها برخی از منابع آموزش روبی را به شما عزیزان معرفی می کنیم. لطفا با ما همراه باشید…
Ruby چیست؟
Ruby یا روبی یکی دیگر از زبانهای برنامه نویسی انعطاف پذیر و شی گرا می باشد .زبان روبی رسماً در روز ۲۴ فوریه ۱۹۹۳ (۵ اسفند ۱۳۷۱) توسط یوکیهیرو ماتسوموتو معرفی شد. او دنبال ساخت زبانی بود که امکانات متعادلی برای برنامه نویسی تابعی و برنامه نویسی دستوری برای برنامه نویس فراهم آورد. ماتسوموتو درباره انگیزهاش برای ساخت روبی میگوید: «در جستجوی زبانی بودم که از پایتون شیءگراتر و از پرل قدرتمندتر باشد. برای همین تصمیم گرفتم خودم آن را بسازم».
روبی ویژگیهای نگارشی پرل و شیگرایی اسمال تاک را با هم در خود دارد. زبان روبی در سالهای میانی دهه ۱۹۹۰ توسط یوکیهیرو ماتسوموتو در ژاپن اختراع شد. ویژگیهای گوناگون زبانهای پرل، لیسپ، اسمالتاک و آیفل الهام بخش ماتسوموتو در ساخت روبی بودند. زبان روبی پارادایمهای گوناگون برنامه نویسی از جمله برنامه نویسی تابعی، شیء گرا و بازتابی را پشتیبانی میکند، دارای گزارهها و متغیرهای پویا و مدیریت حافظه خودکار است. نسخه فعلی این زبان Ruby 1.9.1 است که به زبان سی و بصورت زبانی با مفسر تکگذره پیادهسازی شده است. تا سال ۲۰۱۰، گونههای مختلفی از زبان روبی توسعه یافتهاند که از میان آنها میتوان به جیروبی، روبینوس، مکروبی، آیرنروبی و هاتروبی اشاره کرد.
سازنده زبان برنامه نویسی روبی یوکیهیرو ماتز ماتسوموتو میگوید روبی برای افزایش توان تولید و تفریح برنامه نویسان طراحی شده است و از اصل رابط کاربری خوب پیروی میکند. او تأکید میکند که طراحی سامانهها باید بیشتر روی نیاز انسانها متمرکز باشد تا رایانهها. اغلب مردم، به ویژه برنامه نویسان، روی ماشینها تمرکز میکنند. آنها فکر میکنند ‘با انجام این کار ماشینها سریعتر میشوند، ماشینها در اجرا موثرتر میباشند و …’ آنها بر ماشین تمرکز میکنند، اما در حقیقت ما نیاز داریم که به انسانها توجه کنیم، اینکه چگونه آنها به برنامه نویسی توجه دارند و یا چگونه به اجرای برنامه های ماشین دقت میکنند.
برنامه نویسی روبی
روبی برای تعقیب هدف کمترین غافلگیری بیان شدبه این معنی که زبان باید طوری رفتار کند که کمترین گیجکنندگی را برای استفادهکنندههای آن داشته باشد. ماتسوموتو همچنین اظهار میدارد که هدف اولین طراحی او درست کردن زبانی که خودش از آن لذت ببرد بود. این کار با کم کردن کار برنامه نویس و ابهامات منطقی میباشد. اما کمترین غافلگیری هنوز خیلی به بیان زبان برنامه نویسی روبی نزدیک است. افراد ناشی شاید این را به این معنا تعبیر کنند که رفتارهای روبی سعی در متصل کردن اشتراکات رفتارهای دیگر زبانها را دارد. در بحث ماه می ۲۰۰۵ در روزنامه ‘کامپ.لنگ.روبی’ ماکسوموتو تلاش کرد که روبی را از مینیمم غافلگیری دور کند. توضیح اینکه هر شانس طراحی بعضیها را متعجب میکند. او از استاندارد خود برای ارزیابی غافلگیری استفاده کرد. ماتسوموتو این را در یک گزارش مطرح ساخت. ‘همه یک پیشینه شخصی دارند، بعضیها از جانب پایتون میآیند بعضیهای دیگه از پرل و آنها ممکن است از بعضی از جنبههای متفاوت زبان غافلگیر شوند. سپس آنها به من میگویند ما از بعضی از جنبههای زبان غافلگیر شدیم، بنابرین روبی قانون کمترین غافلگیری را زیر پا گذاشته است. صبر کنید… هدف کمترین غافلگیری فقط برای شما نیست. این هدف به معنای کمترین غافلگیری ممکن برای بیان من میباشد. این به معنای کمترین غافلگیری بعد از آموزش کامل زبان است. برای مثال من قبل از طراحی روبی برنامه نویس سی پلاس پلاس بودم. من منحصراً دو، سه سال در سیپلاسپلاس برنامه نوشتم و بعد از دو سال برنامهنویسی با آن، هنوز مرا متعجب میکرد.
زبان برنامه نویسی روبی بیشتر به خاطر وجود فریمورک محبوبش تحت عنوان Ruby on Rails شناخته میشود چرا که سورسکد نوشته شده با این فریمورک به راحتی خوانده شده و این بزرگترین لطفی است که این فریمورک در حق افراد مبتدی میکند. از ویژگیهای این زبان پرکاربرد در توسعهٔ وب میتوان به دینامیک (پویایی) و شیئگرا بودن اشاره کرد. روبی یک زبان سمت سرور قدرتمند است و به همین دلیل وبسایتهای زیادی از جمله GitHub و Groupon از روبی استفاده میکنند.
کاربرد زبان برنامه نویسی روبی
توسعهٔ وب
مزایای برنانه نویسی روبی
برخورداری از فریمورک محبوبی تحت عنوان Ruby on Rails
کدنویسی سریع با استفاده از RoR
کاملاً شییٔگرا
معایب زبان برنانه نویسی روبی
فریمورک RoR اساساً بر پایهٔ مجموعهای از میانبرها است و به خاطر سپردن همین میانبرها تاحدودی کار را برای مبتدیها دشوار میسازد.
برخی از امکانات Ruby
کاملاً شی گرا
داینامیک
انعطافپذیر
پشتیبانی از iterators و closures
پشتیبانی محلی از regular expressions
سربارگزاری عملگرها
قابلیت حمل بالا
در تمام سیستمعامل های اصلی پیادهسازی می شود
اتصال بومی API ها در C
کتابخانه استاندارد بزرگ
منبع
https://www.sourcebaran.com/
گسترش پذیری وب سرویس دانش برتر مدیریت کاربران ایجاد صفحه درباره ما برنامه نویسان مدیریت محتوا طراحی وب سایت طراحی سایت