کداکسپلور | CodeExplore
7.92K subscribers
1.93K photos
299 videos
103 files
1.68K links
با کد اکسپلور یاد بگیر، لذت ببر و بروز باش ⚡️😉

سایت کد‌اکسپلور:
CodeExplore.ir
👨🏻‍💻 ارتباط با ما :
@CodeExploreSup
گروه :
@CodeExplore_Gap
تبلیغات در کد اکسپلور :
@CodeExploreAds
Download Telegram
کداکسپلور | CodeExplore
⚡️دوستان گلم قراره که یه بررسی معمولی و سریع داشته باشیم از زبان های python و ++C داخل این پست ما یه برنامه ساده رو مثل مرتب سازی حبابی از یک لیست اعداد با هردو زبان اجرا میکنیم و باهم بررسیشون میکنیم 🐍 اول از همه این برنامه ما با زبان عزیز python اینطوری…
👑دوستان عزیزم امروز میریم سراغ یه مقایسه دیگه بین زبان های Rust و Ruby
قراره که یه برنامه ساده رو که برای محاسبه مجموع اعداد هست با این دوتا زبان پیاده سازی کنیم

⭐️با استفاده از زبان Rust این برنامه به این صورت در میاد:
use std::io;

fn main() {
    let mut input = String::new();
    println!("Enter numbers separated by spaces:");

    io::stdin()
        .read_line(&mut input)
        .expect("Failed to read line");

    let numbers: Vec<i32> = input
        .trim()
        .split_whitespace()
        .map(|s| s.parse().expect("Please enter a number"))
        .collect();

    let sum: i32 = numbers.iter().sum();

    println!("The sum of the numbers is: {}", sum);
}


💎خب حالا اگه ما دقیقا بخایم همین برنامه رو با همین خروجی با استفاده از زبان Ruby بزنیم میشه این:
puts "Enter numbers separated by spaces:"
input = gets.chomp

numbers = input.split.map(&:to_i)

sum = numbers.reduce(:+)

puts "The sum of the numbers is: #{sum}"

بریم سراغ مقایسه این برنامه هامون، خروجی ها دقیقا یکی هست و فقط توی قدرت و توسعه زبان ها متفاوت بودن

◀️برنامه اول با استفاده از Rust توسعه داده شده، این زبان کاربرد بالا داره و مشکلات معمولی مدیریت حافظه داخلش نیست و تاکیدش بر ایمنی و جلوگیری از خطاهای زمان اجرای حافظه هستش
مزایاش اینه که کارایی نزدیک به زبان های سطح پایین مثل C و ++C داره و مدیریت حافظش ایمنه و از نشت حافظه و خطاهای دسترسی جلوگیری میکنه

◀️اما معایبش چیه؟
سینتکس پیچیده داره
زمان توسعش هم بیشتره

◀️حالا برنامه دوم که با Ruby توسعه داده شده، اول اینکه بگم این زبان سطح بالاس و با سینتکس بسیار ساده و خوانا مناسب برای توسعه سریع برنامه های وب و اسکریپت های ساده هستش
زمان توسعه کمتری داره
انعطاف پذیری بالا و مناسب برای پروتوتایپینگ سریع
کامیونیتیش هم بزرگه

معایبش میشه سرعت پایین تر نسبت به زبان های سطح پایین تر مثلا همین Ruby
مصرف حافظه بیشتر
و اینکه برای برنامه هایی که نیازمند بهینه سازی شدید هستن هم زیاد مناسب نیست

⭕️حالا شما داخل کامنت ها بگین که دیگه کدوم زبان هارو توی پست های بعدی تو مراحل مشابه مقایسه کنیم؟

#ruby #rust #comparison
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
8🔥3❤‍🔥2
⚡️خب از اونجایی که با مقایسه کردن زبان ها یسری نکات خوبی به دست آوردیم امروز هم میخایم به درخواست یکی از دوستان، زبان های Ruby و Python رو باهم مقایسه کنیم

داخل این پست میخایم برنامه محاسبه تعداد کلمات داخل یک جمله رو پیاده سازی کنیم و دقت کنین خروجی هردو زبان ها درکل یکیه و فقط زبانشون فرق میکنه

◀️پیاده سازی این برنامه با زبان Python به این صورت میشه:
python 
def count_words(sentence):
words = sentence.split()
return len(words)

# گرفتن ورودی از کاربر
sentence = input("Enter a sentence: ")

# محاسبه تعداد کلمات
word_count = count_words(sentence)

# چاپ تعداد کلمات
print(f"The number of words in the sentence is: {word_count}")


◀️همین برنامه رو با Ruby بخوایم پیاده کنیم این میشه:
def count_words(sentence)
words = sentence.split
return words.length
end

# گرفتن ورودی از کاربر
puts "Enter a sentence:"
sentence = gets.chomp

# محاسبه تعداد کلمات
word_count = count_words(sentence)

# چاپ تعداد کلمات
puts "The number of words in the sentence is: #{word_count}"


حالا بریم سراغ مقایسه:

1. سرعت اجرا (Performance)
‏Python:
معمولاً یه کمی از Ruby سریع‌تره، ولی هنوز به پای زبان‌های سطح پایین مثل C++ یا Rust نمی‌رسه.
از مفسر CPython به عنوان مفسر اصلی استفاده می‌کنه که یه سری بهینه‌سازی داره.
نسخه‌های دیگه مثل PyPy هم وجود دارن که سرعت بهتری دارن.

