Dev Perfects – Telegram
Dev Perfects
40 subscribers
9.23K photos
1.26K videos
468 files
13K links
بخوام خیلی خلاصه بگم
این کانال میاد مطالب کانالای خفن تو حوزه تکنولوژی و برنامه نویسی رو جمع میکنه

پست پین رو بخونید
https://news.1rj.ru/str/dev_perfects/455


ارتباط:
https://news.1rj.ru/str/HidenChat_Bot?start=936082426
Download Telegram
Forwarded from Hossein Taheri
حداقل ۳۳ تا اکستنشن آلوده کروم که مجموعا اطلاعات ۲.۶ میلیون کاربر رو دزدیدن شناسایی شده.
فکر می‌کنم Proxy SwitchyOmega رو خیلیا داشته باشن ولی خب، چک کنید چیزی از این لیست نداشته باشید:
https://arstechnica.com/security/2025/01/dozens-of-backdoored-chrome-extensions-discovered-on-2-6-million-devices/

@DevTwitter | <Yaser Shahi/>
پست بعدی راجب OOP توی پایتونه 🐍
Forwarded from Future Pulse Persian
درود به همگی چند ماه پیش تصمیم گرفتم توی مواردی که خیلی باهاش سروکار دارم نمونه سوالتش رو از بعضی  سایت ها و یا استک اور فلو بهش برخوردم رو توی ریپوهای زیر جداگانه جمع آوری کنم
اگر دوس داشتید به اشتراک بزارید  و حمایت و مشارکت کنید
 


🎯- نمونه سوالات مصاحبه ای گیت
https://github.com/mrbardia72/git-Interview-Questions-And-Answers

🎯- نمونه سوالات مصاحبه ای گولنگ
https://github.com/mrbardia72/Go-Interview-Questions-And-Answers

🎯- نمونه سوالات مصاحبه ای دیتابیس
https://github.com/mrbardia72/db-Interview-Questions-and-Answers

🎯- نمونه سوالات مصاحبه ای داکر
https://github.com/mrbardia72/docker-Interview-Questions-and-Answers

🎯- نمونه سوالات مصاحبه ای والت
https://github.com/mrbardia72/vault-Interview-Questions-and-Answers

👇👇join👇👇

https://news.1rj.ru/str/addlist/KpzXaiSpKENkMGM0
همچنان در زمره بدترین کشورها در دسترسی آزاد به اینترنت!

بررسی‌ها در چهارمین گزارش "کیفیت اینترنت در ایران" که توسط کمیسیون اینترنت و زیرساخت انجمن تجارت الکترونیک تهران منتشر شده، نشان داده که روند استفاده از #استارلینک در یکسال گذشته با افزایش ۲۰ برابری همراه بوده است.
این گزارش نتیجه‌ی تداوم سیاست‌های محدودکننده‌ی داخلی، تحریم‌های یک‌جانبه‌ی خارجی و مشکلات گسترده در شبکه Access را منجر به آن دانسته که همچنان تجربه کاربری اینترنت در ایران با ۳ گزاره‌ی کند، پر اختلال (دومین کشور از انتهای جدول بعد از میانمار و اوکراین) و محدود (بعد از چین در جایگاه ۹۹ از ۱۰۰ کشور) توصیف شده و ایران در جایگاه ۹۵ از بین ۱۰۰ کشور قرار گیرد.

برخی از عناوین مهم در این گزارش:
▫️ کاربران ایرانی اختلال‌های متفاوتی به‌شکل کامل یا مقطعی در دسترسی به اینترنت تجربه کرده، که اهمیت این‌اختلال برای کسب‌وکارهای ایرانی تا آنجاست که طبق محاسبات کمیسیون اینترنت، اختلال روی HTTP3 معادل خسارت روزانه‌ی ۲ میلیاردتومانی در یک شرکت استارت‌آپی است.
▫️ کیفیت اینترنت ایران نسبت به گزارش قبلی در تیر ۱۴۰۳، تفاوت چشم‌گیری نداشته و همچنان در وضعیت خطرناک است.
▫️ تلفن‌های همراه ایرانی‌ها به‌دلیل استفاده از فیلترشکن‌‌های رایگان به عامل مهمی در آلودگی شبکه تبدیل شده و آلودگی شبکه را بازتولید می‌کنند.
▫️ نمی‌توان به داده‌های سامانه Speedtest به‌عنوان مرجعی برای سنجش وضعیت سرعت اینترنت ایران اتکا کرد.
▫️ شرکت‌های مخابراتی توان سرمایه‌گذاری برای تعویض و نوسازی باتری‌های UPS مربوط به BTS یا بهتر بگوییم به‌طور کلی ارتقای شبکه را ندارند و در نتیجه با هر رخدادی کیفیت اینترنت آسیب می‌بیند.

