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 Gopher Academy
🔵 عنوان مقاله
Microsoft Launches a Go Blog

🟢 خلاصه مقاله:
مقاله مورد نظر به تبریک به شرکت Microsoft بابت افزایش تعداد وبلاگ‌های آن درباره زبان برنامه‌نویسی Go پرداخته است. تمرکز این وبلاگ‌ها در راستای استفاده از Go در ارتباط با سرویس‌های Azure و همچنین مشارکت‌های Microsoft در اکوسیستم Go است. این رویکرد نشان‌دهنده علاقه‌مندی و سرمایه‌گذاری Microsoft در بسط و پیشبرد استفاده از Go، به‌ویژه در ادغام با محصولات و سرویس‌های خود می‌باشد. از سوی دیگر، افزایش محتوای تخصصی قابل دسترس در مورد Go به همراه پشتیبانی فنی Microsoft، می‌تواند به ارتقاء و درک بهتر این زبان کمک شایانی کند و احتمالاً جامعه توسعه‌دهندگان Go را گسترش دهد.

🟣لینک مقاله:
https://devblogs.microsoft.com/go/welcome-to-the-microsoft-for-go-developers-blog/


👑 @gopher_academy
💎💎ربیت ام کیو RabbitMQ 💎💎

سلام بچه ها 👋

امروز میخواهیم در مورد ربیت ام کیو با هم صحبت کنیم🗣🗣


1️⃣ربیت ام کیو چی هست؟🤔
یک نرم افزار برای انتقال پیام بین سیستم ها است که میتونیم بین سیستم های مختلف پیام ارسال کنیم وبدون این که نیاز به ارتباط مستقیم و همزمان داشته باشن و با هم صحبت کنن و اطلاعاتشون رو به اشتراک بگذارند.
نوع پردازش پیام ها به صورت async هست و ربیت ام کیو با استفاده از زبان Erlang توسه داده شده هست
ربیت ام کیو مبتنی بر پروتوکل  AMQP (advantage message queuing protocol)
بخواهیم پروتوکل AMPQ رو به زبان ساده تر بگیم میشه یک استاندارد برای انتقال پیام ها بین سیستم ها و سرویس های مختلف دانست که  سیستم ها و سرویس ها را رو  به یکدیگر عملا متصل میکند.

اگه بخواهم به مثال عملی براتون بزنم🤗🫰
فرض کنیم یه اپلیکیشن فروشگاهی داریم که بخش های مختلفی مثل ثبت سفارش و انبار داری و ارسال کالا داره هر کدوم از بخش ها  باید با هم در ارتباط باشن  و اطلاعات رو به موقع رد و بدل کنن ایجا هست که RabbitMQ وارد عمل میشه با استفاده از RabbitMQ هر بخش میتونه پیام های خودش رو به صف ارسال کنه و بخش ها دیگر هر زمان نیاز بود این پیام ها رو دریافت و پردازش کنن این کار باعث میشه که بخش های مختلف یستم بتونن متقل از هم کار کنن و هر کدوم در زمان مناسب خودش پیام ها رو پردازش کنن



خوب حالا بیاییم به چندین قابلیت ربیت ام کیو بپردازیم


queu

صف مکان هایی هستند که پیام ها به صورت موقت درون اون ذخیره خواهد شد  تا زمانی که توسط مصرف کننده دریافت و پردازش بشن صف ها این امکان رو فراهم میکنن که پیام ها به ترتیب دریافت و پردازش بشن
Exchange

مبادله کننده یا exchange نقش مسیریاب رو دارن و تصمیم میگیرن که پیام ها به کدام صف ها ارسال بشن

consumer

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

routing

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

scalability

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

Reliability

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

load balancers

برای این که پیام ها به صورت متوازن باشد از الگوریتم round robin استفاده میکند که به مدیریت بهتر منابع و بار سیستم کمک کند
round robin: هر پیام به صورت برابر یک زمانی دریافت میکند و هیچ فرایند برای مدت طولانی در حالت انتظار باقی نمیماند

delay messaging

این امکان رو فراهم میسازد که پیام ها در یک صف معین پس از مدت زمان مشخص پردازش شوند

security

برای رمز نگاری ارتباطات بین تولید کننده و مصرف کننده و از TLS/ssl استفاده میکند

plugin & extentions

ربیت ام کیو برای گسترش خود قابلیت اضافه کردن پلاگین ها را برای گسترش ویژگی های خود دارد

federation
این امکان رو دارد که چندین نود در مکان های مختلف جغرافیایی قرار دارد به یکدیگر متصل شود و به کمک این پلاگین میتوان پیام ها رو بین چندین سرور RabbitMQ به اشتراک گذاشت

shovel
این پلاگین برای انتقال پیام بین دو نود در RabbitMQ به کار میرود این پلاگین پیام ها رو از یک صف در نودی به صفی دیگر در نود دیگری منتقل میکند
monitoring

