Pishro App

Description
از دنیای صفر و یک



👨‍💻 @imanborumand_ir


Website: https://pishroapp.net
We recommend to visit

?? ??? ?? ????? ?

We comply with Telegram's guidelines:

- No financial advice or scams
- Ethical and legal content only
- Respectful community

Join us for market updates, airdrops, and crypto education!

Last updated 8 months, 1 week ago

[ We are not the first, we try to be the best ]

Last updated 10 months, 3 weeks ago

FAST MTPROTO PROXIES FOR TELEGRAM

ads : @IR_proxi_sale

Last updated 6 months, 3 weeks ago

7 months, 2 weeks ago

🔰 گیت هاب به مناسبت 150میلیونی شدنش کوپایلت را رایگان کرد.

گیت هاب با این کار تحولی بزرگ در هوش مصنوعی برنامه نویسی رقم زد این سرویس با ارائه ماهانه ۲۰۰۰ پیشنهاد کد و ۵۰ پرسش رایگان در VSCode، امکان بهره‌مندی از قدرت مدل‌هایی مانند Claude 3.5 Sonnet را برای همه فراهم میکند.
👾 @pishroapp

8 months ago

? ایجاد توابع ناشناس در #گولنگ

? توابع ناشناس، همان‌طور که از نامشان پیداست، توابعی هستند که نام مشخصی ندارن. این توابع مستقیماً به عنوان یک مقدار تعریف و استفاده میشن.
? به جای تعریف یک تابع معمولی، میشه تابعی را در جا تعریف و به یک متغیر یا آرگومان اختصاص داد.

توی گولنگ هم ما توابع ناشناس یا (Anonymous Functions) رو داریم و میتونیم در جاهای که نیاز داریم ازش استفاده کنیم

به کد زیر دقت کنید

```
// Long form
func add(x, y int) int {
    return x + y
}

// Shorthand
add := func(x, y int) int {
    return x + y
}
```

ما در کد بالا یه تابع ناشناس رو تعریف و به متغیر add اختصاص دادیم.

توابع ناشناس چه جاهایی مناسب هستند؟

عملیات کوتاه‌مدت: برای انجام وظایفی که فقط یک بار استفاده میشن، مثل پردازش داده‌های موقت.

بازخوردها (Callbacks): در کدهای غیرهمزمان یا تعاملی، مانند پردازش رویدادها در برنامه‌های UI یا کار با توابع غیرهمزمان.

ورودی به توابع مرتبه بالا (Higher-order functions): توابعی که دیگر توابع را به عنوان ورودی می‌گیرند یا خروجی می‌دهند.

مزیت های توابع ناشناس :
کد مختصرتر: نیاز به تعریف جداگانه‌ی تابع را از بین می‌برد.
انعطاف‌پذیری: می‌توانید به سرعت توابعی ایجاد کنید که فقط در همان لحظه به آن‌ها نیاز دارید.
کاربرد متمرکز: برای وظایف خاصی که به نام‌گذاری و استفاده‌ی مجدد نیاز ندارند، ایده‌آل است.

یه نمونه دیگه از توابع ناشناس:

```
numbers := []int{1, 2, 3}
result := make([]int, len(numbers))

for i, num := range numbers {
    result[i] = func(x int) int { return x * 2 }(num)
}
```

⚙️ بصورت کلی توابع ناشناس در زبان‌هایی مانند Go (و بسیاری زبان‌های دیگر مانند JavaScript و Python) ابزاری قدرتمند و مفید برای نوشتن کدهای ساده، خوانا و مؤثر هستند. این ابزار به ویژه برای وظایف موقتی و کدهای کوچک که نیاز به تکرار ندارند، بسیار کاربردی است.

#golang

? @pishroapp

8 months, 1 week ago

? بچه ها توی اعتبار سنجی #لاراول با استفاده از required_array_keys میتونید موقع اعتبار سنجی روی یک آریه‌ بررسی کنید که کلیدهایی که میخواید توی آرایه وجود داشته باشه

خوب فرض کنید یه آرایه بصورت زیر دارید:

$data = [ 'user' => [ 'avatar' => 'url', 'mobile' => '0912', 'email' => '[email protected]' ], ];

و میخواید موقع اعتبار سنجی بررسی کنید که کلیدهای avatar, mobile و email وجود داشته باشه

ولیدیت شما بصورت زیر میشه:

$rules = [ 'user' => [ 'array', 'required\_array\_keys:avatar,mobile,email', ], ];

به این صورت میتونید اعتبار سنجی رو برای کلیدها انجام بدین