💡 متن کامل گزارش

🔍 ircf.space
@ircfspace
Forwarded from کانال مهرداد لینوکس (Mehrdad Linux)
🔥 هورااا Fish Shell 4.0 با RUST آماده انتشاره
دو سال کد نویسی
بیشتر از ۵۷ هزار خط کد به زبان ++C که الان شده 75 هزار خط کد Rust
آماده بشیم بریم برای نصب؟ 😎

«شل» (Shell) یا پوسته
شِل‌(پوسته) بخش مهمی از هر جلسه(session) کاربر لینوکس است
خط فرمان ، رابط دستوری بین کاربر و هسته سیستم عامل لینوکس و یونیکس، که میتونید در آن دستورات را جهت اجرا توسط سیستم وارد کنید


💠 معرفی ۳ نوع Shell پرکاربرد لینوکس

🗓شل bash با Bourne Again Shell
شل پیشفرض بسیاری از توزیعات لینوکسی

🗓شل Z Shell zsh
نسخه توسعه یافته ای از Bourne shell از ksh و tcsh الهام گرفته فریم ورک Oh My Zsh پشتیبانی خوبی دارد

🗓شل fish یا Friendly Interactive Shell
مزایا : تمرکز بر کاربردپذیری Syntax highlighting و Inline auto-suggestions و Tab Completions و Smart Search خیلی عالی داره
عیب اصلی fish عدم سازگاری با POSIX است

سایت
دسترسی به oh-my-fish
❤️ ممنون از حمایت هاتون 💐🌺
#linux
Forwarded from Gopher Academy
در Go، تفاوت بین `size` و `capacity` در مورد ساختارهایی مانند آرایه‌ها و اسلایس‌ها این است:

1. Size (طول یا `len`):
- نشان‌دهنده تعداد عناصر فعلی موجود در یک اسلایس یا آرایه است.
- با تابع len() قابل دسترسی است.
- همیشه برابر با تعداد عناصر پر شده‌ی اسلایس یا آرایه است.

2. Capacity (ظرفیت یا `cap`):
- نشان‌دهنده حداکثر تعداد عناصری است که یک اسلایس می‌تواند نگه دارد بدون نیاز به تخصیص دوباره حافظه.
- با تابع cap() قابل دسترسی است.
- برای اسلایس‌ها ممکن است بزرگ‌تر از len باشد.

### مثال:
s := make([]int, 3, 5) // اسلایس با طول 3 و ظرفیت 5
fmt.Println(len(s)) // 3
fmt.Println(cap(s)) // 5



https://news.1rj.ru/str/addlist/KpzXaiSpKENkMGM0
Forwarded from Gopher Academy
اگر طول (size) یک اسلایس در Go بیشتر از ظرفیت (cap) آن شود، Go به‌طور خودکار یک حافظه جدید با ظرفیت بزرگ‌تر تخصیص می‌دهد. سپس عناصر قدیمی را به حافظه جدید منتقل کرده و عنصر جدید را اضافه می‌کند.

این عملیات می‌تواند هزینه‌بر باشد، زیرا شامل تخصیص مجدد و کپی داده‌ها است. به همین دلیل مدیریت ظرفیت مناسب برای بهینه‌سازی عملکرد اهمیت دارد.

### مثال:
s := make([]int, 3, 5)
s = append(s, 1, 2, 3) // ظرفیت پر می‌شود
s = append(s, 4) // ظرفیت بیشتر می‌شود (افزایش خودکار ظرفیت)
fmt.Println(len(s)) // 7
fmt.Println(cap(s)) // 10 (ممکن است مقدار جدید متفاوت باشد)



https://news.1rj.ru/str/addlist/KpzXaiSpKENkMGM0
Forwarded from Gopher Academy
در Go، اگر تعداد عناصر در یک اسلایس از مقدار ظرفیت فعلی (cap) بیشتر شود، حافظه بیشتری به آن تخصیص داده می‌شود. الگوریتم تخصیص ظرفیت معمولاً به‌صورت نمایی است (یعنی دو برابر می‌شود). این کار برای کاهش تعداد دفعات تخصیص مجدد حافظه انجام می‌شود و به بهبود کارایی کمک می‌کند.