ربیت ام کیو این امکان رو فراهم میسازد که یک رابط وب برای مشاهده وضعیت سیستم ها و صف ها و پیام ها استفاده میشود

multiple client

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

مرسی که تا اینجا همراه من بودید، امیدوارم این توضیحات براتون مفید بوده باشه. اگه سوال یا نظری دارید حتماً تو کامنتا بنویسید 😁✌️


@ninja_learn_ir


Author:@LOOOOOVEEEEEEYOU
Forwarded from 🎄 یک برنامه نویس تنبل (Raymond Dev)
🔶 خطای could not found driver در لاراول

این خطای زمانی نشان می دهد که هنگام اجرای لاراول رخ می دهد.

PHP Warning:  PHP Startup: Unable to load dynamic library 'pdo_mysql'  

Illuminate\Database\QueryException

could not find driver


این خطا میگه درایورش موجود نمی باشد و کدوم درایور؟ به درایور php-mysql اشاره دارد.

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

extension=mysql
extension=mbstring
extension=pdo_mysql
extension=openssl


برای لینوکس باید php-mysql نصب کنید. دستورات زیر:

sudo apt update
sudo apt install php-pdo-mysql php-mysql

- if web server is apache :

systemctl apache2 restart


#لاراول

@TheRaymondDev
Forwarded from کداکسپلور | CodeExplore (Koorosh)
چرخوندن لیست بدون حلقه در پایتون 👀

یعنی چی؟ بیاین بگیم یه لیست داریم که این شکلیه:
lst=[1,2,3,4,5]

من میخوام لیستم یکم بچرخه و عدد 1 بره آخر لیست و عدد 2 بیاد اول لیست 😂
این کار رو میکنم:
lst = [1, 2, 3, 4, 5]
# چرخش به سمت چپ
lst = lst[1:] + lst[:1]
print(lst) # [2, 3, 4, 5, 1]

#python #trick
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Yasha
یعنی هیچ ارتباطی بین این ۳ تا کتابی که شهریور خوندم (یا دارم می‌خونم) نمیشه پیدا کرد :)))
Forwarded from Sonia Project (Sonia Fatholahi)
رفتار افراد در کار فرق داره تا روزمرگیشون، شاید به خاطر این باشه که توی جامعه به خوبی قالب شده که نیاز هست اینطور باشه و افراد یاد میگیرن copy mechanism مورد نظر رو انجام بدن تا مانند اون محیط رفتار کنند.
Forwarded from Pishro App
🛸 خوب دوستان بدون شک با قابلیت transaction ها توی #لاراول آشنا هستید

فرض کنید میخواید پس از اینکه کاربر عضو شد و توی جدول user ذخیره سازی با موفقیت انجام شد برای کاربر پیام خوش آمد بفرستید

⚡️ خوب چندین روش وجود داره اما تو این پست من میخام در مورد DB::afterCommit صحبت کنم.

🔥 این متد به شما این قابلیت رو میده که حتما بعد از اینکه ذخیره سازی با موفقیت انجام شد عملیات بعدی مثل ارسال ایمیل خوش آمد گویی ارسال بشه

فرض کنید بصورت زیر داریم یک کاربر جدید ایجاد میکنیم
DB::transaction(function () {
$user = User::create([...]);
$user->teams()->create([...]);
});

خوب حالا میتونیم توی متد booted خوده مدلمون یا توی یه Observer کد زیر رو قرار بدیم

class User extends Model
{
protected static function booted()
{
static::created(function ($user) {
// Will send the email only if the
// transaction is committed
DB::afterCommit(function () use ($user) {
Mail::send(new WelcomeEmail($user));
});
});
}
}

خوب اینجا ما گفتیم وقتی یه کاربر ایجاد شد، و توی جدول هم کامیت خورد اونوقت مثلا ایمیل خوش آمد گویی ارسال کنید

اینطور شما میتونید به راحتی به خیلی از اکشن ها دسترسی داشته باشید و کد تمیزتری هم داشته باشید

اگه دوس دارین مطالب اینجوری بیشتر بذارم بکوبین لایک رو ببینم چندنفر علاقمند داریم🥳


#laravel


👾 @pishroapp
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from 
به عنوان یه انتخاب شخصی در مسیر یادگیری علم و یا در کل در زندگی، کدوم یکی رو می‌پسندید؟
Anonymous Poll
39%
Generalist (عمومی‌نگر)
58%
Specialist (تخصص‌نگر)
0%
سایر / نوشتن در بخش نظرات
12%
دیدن نظرات سایرین
Forwarded from Code Module | کد ماژول (𔓙)
سوالات مصاحبه ای React.js 💠

در سایت زیر میتونید مجموعه ای از سوالات کاربردی و مصاحبه ای کتابخانه React.js رو به همراه جواب مشاهده کنید. با استفاده از این سایت، به راحتی میتونید خودتون رو به چالش بکشید یا اطلاعاتتون رو افزایش بدید.

🔗 https://react.sayjeyhi.com/


