آموزش صفر تا صد برنامه نویسی روبی (15 درس+ جزوه pdf)
برای آموزش زبان برنامه نویسی روبی از ویدیوهای امیرحسن عظیمی در یوتیوب بهره گرفته ایم.، بعد از حدود ۲ هفته گشت و گذار در اینترنت و از بین هزاران ویدیو، یک مجموعه بی نقص و کامل ویدیویی را برای یادگیری سریع این نرم افزار گلچین کرده ایم. این مجموعه کامل برای شروع از صفر و برای همه سطوح مناسب می باشد. بعد از آن نیز بهترین جزوه PDF فارسی موجود در اینترنت را جهت تکمیل یادگیری می توانید دانلود کنید.
توضیحاتی درباره زبان روبی
روبی (به انگلیسی: Ruby) یک زبان برنامهنویسی انعطافپذیر، وب،تست نفوذ، پویا و شیءگرا است. روبی ویژگیهای نگارشی پرل و شی گرایی اسمالتاک را با هم در خود دارد. زبان روبی در سالهای میانی دهه ۱۹۹۰ توسط یوکیهیرو ماتسوموتو در ژاپن اختراع شد. ویژگیهای گوناگون زبانهای پرل، لیسپ، اسمالتاک و آیفل الهامبخش ماتسوموتو در ساخت روبی بودند.
زبان روبی پارادایمهای گوناگون برنامهنویسی از جمله برنامهنویسی تابعی، شیء گرا و بازتابی را پشتیبانی میکند، دارای گزارهها و متغیرهای پویا و مدیریت حافظه خودکار است. (ویکی پدیا)
یکی از ویژگی های برتر یک برنامه نویسی، متن باز بودن آن است که برنامه نویسی روبی آن را داراست. این ویژگی باعث می شود تا یادگیری این برنامه نویسی هم آسوده و هم بدون هزینه انجام شود.
روبی ویژگیهای نگارشی پرل و شیگرایی اسمال تاک را با هم در خود دارد. زبان روبی در سالهای میانی دهه ۱۹۹۰ توسط یوکیهیرو ماتسوموتو در ژاپن اختراع شد. ویژگیهای گوناگون زبانهای پرل، لیسپ، اسمالتاک و آیفل الهام بخش ماتسوموتو در ساخت روبی بودند. زبان روبی پارادایمهای گوناگون برنامه نویسی از جمله برنامه نویسی تابعی، شیء گرا و بازتابی را پشتیبانی میکند، دارای گزارهها و متغیرهای پویا و مدیریت حافظه خودکار است. نسخه فعلی این زبان Ruby 1.9.1 است که به زبان سی و بصورت زبانی با مفسر تکگذره پیادهسازی شده است. تا سال ۲۰۱۰، گونههای مختلفی از زبان روبی توسعه یافتهاند که از میان آنها میتوان به جیروبی، روبینوس، مکروبی، آیرنروبی و هاتروبی اشاره کرد.
ویژگی های اصلی زبان روبی:
- کاملاً شی گرا
- داینامیک
- نحو کوتاه و انعطافپذیر
- چهار سطح از حوزه دید متغیر شامل: global, class ,instance ,local
- مدیریت استثناء
- پشتیبانی از iterators و closures (بر اساس تبادل بلوکهای کد)
- پشتیبانی محلی از regular expressions (شبیه پرل) در سطح زبان
- سربارگزاری عملگرها
- جمعآوری زباله خودکار
- قابلیت حمل بالا
- در همه سیستمعامل اصلی پیادهسازی
- و …
موارد آموزش داده شده در این پکیج رایگان
- آشنایی با زبان روبی
- روبی چیست؟
- تاریخچه روبی
- ویژگی های روبی
- پیاده سازی های مختلف از روبی
- مقایسه روبی با دیگر زبان های برنامه نویسی
- روبی در سیستم عامل های مختلف
- نصب روبی در ویندوز (Windows)
- نصب روبی در مک (Mac)
- نصب روبی در لینوکس (Linux)
- معرفی چند ادیتور و محیط توسعه مناسب برای کدنویسی به زبان روبی
- نصب و راه اندازی دو محیط نمونه Aptana Studio و Atom.io Editor برای روبی
- و …
منبع این ویدیوها کانال یوتیوب حسن عظیمی هست که از اینجا می توانید دنبال کنید.
دانلود فیلم ها+ جزوه پی دی اف
حجم: ۶۰۰ مگابایت
سطح: از صفر تا صد
نسخه آموزش داده شده: مناسب برای همه سطوح بدون پیش نیاز
به دنبال یادگیری سریع تر، حرفه ای تر، کامل تر و با کیفیت فول اچ دی هستید؟
چرا زبان برنامهنویسی روبی (Ruby) در میان توسعهدهندگان محبوب است؟
یکی از ویژگیهای منحصربهفرد و جذاب زبان روبی برای توسعهدهندگان، انعطافپذیری بالای آن است. برای مثال، در زبانهایی مانند Python، ساختار مشخصی برای سازماندهی کد وجود دارد که ممکن است بازاستفاده از بخشهای کد یا استفاده از آنها در پروژههای دیگر را دشوار کند. اما در روبی، هیچ ساختار ثابتی وجود ندارد و توسعهدهندگان میتوانند کدهای خود را به هر شکلی که بخواهند سازماندهی کنند. علاوه بر این، دلایل متعددی برای محبوبیت روبی در میان توسعهدهندگان وجود دارد:
1. زبانی قدرتمند و همهکارهروبی برای افزایش بهرهوری توسعهدهندگان طراحی شده است. این زبان قابلیتهای متنوعی ارائه میدهد که به توسعهدهندگان امکان میدهد کدهای سادهای بنویسند که کارهای پیچیدهای انجام میدهند (این ویژگی بهعنوان Being Ruby شناخته میشود).
2. یادگیری آساناز آنجا که روبی قوانین سختگیرانهای برای نحوه نوشتن و سازماندهی کد ندارد، برنامهنویسان تازهکار میتوانند بهسرعت با مفاهیم اولیه آن آشنا شوند. همچنین منابع آموزشی زیادی بهصورت آنلاین در دسترس هستند که یادگیری روبی را آسانتر میکنند.
3. جامعه کاربری فعالمحبوبیت روبی در سالهای اخیر منجر به شکلگیری یک شبکه حمایتی قوی شده است. شما هرگز هنگام یادگیری یا استفاده از روبی احساس تنهایی نخواهید کرد! یکی از منابع مفید برای کاربران تازهکار، انجمن r/ruby در Reddit است که اعضا در آن پرسشهای خود را مطرح میکنند و پاسخ میگیرند.
4. متنباز بودنروبی یک زبان متنباز است، به این معنا که کد آن بهصورت رایگان در دسترس همگان قرار دارد و میتوان آن را تغییر داد. این ویژگی به توسعه تعداد زیادی کتابخانه، ابزارها و فریمورکهای متنوع کمک کرده است که روبی را قدرتمندتر و استفاده از آن را آسانتر کردهاند.
5. استفاده در صنایع مختلفروبی به دلیل انعطافپذیریاش در صنایع گوناگون محبوب است. این زبان به یک صنعت خاص محدود نمیشود و توسعهدهندگان میتوانند از آن برای اهداف مختلف استفاده کنند. کاربردهای روبی را میتوان در صنایع متنوعی مانند مالی، تجارت الکترونیک، وبلاگنویسی و بازیسازی مشاهده کرد.
تکنیکها و مفاهیم تسلط بر زبان Ruby
1. تخصیص باقیمانده آرایه به یک متغیر
استفاده از الگوی rest در تجزیه آرایه به توسعهدهندگان امکان میدهد تا عناصر خاصی از آرایه را جدا کرده و باقیمانده را به یک متغیر اختصاص دهند. برای مثال:
first, *rest = [1, 2, 3, 4, 5]
puts first # خروجی: 1
puts rest # خروجی: [2, 3, 4, 5]
این روش زمانی مفید است که فقط به چند عنصر اول آرایه نیاز دارید و میخواهید باقیمانده را به صورت جداگانه مدیریت کنید.
2. تجزیه آرایه در آرگومانهای بلوک
Ruby به شما امکان میدهد تجزیه آرایه را مستقیماً در آرگومانهای بلوک انجام دهید. برای مثال:
array = [[:key1, 'value1'], [:key2, 'value2']]
array.each do |key, value|
puts "#{key}: #{value}"
end
خروجی:
key1: value1
key2: value2
هر زیرآرایه تجزیه میشود و عناصر آن به متغیرهای key و value اختصاص داده میشوند که کد را تمیز و خوانا میکند.
3. استفاده از Hash#default_proc بهعنوان مقدار پیشفرض
هشهای Ruby میتوانند از یک بلوک برای تنظیم مقادیر پیشفرض به صورت پویا استفاده کنند. این ویژگی برای هشهای تو در تو بسیار مفید است، جایی که رفتار پیشفرض باید بهطور یکنواخت اعمال شود.
مثال:
layers = Hash.new { |hash, key| hash[key] = Hash.new(&hash.default_proc) }
# دسترسی به کلیدهای تعریفنشده، بلوک پیشفرض را اجرا میکند
layers[:layer_1][:layer_2][:layer_3] = 'value'
puts layers[:layer_1][:layer_2][:layer_3] # خروجی: "value"
puts layers[:layer_1][:layer_2][:layer_4] # خروجی: {}
در اینجا، default_proc باعث میشود رفتار بلوک به ورودیهای تو در تو گسترش یابد و هشهای تو در تو به صورت خودکار ایجاد شوند.
4. استفاده از HEREDOC و زنجیرهسازی متدها
سینتکس HEREDOC در Ruby ایجاد رشتههای چندخطی را ساده میکند و امکان زنجیرهسازی متدها را مستقیماً روی رشته فراهم میکند. برای مثال:
query = <<-SQL.squish
SELECT *
FROM users
WHERE active = true
SQL
puts query # خروجی: "SELECT * FROM users WHERE active = true"
نکات کلیدی:
- متد .squish (موجود در Rails) فاصلههای اضافی و کاراکترهای خط جدید را حذف میکند.
- این روش برای کوئریهای SQL، لاگها یا متنهای فرمتشده در برنامههای Ruby ایدهآل است.
5. عملگرهای یگانه برای اشیای غیر عددی
Ruby امکان تعریف عملگرهای یگانه (+@، -@) را برای رفتار سفارشی در کلاسها فراهم میکند. برای مثال:
class FeatureToggle
attr_reader :enabled
def initialize(enabled)
@enabled = enabled
end
def -@
@enabled = false
end
def +@
@enabled = true
end
end
feature = FeatureToggle.new(true)
puts feature.enabled # خروجی: true
-@feature
puts feature.enabled # خروجی: false
با بازنویسی -@ و +@، میتوانید عملگرهای شهودی برای تغییر وضعیت یا اعمال رفتارهای خاص ایجاد کنید.
هر گونه سوالی در زمینه این مطلب دارید در بخش نظرات مطرح کنید تا به آن پاسخ دهیم.
اینهمه چند ماه دوره و پک آنلاین روبی اینور اونور پریدم. کاش یکی بود همون اول می گفت بیا این دوره فروشگاه شما رو بگیرم خودمو راحت کنم. واقعا صفر تا صد هست آموزشش و کاملا پروژه ای و عملی. بلافاصله که اومدم توی شرکت برنامه نویسی مورد علاقه مهرکاری که میخوان ازم رو با همین چیزایی که از دوره تون یاد گرفتم دارم انجام میدم بدون مشکل. واقعا دست مریزاد. از شی گرایی و کار با ادیتورها و ... هیچ چییییزی کم نداره. این آموزشهای رایگانتونم بندازین دور وقت تلف کردنه :/
پاسخخوشحالم که موثر واقع شده. بله به عنوان برنامه نویس هفته ها وقت گذاشتم تا این دوره رو گلچین کردم. در مورد ویدیوهای رایگان هم اینطوری نفرمایید خیلی ها توان خرید پک اموزشی رو ندارن با وجود هزینه اندکش و تا میشه باید کمک کرد بخصوص وقتی علم و یادگیری مطرح ه
بالاخره تعریف کردی یا تکذیب کردی ؟