### مثال:
s := make([]int, 0, 2) // ظرفیت اولیه 2
fmt.Println(len(s), cap(s)) // طول 0، ظرفیت 2

s = append(s, 1, 2, 3) // نیاز به افزایش ظرفیت
fmt.Println(len(s), cap(s)) // طول 3، ظرفیت 4 (دو برابر قبلی)


نحوه افزایش ظرفیت ممکن است به‌صورت دقیق به پیاده‌سازی داخلی Go وابسته باشد.


https://news.1rj.ru/str/addlist/KpzXaiSpKENkMGM0
Forwarded from Philocode
من نوشابه انرژی‌زا بودم، اما اون آب‌قند دوست داشت! 😭
Please open Telegram to view this post
VIEW IN TELEGRAM
😁1🤣1
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
🔰 بزرگترین رویداد تکنولوژی جهان

🔰نمایشگاه CES 2025 به‌زودی آغاز می‌شود

🔹در این رویداد، بزرگ‌ترین نام‌های صنعت فناوری در لاس‌وگاس گرد هم می‌آیند تا محصولات جدید خود را معرفی کنند.

🔹این نمایشگاهCES برای عموم مردم باز نیست.

🔹اما درباره تاریخ برگزاری CES 2025 باید گفت که از روز سه‌شنبه، 7 ژانویه (18 دی)، تا جمعه، 10 ژانویه (21 دی) در لاس‌وگاس برگزار می‌شود.
🔹بیش از 323 شرکت از فهرست Fortune 500 و 84 شرکت از لیست 100 برند برتر Interbrand در CES حضور خواهند داشت.

🔹شرکت های AMD، اینتل، انویدیا و کوالکام در زمینه رایانش خبرساز خواهند شد. AMD و اینتل روی پردازنده‌ها و کارت‌های گرافیک تمرکز دارند و کوالکام، پلتفرم Snapdragon X خود را به نمایش می‌گذارد.

🔹غول‌های خودروسازی مانند هوندا، هیوندای، بی‌ام‌و و سونی-هوندا به دنبال بازتعریف مفهوم حمل‌ونقل خواهند بود و خودروهای الکتریکی، نمایشگرهای هولوگرافیک و طراحی‌های مجهز به سرگرمی را ارائه خواهند کرد.

🔹در بخش لوازم الکترونیکی مصرفی، شرکت‌هایی مانند TCL، ال‌جی، سامسونگ و لنوو، فناوری‌های جدیدی شامل نمایشگرهای QDini LED و دستگاه‌های گیمینگ را معرفی می‌کنند.

📌نویسنده: حسین سیلانی
📌منبع : آکادمی کندوی دانش
https://learninghive.ir
آقا من یدونه اسکریپت تحت cli نوشتم برای وریفای کردن iso سیستم عامل ، بهتون انواع هش هارو نشون میده (SHA-256, SHA-512, MD5) بعدش استراکچر خود فایل iso رو برسی میکنه و دست آخر صحت فایل رو ، هر نوع iso هم ساپورت میکنه،اگه دوست داشتید استفاده کنید و استار بدید
https://github.com/Mehranlip/ISOHashVerifier

@DevTwitter | <Mehran/>
10 ترفند جالب و کاربردی در جاوااسکریپت

کوتاه کردن string با ...
const truncate = (str, length) => 
str.length > length ? str.slice(0, length) + "..." : str;
console.log(truncate("JavaScript Tricks", 10)); // "JavaScript..."

ساخت آرایه عددی با طول دلخواه
const array = Array.from({ length: 5 }, (_, i) => i + 1);
console.log(array); // [1, 2, 3, 4, 5]

تبدیل string به number
const num = +"42";
console.log(num); // 42

جمع سریع آرایه‌ای از اعداد
const numbers = [1, 2, 3, 4];
const sum = numbers.reduce((total, num) => total + num, 0);
console.log(sum); // 10

بررسی مقدار زوج یا فرد بودن
const isEven = (num) => num % 2 === 0;
console.log(isEven(4)); // true