#react
@CodeModule
Forwarded from code2 - تکنولوژی و فناوری (Mahdi Taleghani)
💡 معرفی Preact: فریم‌ورکی سریع‌تر و سبک‌تر از React! 🚀

اگر با React آشنایی دارید اما به دنبال چیزی سریع‌تر و سبک‌تر هستید، Preact می‌تواند گزینه‌ی مناسبی برای شما باشد! Preact یک جایگزین برای React است که از همان API استفاده می‌کند، اما حجم کمتری دارد (حدود 3 کیلوبایت) و سریع‌تر اجرا می‌شود.

چرا Preact؟
- سبک و سریع: با Preact می‌توانید اپلیکیشن‌های خود را با سرعت بیشتری بارگذاری کنید.
- سازگاری با React: Preact به راحتی می‌تواند در کنار React استفاده شود و بیشتر کتابخانه‌های React را پشتیبانی می‌کند.
- انتقال آسان: می‌توانید به سادگی پروژه‌های React خود را به Preact منتقل کنید و از مزایای عملکردی آن بهره‌مند شوید.

💻 کجا می‌توان از Preact استفاده کرد؟
از نظر استفاده Preact مخصوصاً برای پروژه‌هایی مناسب است که به حجم پایین و عملکرد بالا نیاز دارند، مانند صفحات تک‌صفحه‌ای (SPA) یا اپلیکیشن‌های موبایل.

🛠 چطور شروع کنیم؟
برای شروع کار با Preact می‌توانید از وب‌سایت رسمی آن دیدن کنید و مستندات کامل را مطالعه کنید:
preactjs.com

توجه کنید که لزوما بهتر از react نیست.

@code2_ir
کانال کد۲
#react #preact
Forwarded from کداکسپلور | CodeExplore (CodeExplore)
This media is not supported in your browser
VIEW IN TELEGRAM
Forwarded from LearnPOV | لرن پی او وی (روبومیز)
💎 معرفی لایبرری Framer Motion 💎

🔸 لایبرری Framer Motion یک انتخاب عالی برای ساخت انیمیشن‌های جذاب و پیچیده در پروژه‌های React‌ای هستش و باهاش میتونید هر انیمیشنی که بخواید رو پیاده‌‌سازی کنید

نکته مهمش اینجاست که با قابلیت هایی که داره بهتون اجازه میده تا انیمیشن های فوق العاده تعامل‌پذیر، با کنترل دقیق بر روی ترنزیشن‌ها رو به سادگی پیاده سازی کنید :)

🆔 @coolycode
Forwarded from Yasha
به نظرتون کتاب «هنر رندانه‌ی به تخم گرفتن» رو توی یوتیوب خلاصه کنم؟؟؟ (👍👎)
Forwarded from LearnPOV | لرن پی او وی (Mohammad hossein) via @robomiz_bot
💎 معرفی لایبرری Framer Motion 💎

🔸 لایبرری Framer Motion یک انتخاب عالی برای ساخت انیمیشن‌های جذاب و پیچیده در پروژه‌های React‌ای هستش و باهاش میتونید هر انیمیشنی که بخواید رو پیاده‌‌سازی کنید

نکته مهمش اینجاست که با قابلیت هایی که داره بهتون اجازه میده تا انیمیشن های فوق العاده تعامل‌پذیر، با کنترل دقیق بر روی ترنزیشن‌ها رو به سادگی پیاده سازی کنید :)

#️⃣ #reactjs #framermotion
🆔 Channel | Group | YouTube
Forwarded from کداکسپلور | CodeExplore (𝙰𝚖𝚒𝚗)
👀واسه دوستانی که علاقمند مند به سریال MR.robot هستن ، بگم که تو مدیوم زیر میتونین توضیحات دستورات لینوکس و ... که تو سریال MR.robot اجرا میشدن رو میتونین ببینین:

🔗 http://medium.com/@ryankazanciyan

#mrrobot #linux #medium
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from SoniaCircuit (Sonia Fatholahi)
نکته جالبی که امروز بهش برخوردم فیلتر بودن میرور deb.debian.org بود :)
واقعا بعضی وقتا یک سری اتفاقات جالب میوفته که آدم با فهمیدنش شاخ در میاره.
آیا گوشی هوشمند ما به ما گوش می‌کنه؟
احتمالا بله.
https://news.itsfoss.com/ad-company-listening-to-microphone/

(یه مقدارم عنوانش کلیخور و زرده ولی حالا ببینیدش ضرر نداره)
Forwarded from Gopher Academy
👇quiz 1👇

func hello() []string { return nil } func main() { h := hello if h == nil { fmt.Println("nil") } else { fmt.Println("not nil") } }
Anonymous Quiz
19%
Nil
55%
Not nil
26%
compilation error
Forwarded from Gopher Academy
❤️هفت آبان روز بزرگذاشت پدر ایران ❤️
❤️افتخار ایران و بشریت❤️
#CYRUS_THE_GREAT
#کوروش_کبیر
🎯 @gopher_academy