Ruby:
معمولاً یه کم از Python کندتره، ولی برای خیلی از کارهای معمولی کافی و خوبه.
از مفسر MRI (Matz's Ruby Interpreter) به عنوان مفسر اصلی استفاده می‌کنه.
نسخه‌های دیگه مثل JRuby و Rubinius هم هستن که سرعت بهتری دارن.

2. مدیریت حافظه (Memory Management)
‏Python:
مدیریت حافظه خودکار داره (Garbage Collection) که ممکنه روی عملکردش تأثیر بذاره.
مصرف حافظه بیشتری نسبت به بعضی زبان‌های دیگه داره.
Ruby:
اون هم مدیریت حافظه خودکار داره (Garbage Collection).
مصرف حافظه شبیه Python هست و حتی بعضی وقتا بیشتره.

3. راحتی نوشتن و نگهداری کد (Code Development and Maintenance)
‏Python:
سینتکس ساده و خوانایی داره که باعث میشه نوشتن و نگهداری کد راحت‌تر بشه.
جامعه کاربری بزرگی داره که باعث میشه منابع آموزشی و ابزارهای زیادی براش موجود باشه.

Ruby:
سینتکس خیلی شبیه به زبان آدمیزاد داره که نوشتن و خوندن کد رو راحت‌تر می‌کنه.
جامعه کاربری بزرگی داره، مخصوصاً برای توسعه وب با فریم‌ورک‌هایی مثل Ruby on Rails.

4. ابزارها و کتابخونه‌ها (Ecosystem and Libraries)
‏Python:
پر از کتابخونه‌ها و فریم‌ورک‌های مختلفه، از جمله برای علم داده، یادگیری ماشین، توسعه وب و اسکریپت‌نویسی.
کتابخونه‌های معروفی مثل NumPy، Pandas، TensorFlow و Django رو داره.

Ruby:
اون هم کتابخونه‌ها و فریم‌ورک‌های خوبی داره، ولی بیشتر برای توسعه وب تمرکز داره.
فریم‌ورک محبوب Ruby on Rails باعث شده که Ruby خیلی معروف بشه.

مقایسه در یک نگاه
هر دو زبان برای توسعه سریع و پروتوتایپینگ خوبن. اما Python به خاطر سرعت و ابزارهای بیشترش، برای کارهای مختلف به‌خصوص علم داده و یادگیری ماشین بهتره. Ruby با اینکه یه کم کندتره، به خاطر سادگی و خوانایی سینتکسش، برای توسعه وب خیلی محبوبه.

پس انتخاب بین Python و Ruby بستگی به نیازهای خاص پروژه‌تون داره. اگه سرعت و کاربردهای مختلف براتون مهمه، Python رو انتخاب کنید. اگه توسعه وب سریع و راحت مد نظرتونه، Ruby انتخاب خوبیه.

#python #ruby
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥115🔥4
دوتا کتاب رایگان و مفید برای یادگیری زبان برنامه نویسی Ruby

1. "Learn Ruby the Hard Way" by Zed A. Shaw

این کتاب یکی از منابع معروف برای یادگیری زبان روبی هستش که به شیوه‌ای کاملاً عملی و تمرینی به شما اصول برنامه‌نویسی با روبی را یاد میده. هر فصل شامل تمریناتی هستش که شما رو به چالش میکشه و به تدریج مفاهیم پیچیده‌تر میشه.


2. "The Book of Ruby" by Huw Collingbourne

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

#ruby #book
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
8❤‍🔥3🔥3😁2
⚡️روبی (Ruby) یه زبان برنامه‌نویسیه که تو سال 1995 توسط یوکیهیرو ماتسوموتو ساخته شد. هدفش این بود که برنامه‌نویسی رو راحت و لذت‌بخش کنه. به همین خاطر، روبی خیلی ساده و خوش‌خوانه.

💥ویژگی‌های روبی:
- شی‌ءگرا: تو روبی همه‌چیز یه شی‌ء محسوب میشه، حتی اعداد و رشته‌ها.
- سینتکس راحت: کدهای روبی ساده و مثل جمله عادی به نظر میان.
- انعطاف‌پذیر: با روبی می‌تونی به راحتی کدهات رو تغییر بدی و بهشون چیزهای جدید اضافه کنی.
- کتابخونه‌های زیاد: روبی پر از کتابخونه‌های آماده است که بهت کمک می‌کنه سریع‌تر کد بزنی.
- میکسین‌ها: به جای ارث‌بری پیچیده، می‌تونی ویژگی‌ها رو به راحتی به کلاس‌ها اضافه کنی.

💎 کاربردهای روبی:
- توسعه وب: روبی برای ساخت سایت‌ها خیلی معروفه، مخصوصاً با فریمورک روبی آن ریلز (Ruby on Rails).
- اسکریپت‌نویسی: برای کارهای خودکار و سریع‌نوشتن اسکریپت‌ها عالیه.
- پردازش داده‌ها: میشه ازش برای جمع‌آوری و تحلیل داده‌ها استفاده کرد.

#ruby
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥163❤‍🔥2😁1
⚠️Ruby-SAML در معرض حملات XML signature wrapping قرار گرفت.

▶️ این مقاله به بررسی آسیب‌پذیری جدید CVE-2024-45409 می‌پردازد که از نوع حملات XML signature wrapping است و پیاده‌سازی اصلی SAML در Ruby را تحت تاثیر قرار داده است. این نقص امنیتی به مهاجمان اجازه می‌دهد تا به‌عنوان هر کاربر دلخواهی وارد سیستم شوند. همچنین، به تاثیرات این حمله بر پلتفرم‌های بزرگی مانند GitLab و دلایل تکرار این مشکل پرداخته و راهکارهایی برای مقابله با آن ارائه می‌شود.

🌐 برای مشاهده کامل مقاله کلیک کنید

#ruby #rubysaml #cybersecurity #xmlsignaturewrapping
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
20❤‍🔥7🔥3