برعکس کردن String
const reverseString = (str) => str.split("").reverse().join("");
console.log(reverseString("hello")); // "olleh"

پیشنهاد : این مورد رو خودتون سعی کنید بدون استفاده از متد های آماده جاوااسکریپت بسازید جالبه و ساده ؛)
تبدیل شرط چندگانه به شیوه‌ای تمیزتر
const getDay = (day) => ({
1: "Monday",
2: "Tuesday",
3: "Wednesday",
}[day] || "Invalid day");
console.log(getDay(1)); // "Monday"

حذف مقادیر خالی از آرایه
const arr = [0, null, undefined, "", 5];
const filtered = arr.filter(Boolean);
console.log(filtered); // [5]

مقایسه سریع دو آرایه
const arraysAreEqual = (a, b) => JSON.stringify(a) === JSON.stringify(b);
console.log(arraysAreEqual([1, 2], [1, 2])); // true

⓿➊ حذف مقادیر تکراری از آرایه
const unique = [...new Set([1, 2, 2, 3])];
console.log(unique); // [1, 2, 3]


امیدوارم از این مطلب لذت برده باشید، با ری‌اکشنای خودتون بهمون انرژی بدید ❤️‍🔥

#️⃣ #tricks #javanoscript

🫶 𝗖𝗛𝗔𝗡𝗡𝗘𝗟  |  𝗚𝗥𝗢𝗨𝗣
Forwarded from Anophel | آنوفل
چقدر تا حالا به این فکر کردین که داده‌ها مثل یه رودخونه از یه مسیر مشخص عبور کنن و در هر ایستگاه، کاری روشون انجام بده؟



اگه بخوام خیلی ساده توضیح بدم، Pipeline همینه! یعنی داده‌ها از نقطه A شروع می‌کنن، مرحله‌به‌مرحله فیلتر، پردازش، ترکیب یا جمع‌بندی می‌شن و در نهایت توی نقطه B تحویل داده می‌شن.



حالا جذابیتش چیه؟ هر مرحله، یه مسئولیت خاص داره و می‌شه به راحتی تغییرش داد، کم یا زیادش کرد، یا حتی تو پروژه‌های دیگه استفاده‌ش کرد.



به این مثال نگاه کنین:

تو یه پخش زنده، ممکنه داده‌ها این شکلی پردازش بشن:

1️⃣ دریافت تصاویر و صدا (Reader)

2️⃣ فشرده‌سازی داده‌ها (Processor)

3️⃣ اضافه کردن زیرنویس یا جلوه‌های گرافیکی (Processor)

4️⃣ پخش زنده روی یوتیوب یا اینستاگرام (Writer)



اینجا یه دیاگرام ساده از یه Pipeline کشیدم که نشون می‌ده داده‌ها مرحله به مرحله عبور می‌کنن. این مراحل شامل:

1️⃣ rangeGen: تولید اعداد

2️⃣ takeLucky: انتخاب اعداد خاص

3️⃣ merge: ادغام کانال‌ها

4️⃣ sum: محاسبه جمع و تعداد

5️⃣ printTotal: نمایش نتیجه

این مدل به راحتی قابل توسعه و سفارشی‌سازی هست.



اینجا یک مثال ساده با زبان Go برای پیاده‌سازی یک Pipeline آوردم که می‌تونی ایده کلی رو ازش بگیری:



توضیح مراحل:

rangeGen: اعداد رو در بازه مشخص تولید می‌کنه.

takeLucky: فقط اعداد خوش‌شانس (قابل تقسیم بر 7 ولی نه بر 13) رو انتخاب می‌کنه.

merge: داده‌های خروجی از چند کانال مستقل رو یکی می‌کنه.

sum: جمع اعداد خوش‌شانس و تعدادشون رو محاسبه می‌کنه.

printTotal: نتایج رو چاپ می‌کنه.



راستی، تا حالا تو پروژه‌هاتون از همچین روشی استفاده کردین؟

خوشحال می‌شم تجربه‌هاتون رو بشنوم.



#گو #گولنگ #go #golang
Forwarded from Anophel | آنوفل
Forwarded from Anophel | آنوفل
💢 چقدر تا حالا به این فکر کردین که داده‌ها مثل یه رودخونه از یه مسیر مشخص عبور کنن و در هر ایستگاه، کاری روشون انجام بده؟



