CleverDevs
به کانال کلوردوز خوش اومدین سعی میکنیم چیزایی که بنظر کاربردی هستن رو باهاتون به اشتراک بزاریم 🔥لینوکس 🔥برنامه نویسی فرانتاند 🔥برنامه نویسی بکاند 🔥اخبار تکنولوژی و... 💢~> @mmdrsdev
Больше📈 Аналитический обзор Telegram-канала CleverDevs
Канал CleverDevs (@cleverdevs) языкового сегмента Фарси является активным участником. Сейчас сообщество объединяет 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) канал поддерживает актуальность и высокий уровень охвата публикаций. Аналитика показывает, что аудитория активно взаимодействует с контентом, что делает его важной точкой влияния в категории Технологии и приложения.
/** The day of the month. */ private int dayOfMonth;7 - Commented-Out Code کامنت کردن کد ها هم یکی از بدترین نوع کامنت هاست 8 - Too Much Information یعنی اینکه تو کامنت اطلاعات زیادی بدی انقدر زیاد باشه خوندنش کلی وقت ببره این فصل هم تموم شد و میتونید لیستش رو اینجا ببینید #CleanCode @CleverDevs - @CleverDevsGp
// این کلاس مسئولیت مدیریت رویدادها رو داره
class EventEmitter {
constructor() {
this.events = {}; // اینجا رویدادها و شنوندههاشون رو نگه میداریم
}
// این متد یه شنونده جدید برای یه رویداد خاص ثبت میکنه
on(event, listener) {
if (!this.events[event]) {
this.events[event] = [];
}
this.events[event].push(listener);
}
// این متد همه شنوندههای یه رویداد خاص رو اجرا میکنه
emit(event, args) {
if (this.events[event]) {
this.events[event].forEach(listener => listener(args));
}
}
}
حالا یه کلاس میسازیم که کاربرها رو مدیریت کنه و وقتی کاربری اضافه یا تغییر کرد، رویدادهای مناسب رو صادر کنه:
// این کلاس مسئول مدیریت کاربران و رویدادهای مرتبط با اوناست
class UserManager extends EventEmitter {
constructor() {
super();
this.users = []; // لیست کاربران رو اینجا نگه میداریم
}
// این متد یه کاربر جدید اضافه میکنه
addUser(user) {
this.users.push(user);
this.emit('userAdded', user); // رویداد اضافه شدن کاربر رو صادر میکنیم
}
// این متد اطلاعات یه کاربر رو تغییر میده
updateUser(id, newUser) {
const index = this.users.findIndex(user => user.id === id);
if (index !== -1) {
this.users[index] = { ...this.users[index], ...newUser };
this.emit('userUpdated', this.users[index]); // رویداد بهروزرسانی کاربر رو صادر میکنیم
}
}
}
حالا از UserManager استفاده میکنیم و شنوندههای مختلفی برای رویدادها ثبت میکنیم:
const userManager = new UserManager();
// ثبت یه شنونده برای وقتی که یه کاربر جدید اضافه میشه
userManager.on('userAdded', (user) => {
console.log(`کاربر جدید اضافه شد: ${user.name}`);
// اینجا میتونیم کارهای دیگهای هم انجام بدیم، مثل بهروزرسانی رابط کاربری
});
// ثبت یه شنونده برای وقتی که اطلاعات یه کاربر تغییر میکنه
userManager.on('userUpdated', (user) => {
console.log(`اطلاعات کاربر بهروزرسانی شد: ${user.name}`);
// اینجا میتونیم کارهای دیگهای هم انجام بدیم، مثل بهروزرسانی رابط کاربری
});
// اضافه کردن یه کاربر جدید
userManager.addUser({ id: 1, name: 'Ali', age: 30 });
// نتیجه: کاربر جدید اضافه شد: Ali
// تغییر اطلاعات یه کاربر
userManager.updateUser(1, { name: 'Hassan', age: 35 });
// نتیجه: اطلاعات کاربر بهروزرسانی شد: Hassan
حالا فرض کن میخوای هر وقت کاربری اضافه شد یا تغییر کرد، علاوه بر چاپ توی کنسول، یه نوتیفیکیشن هم نشون بدی:
// ثبت شنونده برای نوتیفیکیشنها
userManager.on('userAdded', (user) => {
alert(`کاربر جدید اضافه شد: ${user.name}`);
});
userManager.on('userUpdated', (user) => {
alert(`اطلاعات کاربر بهروزرسانی شد: ${user.name}`);
});
از این معماری در drawio استفاده شده.
ری اکت و ویو و همچنین Apache Kafka از این معماری استفاده میکنه، اگر علاقه داشتین مثال های بیشتری باهاش میزنیم یا تو یک برنامه ای ازش استفاده میکنیم اصلا
موفق باشید❤️
#Event_driven_Architecture
@CleverDevs - @CleverDevsGp$$typeof propertyتوی React وقتی یه کامپوننت رو لاگ میگیریم، یه پراپرتی با این اسم میبینیم و هدفش جلوگیری از حملاتی مثل Cross-Site Scripting هست؛ حالا چطور انجام میشه؟ مقدار این پراپرتی یه Symbol هست، و یکی از Privitive تایپهای Js هست که نمیتونه به JSON تبدیل بشه، بخاطر همین اگه هکر بخواد یه کامپوننت فیک به سایتمون ارسال کنه ریکت متوجه این قضیه میشه. #React #Js @CleverDevs - @CleverDevsGp
رابط کاربری گرافیکی برای Aria2 دانلود چند بخشی فایل زمانبندی دانلودها صفبندی دانلودها پیدا و دانلود کردن ویدئو از DailyMotion، Vimeo، Youtube، Aparat و ...اگه به لینوکس مهاجرت کردید و دنبال یه جایگزین برای IDM میگردید یا توی سایر سیستم عامل ها میخواید از یه دانلود منیجر آزاد و اوپن سورس استفاده کنید پرسپولیس گزینه مناسبیه اطلاعات بیشتر و نحوه نصب و استفاده : https://persepolisdm.github.io/fa/ #tools #openSource @CleverDevs - @CleverDevsGp
git tag -a v1.0.0 -m "version 1.0.0"
که سوئیچ a به Annotated اشاره میکنه و سوئیچ m هم پیام مربوط به تگه (میتونید توی کامندتون پیام رو ست نکنید در این صورت گیت ادیتور رو براتون باز میکنه تا بنویسید)
نوع دوم lightweight tags هست که هیچ اطلاعات اضافه ای درباره تگ نمیده و فقط به اون کامیتی که تگ روش زده شده اشاره میکنه که بیشتر برای نشانه گذاری های موقت بدرد بخوره برای ایجاد این تگ ها هم باید کامند زیر رو بزنید
git tag v1.0.0
تگ های lightweight دیگه سوئیچ های m و a رو نمیگیرن
اگه خواستید بیشتر دربارش بدونید پیشنهاد میکنم به لینک زیر یه نگاه بندازید
https://www.freecodecamp.org/news/git-tag-explained-how-to-add-remove/
#git
@CleverDevs - @CleverDevsGp