#laravel

? @pishroapp

8 months, 1 week ago

سلام بچه ها

? یکی از قابلیت های جذابی که تو php 8.4 منتشر شده Asymmetric property visibility یا قابلیت دید نامتقارن هست!

اما Asymmetric property visibility چیه؟ و کجا بکار میاد؟

این ویژگی جدید به ما این امکان رو میده که دیدهای متفاوتی برای خواندن و نوشتن روی property ها کلاسهامون اعمال کنیم.

? ما با استفاده از این قابلیت میتونیم یه property کلاس رو به گونه ای تنظیم کنیم که دسترسی برای خواندن یا نوشتن فقط از داخل خوده کلاس یا کلاس فرزند یا از بیرون قابل تغییر باشه!

فک کنم متوجه شدین ?

حالا یه مثال بزنیم:

ما یه کلاس بصورت زیر داریم:

class Book { public function \_\_construct( public private(set) string $title, public protected(set) string $author, protected private(set) int $pubYear, ) {} }

اینجا تغریف کردیم که مقادیر title, author و pubYear برای نوشتن (set) حالت های private و protected رو داشته باشن

حالا یه کلاس دیگه میاد و از کلاس Book ارث بری میکنه:

class SpecialBook extends Book { public function update(string $author, int $year): void { $this\->author = $author; // OK $this\->pubYear = $year; // Fatal Error } }

خوب!

اینجا ما به یه خطا مواجه میشیم اگر متد update از کلاس SpecialBook رو فراخونی کنیم!

در کلاس Book ویژگی pubYear بصورت private تعریف شده! و فقط توی همون کلاس قابل تعییر هست و ما به خطا(Fatal Error) بر میخوریم!

اما ویژگی author که بصورت protected تعریف شده قابل تغییر هست و ما به خطایی بر نمیخوریم برای این ویژگی!

? خوب این ویژگی یه قابلیت جذابه که به امنیت بیشتر داده ها و کاهش نوشتن getter و setter کمک میکنه!

التبه! من سعی میکنم یه مقاله بنویسم و این ویژگی رو بصورت کامل توضیح بدم پس منتظر باشین?

لایک هم یادتون نره جونِ دلا?
#php

? @pishroapp

8 months, 2 weeks ago

? خوب خوب!

PHP 8.4.1 Released!

برخی قابلیتهای جذاب که توی نسخه 8.4 اومده:

Property Hooks Asymmetric Property Visibility Lazy Objects

? از این لینک میتونید توضیحات کامل تر بخونید

https://www.php.net/archive/2024.php#2024-11-21-4

?‍☠️ من یه مقاله تا فردا مینویسم و سعی میکنم ویژگی های نسخه جدید رو توش براتون بنویسم

#php

? @pishroapp

8 months, 2 weeks ago

?‍☠️ بچه ها لاراول ۱۲ که قراره تا چندماه دیگه تو سال جدید میلادی منتشر بشه یکسری قابلیت جذاب قراره داشته باشه و البته روی پرفورمنس هم کار شده خیلی که یه توضیح این مورد رو با هم بخونیم:

گفته میشه تیم لاراول چندین بهینه‌سازی در ساختار اصلی فریم‌ورک اعمال کرده‌اند تا برنامه‌هایی که با #لاراول 12 ساخته می‌شون سریع‌تر و کارآمدتر اجرا بشن:

? بهینه‌سازی مسیریابی (Routing):
لاراول 12 مکانیزم مسیریابی بهینه‌تری را معرفی کرده که سربار مرتبط با پردازش درخواست‌های HTTP را کاهش می‌ده. این به‌روزرسانی نه تنها زمان پاسخ‌دهی را بهبود می‌بخشد بلکه به برنامه‌های لاراول این امکان را می‌دهد که درخواست‌های همزمان بیشتری را مدیریت کنند، که
این موضوع به مقیاس‌پذیری برنامه‌ها با افزایش ترافیک کمک می‌کند.

? مکانیزم‌های کش پیشرفته‌تر:
کش یکی از عناصر کلیدی برای برنامه‌های با عملکرد بالا است و لاراول 12 سیستم کش خود را بهبود داده. نسخه جدید پشتیبانی بهتری از کش‌های توزیع‌شده مانند Redis و Memcached ارائه می‌دهد و کنترل دقیق‌تری بر انقضای کش و حذف اون فراهم می‌کنه. این ویژگی تضمین می‌کنه که برنامه‌ محتوا رو سریع‌تر و با اطمینان بیشتری ارائه بده.

? پشتیبانی از Async (غیرهمزمان):
در حالی که لاراول مدت‌هاست از پردازش‌های پس‌زمینه از طریق صف‌ها پشتیبانی می‌کند، لاراول 12 پشتیبانی غیرهمزمان یکپارچه‌تری را در سراسر فریم‌ورک ارائه می‌دهد. این بدان معناست که توسعه‌دهندگان اکنون می‌توانند به‌راحتی کدی بنویسند که عملیات غیرمسدودکننده انجام بده، که این امر عملکرد وظایفی را که نیاز به عملیات I/O مانند آپلود فایل یا درخواست‌های API دارند، بهبود می‌بخشد.

⭕️ البته کلی قابلیت دیگه پروامون ORM و امنیت و تست نویسی و ... نیز اضاف شده که خوب سعی میکنم همه رو تو یه مقاله جمع کنم و براتون بنویسم?

#laravel

? @pishroapp

10 months, 3 weeks ago

? موج جدید اتحادیه اروپا برای کنترل چت‌ها: آیا سرویس‌های پیام‌رسان در اروپا مسدود خواهند شد؟

روز دوشنبه، نسخه جدیدی از لایحه بی‌سابقه جهانی اتحادیه اروپا با هدف جستجوی تمام پیام‌ها و چت‌های خصوصی برای محتوای مشکوک (به اصطلاح کنترل چت یا مقررات سوء استفاده جنسی از کودکان) منتشر شد و کمی بعد توسط POLITICO فاش شد.

طبق آخرین پیشنهاد، ارائه دهندگان آزاد خواهند بود که از "هوش مصنوعی" برای طبقه بندی تصاویر و چت‌های متنی ناشناخته به عنوان "مشکوک" استفاده کنند.
با این حال، آنها موظفند تمام چت‌ها را برای محتوای غیرقانونی شناخته شده جستجو کنند و آنها را گزارش دهند، حتی به قیمت شکستن رمزگذاری ایمن end-to-end پیام‌رسان.
دولت‌های اتحادیه اروپا تا 23 سپتامبر باید موضع خود را در مورد این پیشنهاد اتخاذ کنند و وزرای کشور اتحادیه اروپا نیز تا 10 اکتبر باید آن را تأیید کنند.
ارائه دهندگان پیام‌رسان Signal و Threema قبلاً اعلام کرده‌اند که هرگز موافقت نخواهند کرد که چنین روال‌های نظارتی را در برنامه‌های خود ادغام کنند و ترجیح می‌دهند فعالیت خود را در اتحادیه اروپا تعطیل کنند.
منبع
? @pishroapp

10 months, 3 weeks ago

?بچه ها یکی از تکنیک های جذاب توی #داکر multi-stage builds هست، این تکنیک برای #بهینه‌سازی سایز و عملکرد ایمیج‌ها است.

? با استفاده از این قابلیت، می‌توان توی یه Dockerfile چندین مرحله (stage) تعریف کرد.

در مرحله‌های اول، محیط ساخت (build) برنامه رو با تمام ابزارهای سنگین و وابستگی‌ها آماده میکنیم، ولی در مراحل بعدی فقط فایل‌های نهایی مورد نیاز برای اجرای برنامه رو برمی‌داره و به ایمیج نهایی منتقل می‌کنه.

? این کار باعث میشه ایمیج‌های نهایی فوق‌العاده سبک باشن و سریع‌تر بارگذاری و اجرا بشن.

مثلاً وقتی داری یه اپلیکیشن #Go یا Node.js می‌سازی، می‌تونی توی مرحله اول کدها رو #کامپایل کنی و توی مرحله دوم فقط فایل اجرایی نهایی رو بریزی، بدون اینکه وابستگی‌های اضافی مثل ابزارهای ساخت توی ایمیج نهایی بمونن.

? این کار هم امنیت رو افزایش می‌ده (چون هیچ ابزار ساختی توی ایمیج نهایی نیست) و هم مصرف منابع رو به شدت کاهش می‌ده.

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

#docker

? @pishroapp

10 months, 3 weeks ago
11 months ago
We recommend to visit

?? ??? ?? ????? ?

We comply with Telegram's guidelines:

- No financial advice or scams
- Ethical and legal content only
- Respectful community

Join us for market updates, airdrops, and crypto education!

Last updated 8 months, 1 week ago

[ We are not the first, we try to be the best ]

Last updated 10 months, 3 weeks ago

FAST MTPROTO PROXIES FOR TELEGRAM

ads : @IR_proxi_sale

Last updated 6 months, 3 weeks ago