💠 اگه بخوام خیلی ساده توضیح بدم، Pipeline همینه! یعنی داده‌ها از نقطه A شروع می‌کنن، مرحله‌به‌مرحله فیلتر، پردازش، ترکیب یا جمع‌بندی می‌شن و در نهایت توی نقطه B تحویل داده می‌شن.



حالا جذابیتش چیه؟ هر مرحله، یه مسئولیت خاص داره و می‌شه به راحتی تغییرش داد، کم یا زیادش کرد، یا حتی تو پروژه‌های دیگه استفاده‌ش کرد.



⭐️به این مثال نگاه کنین:

تو یه پخش زنده، ممکنه داده‌ها این شکلی پردازش بشن:

1️⃣دریافت تصاویر و صدا (Reader)

2️⃣فشرده‌سازی داده‌ها (Processor)

3️⃣ اضافه کردن زیرنویس یا جلوه‌های گرافیکی (Processor)

4️⃣ پخش زنده روی یوتیوب یا اینستاگرام (Writer)



⭐️اینجا یه دیاگرام ساده از یه Pipeline کشیدم که نشون می‌ده داده‌ها مرحله به مرحله عبور می‌کنن. این مراحل شامل:

1️⃣ rangeGen: تولید اعداد

2️⃣takeLucky: انتخاب اعداد خاص

3️⃣ merge: ادغام کانال‌ها

4️⃣ sum: محاسبه جمع و تعداد

5️⃣ printTotal: نمایش نتیجه

این مدل به راحتی قابل توسعه و سفارشی‌سازی هست.



💠در تصویر زیر یک مثال ساده با زبان Go برای پیاده‌سازی یک Pipeline آوردم که می‌تونی ایده کلی رو ازش بگیری.


توضیح مراحل:

rangeGen: اعداد رو در بازه مشخص تولید می‌کنه.

takeLucky: فقط اعداد خوش‌شانس (قابل تقسیم بر 7 ولی نه بر 13) رو انتخاب می‌کنه.

merge: داده‌های خروجی از چند کانال مستقل رو یکی می‌کنه.

sum: جمع اعداد خوش‌شانس و تعدادشون رو محاسبه می‌کنه.

printTotal: نتایج رو چاپ می‌کنه.



راستی، تا حالا تو پروژه‌هاتون از همچین روشی استفاده کردین؟

خوشحال می‌شم تجربه‌هاتون رو بشنوم.



#گو #گولنگ #go #golang
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Anophel | آنوفل
💢 مثال Pipeline در گولنگ

💙 آنوفل | Anophel


#go #golang #گو #گولنگ
Please open Telegram to view this post
VIEW IN TELEGRAM
توافق روی نام گذاری ها از نون شب واجب تره!!
یه جمله جالب توی کتاب clean code دیدم که نوشته بود، زمانی که میخواید توابع یا متغیرهاتون رو نامگذاری کنید اون قدر حساسیت به خرج بدید که انگار دارید برای یک نوزاد تازه به دنیا اومده اسم انتخاب میکنید.
یک نکته که داخل تیم هم خیلی مهمه اینه که برای یک مفهوم، از چند ورب مختلف استفاده نشه. مثلا برای ایجاد کردن فرضا محصول میشه همه ورب های add, create, insert, make, ... رو استفاده کرد. برای اینکه ابهام و سردرگمی پیش نیاد همیشه سعی کنید توی پروژتون برای همه entity ها از یک ورب یکسان استفاده کنید و این رو توی تیمتون هم باهم توافق کنید که همه از اون ورب استفاده کنن.
این مساله به ظاهر کوچیک خیلی خیلی مهمه لطفا رعایت کنید.

@DevTwitter | <Pouya Farshidnia/>
Forwarded from ~Loveaвle (Hanie)
زمانی که مرخصی می‌خوام، با ارزش ترین نیروام!
اما اضافه حقوق بخوام، اینجوریه که بقالِ سرِ کوچه هم میتونه کارمو انجام بده!🌚
@luvablee
Forwarded from Linuxor ?
یه نفر اومده و یه بش اسکریپت نوشته که باهاش به صورت سطحی می‌شه امنیت یه سرور رو برسی کرد، کار پیچیده ای نمی‌کنه بیشتر به درد تازه کار ها می‌خوره که این مشکلات رایج رو توی کانفیگ کردن سرور نداشته باشن :

https://github.com/vernu/vps-audit

@Linuxor