CleverDevs
به کانال کلوردوز خوش اومدین سعی میکنیم چیزایی که بنظر کاربردی هستن رو باهاتون به اشتراک بزاریم 🔥لینوکس 🔥برنامه نویسی فرانتاند 🔥برنامه نویسی بکاند 🔥اخبار تکنولوژی و... 💢~> @mmdrsdev
إظهار المزيد📈 نظرة تحليلية على قناة تيليجرام CleverDevs
تُعد قناة CleverDevs (@cleverdevs) في القطاع اللغوي Farsi لاعباً نشطاً. يضم المجتمع حالياً 11 136 مشتركاً، محتلاً المرتبة 11 016 في فئة التكنولوجيات والتطبيقات والمرتبة 29 504 في منطقة إيران.
📊 مؤشرات الجمهور والحراك
منذ تأسيسه في невідомо، حقق المشروع نمواً سريعاً وجمع 11 136 مشتركاً.
بحسب آخر البيانات بتاريخ 20 أكتوبر, 2026، تحافظ القناة على نشاط مستقر. خلال آخر 30 يوماً تغيّر عدد الأعضاء بمقدار 824، وفي آخر 24 ساعة بمقدار 6، مع بقاء الوصول العام مرتفعاً.
- حالة التحقق: غير موثّقة
- معدل التفاعل (ER): يبلغ متوسط تفاعل الجمهور 31.56%. وخلال أول 24 ساعة من النشر يحصد المحتوى عادةً 14.13% من ردود الفعل نسبةً إلى إجمالي المشتركين.
- وصول المنشورات: يحصل كل منشور على متوسط 3 512 مشاهدة. وخلال اليوم الأول يجمع عادةً 1 572 مشاهدة.
- التفاعلات والاستجابة: يتفاعل الجمهور بانتظام؛ متوسط التفاعلات لكل منشور يبلغ 17.
- الاهتمامات الموضوعية: يركز المحتوى على مواضيع رئيسية مثل کاراکتر, لینوکس, باگ, ویندوز, جا.
📝 الوصف وسياسة المحتوى
يصف المؤلف القناة بأنها مساحة للتعبير عن الآراء الذاتية:
“به کانال کلوردوز خوش اومدین
سعی میکنیم چیزایی که بنظر کاربردی هستن رو باهاتون به اشتراک بزاریم
🔥لینوکس
🔥برنامه نویسی فرانتاند
🔥برنامه نویسی بکاند
🔥اخبار تکنولوژی و...
💢~> @mmdrsdev”
بفضل وتيرة التحديث المرتفعة (أحدث البيانات بتاريخ 21 أكتوبر, 2026) تحافظ القناة على حداثتها ومستوى وصول مرتفع. وتُظهر التحليلات تفاعلاً نشطاً من الجمهور، ما يجعلها نقطة تأثير مهمة ضمن فئة التكنولوجيات والتطبيقات.
import CleverDevs from telegram
function helloWorld(){
console.log("hello world");
}
function sendStarRaction(){
console.log('send star reaction on CleverDevs Posts');
}
تو کد بالا بین بخش های مختلف کد فاصله ای نذاشتیم حالا اگه کدمون بیشتر و پیچیده تر بشه خوندنش خیلی سخت تر میشه حالا اگه بیایم و مثل کد پایین یه خط خالی بین هر بخشی از کد بزاریم خوندنش به مراتب راحت تر میشه
import CleverDevs from telegram
function helloWorld(){
console.log("hello world");
}
function sendStarRaction(){
console.log('send star reaction on CleverDevs Posts');
}
حالا چون تو این پست نمیشد مثال بزرگتری زد اونقدرا تفاوتشون معلوم نمیشه ولی تو کدبیس های بزرگتر رعایت همین یه موضوع تفاوت چشمگیری ایجاد میکنه
#CleanCode
@CleverDevs - @CleverDevsGpfunction createNewUser($name , $city = "Tehran" , $age = "18", $gender = ""){
$user = new User();
$user->name = $name;
$user->city = $city;
$user->age = $age;
$user->gender = $gender;
$user->save();
}
یک تابع سادس که میاد یه کاربر اضافه میکنه. تابع برای سه تا از پارامتر هاش مقدار دیفالت داره یعنی اگه پاسش ندیم اون مقدار دیفالت رو در نظر میگیره حالا فک کنید بخوایم یه کاربر اضافه کنیم و میخوایم شهر و سنش همون مقدار دیفالت باشه ولی جنسیتش رو ست کنیم اگه بخوایم پیشفرض و بر اساس ترتیب آرگومان هارو پاس بدیم نیازه که حتما مقدار شهر و سن رو هم توی آرگومان ها پاس بدیم تا بتونیم مقدار جنسیت رو بدیم اما در عوض میتونیم از طریق اسم پارامتر ها آرگومان هارو پاس بدیم مثل کد پایین
createNewUser(name : "Mammad" , gender : "male");حالا اگه اسم آرگومان هارو مشخص نمیکردیم مجبور بودیم هر چهارتا آرگومان رو پاس بدیم و خب کدوم شلوغ تر و سخت تر میشد این قابلیت برای توابعی که تعداد پارامتر زیادی دارن و بیشترشون هم آپشنال هستن خیلی کاربردیه اگه میخواید بیشتر در بارش بخونید میتونید به این لینک سر بزنید https://stitcher.io/blog/php-8-named-arguments #php @CleverDevs - @CleverDevsGp
Bye Bye try-catch blocks!
?=مثل اینکه یه آپدیت برای Js قراره بیاد و ارور هندلینگ رو متحول کنه. الان، برای ارور هندلینگ از try-catch استفاده میکنیم، ولی توی این آپدیت قراره Safe Assignment Operator اضافه شه، که خیلی سینتکس تمیز تری داره:
async function getData() {
const [error, response] ?= await fetch("https://api.example.com/data");
if (error) return handleError(error);
return response;
}
چندتا مزیتش:
👈 نستینگ و تودرتو بودن کدها کمتر میشه.
👈 ایپیآی های مختلف، ممکنه ارور هندلینگ متفاوتی داشته باشن، و با این روش دیگه نیاز نیست توی بلاک catch شرطهای مختلف بذاریم.
👈 میتونیم با استفاده از Symbol.result ارور
هندلینگ سفارشی داشته باشیم، اینجوری:
function example() {
return {
[Symbol.result]() {
return [new Error("Error message"), null];
},
};
}
const [error, result] ?= example();
// البته فعلا چیزی برای جایگزینی بلاک finally گفته نشده که میتونه یکی از معایبش باشه.
#Js #Es Source
@CleverDevs @CleverDevsGpTypography Responsiveبجای استفاده از مدیا کوئری، یه تکنیک برای ریسپانسیو کردن تایپوگرافیها اینه که: 1. فونتسایز اون متن توی کوچیکترین حالت سایت رو بدست میارید مثلا کوچیکترین حالت 320px هست و فونتسایز اون متن هم تو این حالت 16px. 2. همینکارو برای بزرگترین حالت هم انجام میدیم مثلا 1280px حداکثر سایز سایته و تو این حالت فونتسایز 28px هست. 3. حالا این اطلاعات رو طبق عکس وارد این سایت میکنیم: Fluid Typography Calculator 4. و بوم یه فانکشن clamp بهمون میده و فونتسایز اون متن رو برابر باهاش قرار میدیم. #Design #CSS #Tool @CleverDevs @CleverDevsGp
https://www.figma.com/@prahaکلی قالب استاندارد داره که تو هر کدوم حالتهای مختلف موبایل و لپتاپ و دسکتاپ رو طراحی کرده. #Design #Portfolio #Figma @CleverDevs @CleverDevsGp
