تو این حالت، استفاده از روش کوتاهنویسی (Shorthand) میتونه کد رو خواناتر و سادهتر کنه.
فرض کنید چند متغیر داریم که از یک نوع هستند میشه بصورت زیر:
var a, b, c int
a = 1
b = 2
c = 3
حالا بصورت خلاصه ما میتونیم بصورت زیر متغییر ها رو ایجاد کنیم:
a, b, c := 1, 2, 3
این روش مخصوصاً در مواقعی که نیاز به مقداردهی چندین متغیر، فلگ، یا پارامتر مختلف ابتدای یک تابع یا حلقه هست میتونه مفید باشه.
#golang
Please open Telegram to view this post
VIEW IN TELEGRAM
چجوری Achievement های گیتهاب رو بگیریم ؟
اچیومنت های گیتهاب همون بدج های کوچیکی هستند که با انجام برخی کار ها به عنوان مدال به پروفایلتون اضافه میشن
روش دریافت هر کدوم این اچیومنت ها با هم متفاوته و ممکنه بعضیاشن سخت و بعضی ها آسون باشه!
1. Quickdraw (خیلی آسان) :
روی یک repository یک issue باز کنید 10 ثانیه صبر کنید و issue رو ببیندید (روی close issue کلیک کنید)
2. Pull shark (آسان) :
یک repository پابلیک با فایل README.md ایجاد کنید.سپس یک برنچ دیگه ایجاد کنید و یک Pull request روش بزنید وقتی پول ریکوئست ساخته شد در نهایت روی Merge Pull request کلیک کنید (دو بار این کار ها رو انجام بدید تا بدج رو دریافت کنید)
3. Starstruck (متوسط) :
برای دریافت این اچیومنت شما عملا لازم نیست کاری کنید فقط باید repository داشته باشید که بیش از 16 تا استار داشته باشه همین !
4. YOLO (متوسط) :
وقتی کسی روی repository شما pull request باز کرد بدون review کردن کد ها و محتویات پول ریکوئست اونو merge کنید
5. Public sponsor (سخت) :
گرفتن این اچیومنت یکم براتون خرج داره اونم دلاری. برای دریافت این بدج باید یه نفرو توی گیتهاب دونیت کنید(اسپانسرش شید به اصطلاح)
6. Galaxy Brain (سخت) :
از https://github.com/community/community یک کامیونیتی رو انتخاب کنید.سپس یک سوال پاسخ داده نشده پیدا کنید و به سوال پاسخ بدید.توجه داشته باشید پاسخ شما باید توسط صاحب سوال تایید بشه! (باید به 2 سوال پاسخ بدید و صاحبان سوال هم تایید کنند تا بدج رو بگیرید)
7. Pair Extraordinaire (سخت) :
باید یک Pull request رو مرج کنید که یک کامیت چند مالک داشته باشه (عجیبه ولی مثل اینکه شدنیه)
8. Heart On Your Sleeve (خیلی سخت) :
روش گرفتن این بدج جزو افسانه هست و کسی نمیدونه
9. Open Sourcerer (خیلی سخت) :
این بدج هم کسی نمیدونه چجوری میشه گرفتش
10. Mars 2020 Contributor (غیرقابل گرفتن) :
تا قبل از سال 2020 میتونستید با کانتریبیوتر شدن توی پروژه Mars 2020 Helicopter Mission این بدج رو دریافت کنید دیگه الان نمیشه هر کسیم داره از قبل داره
11. Arctic Code Vault Contributor (غیرقابل گرفتن) :
تا قبل از سال 2020 میتونستید با کانتریبیوتر شدن توی پروژه 2020 GitHub Archive Program این بدج رو دریافت کنید دیگه الان نمیشه هر کسیم داره از قبل داره
نکته: میتونید اسکین تون بعضی از بج هاتون رو عوض کنید
نکته: با تکرار دستور العمل های گرفتن بدج ها بدج ها ارتقا پیدا میکنن و مثل مدال برنز - نقره و طلایی رنگ میشن! منبع DevTwitter
https://github.com/drknzz/GitHub-Achievements
#git #گیت
👾 @pishroapp
اچیومنت های گیتهاب همون بدج های کوچیکی هستند که با انجام برخی کار ها به عنوان مدال به پروفایلتون اضافه میشن
روش دریافت هر کدوم این اچیومنت ها با هم متفاوته و ممکنه بعضیاشن سخت و بعضی ها آسون باشه!
1. Quickdraw (خیلی آسان) :
روی یک repository یک issue باز کنید 10 ثانیه صبر کنید و issue رو ببیندید (روی close issue کلیک کنید)
2. Pull shark (آسان) :
یک repository پابلیک با فایل README.md ایجاد کنید.سپس یک برنچ دیگه ایجاد کنید و یک Pull request روش بزنید وقتی پول ریکوئست ساخته شد در نهایت روی Merge Pull request کلیک کنید (دو بار این کار ها رو انجام بدید تا بدج رو دریافت کنید)
3. Starstruck (متوسط) :
برای دریافت این اچیومنت شما عملا لازم نیست کاری کنید فقط باید repository داشته باشید که بیش از 16 تا استار داشته باشه همین !
4. YOLO (متوسط) :
وقتی کسی روی repository شما pull request باز کرد بدون review کردن کد ها و محتویات پول ریکوئست اونو merge کنید
5. Public sponsor (سخت) :
گرفتن این اچیومنت یکم براتون خرج داره اونم دلاری. برای دریافت این بدج باید یه نفرو توی گیتهاب دونیت کنید(اسپانسرش شید به اصطلاح)
6. Galaxy Brain (سخت) :
از https://github.com/community/community یک کامیونیتی رو انتخاب کنید.سپس یک سوال پاسخ داده نشده پیدا کنید و به سوال پاسخ بدید.توجه داشته باشید پاسخ شما باید توسط صاحب سوال تایید بشه! (باید به 2 سوال پاسخ بدید و صاحبان سوال هم تایید کنند تا بدج رو بگیرید)
7. Pair Extraordinaire (سخت) :
باید یک Pull request رو مرج کنید که یک کامیت چند مالک داشته باشه (عجیبه ولی مثل اینکه شدنیه)
8. Heart On Your Sleeve (خیلی سخت) :
روش گرفتن این بدج جزو افسانه هست و کسی نمیدونه
9. Open Sourcerer (خیلی سخت) :
این بدج هم کسی نمیدونه چجوری میشه گرفتش
10. Mars 2020 Contributor (غیرقابل گرفتن) :
تا قبل از سال 2020 میتونستید با کانتریبیوتر شدن توی پروژه Mars 2020 Helicopter Mission این بدج رو دریافت کنید دیگه الان نمیشه هر کسیم داره از قبل داره
11. Arctic Code Vault Contributor (غیرقابل گرفتن) :
تا قبل از سال 2020 میتونستید با کانتریبیوتر شدن توی پروژه 2020 GitHub Archive Program این بدج رو دریافت کنید دیگه الان نمیشه هر کسیم داره از قبل داره
نکته: میتونید اسکین تون بعضی از بج هاتون رو عوض کنید
نکته: با تکرار دستور العمل های گرفتن بدج ها بدج ها ارتقا پیدا میکنن و مثل مدال برنز - نقره و طلایی رنگ میشن! منبع DevTwitter
https://github.com/drknzz/GitHub-Achievements
#git #گیت
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3 3
✔️ سم آلتمن در پست جدیدش اعلام کرده که حالا ChatGPT از طریق دامنه Chat.com در دسترس کاربران قرار گرفته تا دسترسی به آن آسانتر باشد.
این دامنه که سال گذشته توسط بنیانگذار HubSpot به قیمت ۱۵.۵ میلیون دلار خریداری شد، به سرعت به یک خریدار ناشناس فروخته شد. اکنون مشخص شده که این خریدار OpenAI بوده و حالا این دامنه به ChatGPT هدایت میشود.
👾 @pishroapp
این دامنه که سال گذشته توسط بنیانگذار HubSpot به قیمت ۱۵.۵ میلیون دلار خریداری شد، به سرعت به یک خریدار ناشناس فروخته شد. اکنون مشخص شده که این خریدار OpenAI بوده و حالا این دامنه به ChatGPT هدایت میشود.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
هرچند این دفعه اولی نیست که موزیلا داره این کارهارو انجام میده و باید ببینیم سرنوشت فایرفاکس چی میشه. منبع SohrabContents
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3
خوب دوستان توی #لاراول، برای گرفتن(بارگذاری) داده ها از #دیتابیس دو روش وجود داره که هر کدوم مزیا و معایب خودش رو داره.
من بصورت خلاصه شما رو با اونها آشنا میکنم و در پست های بعد هر کدوم رو بیشتر توضیح میدم.
❌ انواع بارگذاری داده از دیتابیس در لاراول:
😐 بارگذاری تنبل (Lazy Loading)
😐 بارگذاری پیشدستانه (Eager Loading)
💎 بارگذاری تنبل (Lazy Loading): تو این روش، دادههای مرتبط تنها زمانی بارگذاری میشوند که به آنها نیاز داشته باشید.
برای نمونه فرض کنید مدل User به مدل Profile متصل هست، وقتی user->profile رو صدا بزنید، لاراول در همان لحظه یک کوئری جدید برای بارگذاری پروفایل کاربر اجرا میکنه. این روش در مواردی مناسب هست که دادههای مرتبط در همه جا نیاز نیست، این ممکنه منجر به اجرای کوئریهای اضافی شود و به مشکل N+1 منجر گردد!
💎 بارگذاری پیشدستانه (Eager Loading):
توی این روش لاراول از همون ابتدا دادههای مرتبط رو بارگذاری میکنه و این کارایی رو بهتر خواهد کرد
مثلاً با استفاده از متد with:
این روش از یک کوئری برای بارگذاری همه کاربران و پروفایلهایشان استفاده میکنه و به این ترتیب از ایجاد کوئریهای اضافی جلوگیری میکند.
🖥 بطور خلاصه میشه گفت:
بارگذاری تنبل برای زمانی مناسب هست که دادهها همیشه مورد نیاز نیستند، و بارگذاری پیشدستانه برای بهبود کارایی و جلوگیری از اجرای کوئریهای اضافی مناسب هست.
#laravel
👾 @pishroapp
من بصورت خلاصه شما رو با اونها آشنا میکنم و در پست های بعد هر کدوم رو بیشتر توضیح میدم.
برای نمونه فرض کنید مدل User به مدل Profile متصل هست، وقتی user->profile رو صدا بزنید، لاراول در همان لحظه یک کوئری جدید برای بارگذاری پروفایل کاربر اجرا میکنه. این روش در مواردی مناسب هست که دادههای مرتبط در همه جا نیاز نیست، این ممکنه منجر به اجرای کوئریهای اضافی شود و به مشکل N+1 منجر گردد!
توی این روش لاراول از همون ابتدا دادههای مرتبط رو بارگذاری میکنه و این کارایی رو بهتر خواهد کرد
مثلاً با استفاده از متد with:
$users = User::with('profile')->get(); این روش از یک کوئری برای بارگذاری همه کاربران و پروفایلهایشان استفاده میکنه و به این ترتیب از ایجاد کوئریهای اضافی جلوگیری میکند.
بارگذاری تنبل برای زمانی مناسب هست که دادهها همیشه مورد نیاز نیستند، و بارگذاری پیشدستانه برای بهبود کارایی و جلوگیری از اجرای کوئریهای اضافی مناسب هست.
#laravel
Please open Telegram to view this post
VIEW IN TELEGRAM
اگر در دنیای برنامهنویسی حرفهای وارد شدید و میخواهید به سطح بالاتری برسید، سایت Refactoring.Guru میتونه یکی از بهترین منابعی باشه که میتونید برای یادگیری Design Patterns استفاده کنید. این سایت به زبان ساده و با مثالهای کاربردی، به شما توضیح میده که چرا و چطور از این الگوها برای نوشتن کدهایی تمیزتر، منعطفتر و قابل نگهداری استفاده کنید.
⏬ الگوهای طراحی، به طور کلی، به شما کمک میکنن تا مشکلات پیچیده رو با استفاده از راهحلهای اثباتشده و استاندارد، در قالب ساختارهایی خاص و قابلاستفاده در پروژههای مختلف، حل کنید. این یعنی دیگه مجبور نیستید هر بار از صفر شروع کنید.
🎮 یکی از ویژگیهای مهم این سایت اینه که شما نه تنها با هر الگو آشنا میشید، بلکه میفهمید کجا و چرا باید از اون استفاده کنید. به همین دلیل، Refactoring.Guru یه مرجع عالی برای هر برنامهنویسیه که میخواد در کدنویسی حرفهای و بهینهتر بشه./ DevTwitter
👾 @pishroapp
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2 1
دوستان در #لاراول میتونید به راحتی قوانین مشخصی برای رمز عبور کاربران تعیین کنید تا امنیت بیشتری در برنامه خود داشته باشید.
کد زیر رو ببینید، توی متد boot در AppServiceProvider، میتونیم مجموعهای از قواعد پیشفرض برای رمز عبور رو مشخص کنیم
class AppServiceProvider
{
public function boot(): void
{
Password::defaults(function () {
return Password::min(12)
->letters()
->numbers()
->symbols()
->mixedCase()
->uncompromised();
});
}
}
همونطور که میبینید با متد Password::defaults یکسری قوانین اعمال شده که با استفاده از اون همهی رمز عبورهای سیستم از قوانین کلی و تعریف شده توسط این متد میتونن پیروی کنن موقع اعتبار سنجی.
و برای استفاده از این قوانین هم میتونید بصورت زیر هنگام اعتبار سنجی استفاده کنید ازش
request()->validate([
['password' => ['required', Password::defaults()]]
])
توی مثال بالا، رمز عبور باید:
حداقل ۱۲ کاراکتر طول داشته باشد.
شامل حروف و اعداد باشد.
شامل نمادهای خاص و حروف بزرگ و کوچک باشد.
بررسی شود که در دیتابیسهای عمومی درز کرده نباشد.
#laravel
Please open Telegram to view this post
VIEW IN TELEGRAM
گولنگ ۱۵ ساله شد.
سرعت رشد خوب گولنگ در فراگیر شدن چشمگیر بوده در این مدت. مخصوصا در حوزه ابزارهای cloud این قضیه خیلی بیشتر دیده میشه.
حالا خبر نویدبخش تیم گولنگ هم توجه ویژه به توسعه زیرساخت های هوش مصنوعی با گولنگ هست که در صورت محقق شدن میتونه به گولنگ اجازه بده نقش موثرتری در دنیای کامپیوتر و هوش مصنوعی ایفا کنه./ منبع gocasts
Go Turns 15
https://go.dev/blog/15years
#golang
👾 @pishroapp
سرعت رشد خوب گولنگ در فراگیر شدن چشمگیر بوده در این مدت. مخصوصا در حوزه ابزارهای cloud این قضیه خیلی بیشتر دیده میشه.
حالا خبر نویدبخش تیم گولنگ هم توجه ویژه به توسعه زیرساخت های هوش مصنوعی با گولنگ هست که در صورت محقق شدن میتونه به گولنگ اجازه بده نقش موثرتری در دنیای کامپیوتر و هوش مصنوعی ایفا کنه./ منبع gocasts
Go Turns 15
https://go.dev/blog/15years
#golang
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4👎1 1
This media is not supported in your browser
VIEW IN TELEGRAM
🔹+خوش به حالت، برنامه نویسی خیلی آرام بخشه.
(من بعد از اینکه 20 ساعته دارم یه ارور تکراری میگیرم)
(من بعد از اینکه 20 ساعته دارم یه ارور تکراری میگیرم)
😁8😍2
use Illuminate\Support\Facades\Mail;
$mailer = Mail::build([
'transport' => 'smtp',
'host' => '127.0.0.1',
'port' => 587,
'encryption' => 'tls',
'username' => 'usr',
'password' => 'pwd',
'timeout' => 5,
]);
$mailer->send($mailable);
#laravel
Please open Telegram to view this post
VIEW IN TELEGRAM
🔸نسخهای که #گوگل منتشر کرده میتواند نگاهی اجمالی به نسل بعدی سیستمعامل #اندروید را به ما ارائه دهد. این نسخه روی گسترش قابلیتهای کتابخانه عکسها و به اشتراکگذاری دادههای پزشکی متمرکز شده است. تغییری که ماه گذشته گوگل در برنامه زمانی انتشار اندروید ایجاد کرد، باعث میشود گوشیهای غیرپیکسل که سال ۲۰۲۵ روانه بازار میشوند، مجبور نباشند ماهها منتظر دریافت جدیدترین آپدیت اندروید بمانند.
🔸پیشنمایش اندروید ۱۶ که امروز منتشرشده به توسعهدهندگان امکان میدهد قابلیت انتخاب عکس اندروید را مستقیم در اپلیکیشنهای خود ادغام کنند. این قابلیت به کاربران اندروید اجازه میدهد تصاویر و ویدیوهای خاصی را که میخواهند به اشتراک بگذارند، انتخاب کنند.
🔸به گفته گوگل، نسخه پیشنمایش اپلیکیشن Health Connect حاوی نسخه اولیه APIهایی است که از سوابق سلامت پشتیبانی میکنند و به اپلیکیشنها اجازه میدهند سوابق پزشکی را در قالب FHIR بخوانند و بنویسند. منبع Digiato
Please open Telegram to view this post
VIEW IN TELEGRAM
گفته میشه تیم لاراول چندین بهینهسازی در ساختار اصلی فریمورک اعمال کردهاند تا برنامههایی که با #لاراول 12 ساخته میشون سریعتر و کارآمدتر اجرا بشن:
لاراول 12 مکانیزم مسیریابی بهینهتری را معرفی کرده که سربار مرتبط با پردازش درخواستهای HTTP را کاهش میده. این بهروزرسانی نه تنها زمان پاسخدهی را بهبود میبخشد بلکه به برنامههای لاراول این امکان را میدهد که درخواستهای همزمان بیشتری را مدیریت کنند، که
این موضوع به مقیاسپذیری برنامهها با افزایش ترافیک کمک میکند.
کش یکی از عناصر کلیدی برای برنامههای با عملکرد بالا است و لاراول 12 سیستم کش خود را بهبود داده. نسخه جدید پشتیبانی بهتری از کشهای توزیعشده مانند Redis و Memcached ارائه میدهد و کنترل دقیقتری بر انقضای کش و حذف اون فراهم میکنه. این ویژگی تضمین میکنه که برنامه محتوا رو سریعتر و با اطمینان بیشتری ارائه بده.
در حالی که لاراول مدتهاست از پردازشهای پسزمینه از طریق صفها پشتیبانی میکند، لاراول 12 پشتیبانی غیرهمزمان یکپارچهتری را در سراسر فریمورک ارائه میدهد. این بدان معناست که توسعهدهندگان اکنون میتوانند بهراحتی کدی بنویسند که عملیات غیرمسدودکننده انجام بده، که این امر عملکرد وظایفی را که نیاز به عملیات I/O مانند آپلود فایل یا درخواستهای API دارند، بهبود میبخشد.
#laravel
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4 4
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
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
🔰 هوش مصنوعی چهرهها را لو میدهد!
▫️ یک خبرنگار هلندی، در خیابانهای شلوغ راه میرود و صورتش را را به سمت رهگذران میچرخاند و در لحظه، هوش مصنوعی، اطلاعات رهگذر را روی صفحه نمایش ظاهر میکند.
ITSN_IR منبع
👾 @pishroapp
▫️ یک خبرنگار هلندی، در خیابانهای شلوغ راه میرود و صورتش را را به سمت رهگذران میچرخاند و در لحظه، هوش مصنوعی، اطلاعات رهگذر را روی صفحه نمایش ظاهر میکند.
ITSN_IR منبع
Please open Telegram to view this post
VIEW IN TELEGRAM
سلام بچه ها
🌟 یکی از قابلیت های جذابی که تو php 8.4 منتشر شده Asymmetric property visibility یا قابلیت دید نامتقارن هست!
اما Asymmetric property visibility چیه؟ و کجا بکار میاد؟
❔ این ویژگی جدید به ما این امکان رو میده که دیدهای متفاوتی برای خواندن و نوشتن روی property ها کلاسهامون اعمال کنیم.
😐 ما با استفاده از این قابلیت میتونیم یه property کلاس رو به گونه ای تنظیم کنیم که دسترسی برای خواندن یا نوشتن فقط از داخل خوده کلاس یا کلاس فرزند یا از بیرون قابل تغییر باشه!
فک کنم متوجه شدین👌
حالا یه مثال بزنیم:
ما یه کلاس بصورت زیر داریم:
اینجا تغریف کردیم که مقادیر noscript, author و pubYear برای نوشتن (set) حالت های private و protected رو داشته باشن
حالا یه کلاس دیگه میاد و از کلاس Book ارث بری میکنه:
خوب!
اینجا ما به یه خطا مواجه میشیم اگر متد update از کلاس SpecialBook رو فراخونی کنیم!
در کلاس Book ویژگی pubYear بصورت private تعریف شده! و فقط توی همون کلاس قابل تعییر هست و ما به خطا(Fatal Error) بر میخوریم!
اما ویژگی author که بصورت protected تعریف شده قابل تغییر هست و ما به خطایی بر نمیخوریم برای این ویژگی!
👑 خوب این ویژگی یه قابلیت جذابه که به امنیت بیشتر داده ها و کاهش نوشتن getter و setter کمک میکنه!
التبه! من سعی میکنم یه مقاله بنویسم و این ویژگی رو بصورت کامل توضیح بدم پس منتظر باشین🎁
لایک هم یادتون نره جونِ دلا😁
#php
👾 @pishroapp
اما Asymmetric property visibility چیه؟ و کجا بکار میاد؟
فک کنم متوجه شدین
حالا یه مثال بزنیم:
ما یه کلاس بصورت زیر داریم:
class Book
{
public function __construct(
public private(set) string $noscript,
public protected(set) string $author,
protected private(set) int $pubYear,
) {}
}
اینجا تغریف کردیم که مقادیر noscript, 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 تعریف شده قابل تغییر هست و ما به خطایی بر نمیخوریم برای این ویژگی!
التبه! من سعی میکنم یه مقاله بنویسم و این ویژگی رو بصورت کامل توضیح بدم پس منتظر باشین
لایک هم یادتون نره جونِ دلا
#php
Please open Telegram to view this post
VIEW IN TELEGRAM
خوب فرض کنید یه آرایه بصورت زیر دارید:
$data = [
'user' => [
'avatar' => 'url',
'mobile' => '0912',
'email' => 'pishroapp@pishroapp.net'
],
];
و میخواید موقع اعتبار سنجی بررسی کنید که کلیدهای avatar, mobile و email وجود داشته باشه
ولیدیت شما بصورت زیر میشه:
$rules = [
'user' => [
'array',
'required_array_keys:avatar,mobile,email',
],
];
به این صورت میتونید اعتبار سنجی رو برای کلیدها انجام بدین
#laravel
Please open Telegram to view this post
VIEW IN TELEGRAM
توی گولنگ هم ما توابع ناشناس یا (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)
}#golang
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥1
شکستن مرزهای زمان و محاسبه: جهش کوانتومی گوگل با تراشهی Willow، لطفا 10 سپتیلیون سال دیگر تشریف بیاورید!
گوگل با ارائهی تراشهی کوانتومی جدید خود با نام «Willow» گامی بزرگ در جهت دستیابی به رایانش کوانتومی مقاوم در برابر خطا و مقیاسپذیر برداشته است. در آزمونهای مرجع، این تراشه توانست یک محاسبهی استاندارد را در کمتر از پنج دقیقه انجام دهد؛ محاسبهای که برای یک ابررایانهی پیشرو، بیش از 10^25 سال طول میکشید! مدتی بسیار فراتر از عمر کل جهان. این نشاندهندهی توان بالقوهی معماریهای کوانتومی در گشودن افقهای نوین برای حل مسائل پیچیدهی علمی و صنعتی است.
این تراشه بر پایهی معماری ماژولار و مبتنی بر کیوبیتهای ابررسانا طراحی شده که امکان افزایش تعداد کیوبیتها را بدون از دست دادن کیفیت کوانتومی فراهم میسازد. طراحی Willow بر تصحیح خطای کوانتومی و رمزگذاری اطلاعات در کیوبیتهای منطقی تکیه دارد و از کدهای سطح بالا برای کاهش نرخ خطاها در فرایند محاسبات بهره میگیرد. با این رویکرد، امید آن میرود که ظرفیت اجرای الگوریتمهای کوانتومی پیچیده، روزبهروز افزایش یابد.
ویژگی متمایز Willow نهتنها در بهبود سختافزار، بلکه در بهرهگیری از سامانههای نرمافزاری پیشرفته و ابزارهای شبیهسازی مجازی نیز نمود مییابد. این ابزارها به پژوهشگران اجازه میدهند پیش از تولید فیزیکی، ایدهها و طرحهای خود را در محیطی دیجیتال ارزیابی و بهینهسازی کنند. دستاورد این تلاشها دستیابی به توان محاسباتی بیسابقهای است که همانطور که در ابتدا ذکر شد در مقام مقایسه برای بهترین سوپرکامپیوترهای جهان 10 سپتیلیون! سال طول خواهد کشید
به این ترتیب، شاید بتوان گفت Willow آغازگر مسیری است که میتواند رایانش کوانتومی را از آزمایشگاه به عرصهی کاربردهای صنعتی، علمی و فناوری بکشاند.
لینک مطلب اصلی در بلاگ گوگل:
https://blog.google/technology/research/google-willow-quantum-chip/
منبع:DevTwitter
👾 @pishroapp
گوگل با ارائهی تراشهی کوانتومی جدید خود با نام «Willow» گامی بزرگ در جهت دستیابی به رایانش کوانتومی مقاوم در برابر خطا و مقیاسپذیر برداشته است. در آزمونهای مرجع، این تراشه توانست یک محاسبهی استاندارد را در کمتر از پنج دقیقه انجام دهد؛ محاسبهای که برای یک ابررایانهی پیشرو، بیش از 10^25 سال طول میکشید! مدتی بسیار فراتر از عمر کل جهان. این نشاندهندهی توان بالقوهی معماریهای کوانتومی در گشودن افقهای نوین برای حل مسائل پیچیدهی علمی و صنعتی است.
این تراشه بر پایهی معماری ماژولار و مبتنی بر کیوبیتهای ابررسانا طراحی شده که امکان افزایش تعداد کیوبیتها را بدون از دست دادن کیفیت کوانتومی فراهم میسازد. طراحی Willow بر تصحیح خطای کوانتومی و رمزگذاری اطلاعات در کیوبیتهای منطقی تکیه دارد و از کدهای سطح بالا برای کاهش نرخ خطاها در فرایند محاسبات بهره میگیرد. با این رویکرد، امید آن میرود که ظرفیت اجرای الگوریتمهای کوانتومی پیچیده، روزبهروز افزایش یابد.
ویژگی متمایز Willow نهتنها در بهبود سختافزار، بلکه در بهرهگیری از سامانههای نرمافزاری پیشرفته و ابزارهای شبیهسازی مجازی نیز نمود مییابد. این ابزارها به پژوهشگران اجازه میدهند پیش از تولید فیزیکی، ایدهها و طرحهای خود را در محیطی دیجیتال ارزیابی و بهینهسازی کنند. دستاورد این تلاشها دستیابی به توان محاسباتی بیسابقهای است که همانطور که در ابتدا ذکر شد در مقام مقایسه برای بهترین سوپرکامپیوترهای جهان 10 سپتیلیون! سال طول خواهد کشید
به این ترتیب، شاید بتوان گفت Willow آغازگر مسیری است که میتواند رایانش کوانتومی را از آزمایشگاه به عرصهی کاربردهای صنعتی، علمی و فناوری بکشاند.
لینک مطلب اصلی در بلاگ گوگل:
https://blog.google/technology/research/google-willow-quantum-chip/
منبع:DevTwitter
Please open Telegram to view this post
VIEW IN TELEGRAM
Google
Meet Willow, our state-of-the-art quantum chip
Our new quantum chip demonstrates error correction and performance that paves the way to a useful, large-scale quantum computer.
❤1🔥1
یک بازی جذاب
حدس بزن از این ده نفر شخصیت کی مخترع زبان برنامه نویسی هست و کی یک قاتل سریالی
https://vole.wtf/coder-serial-killer-quiz/
@pishraopp
حدس بزن از این ده نفر شخصیت کی مخترع زبان برنامه نویسی هست و کی یک قاتل سریالی
https://vole.wtf/coder-serial-killer-quiz/
@pishraopp
VOLE.wtf
Programming Language Inventor or Serial Killer? 💻🔪
Try to spot who liked hacking away at corpses rather than computers
❤2🔥1
🔰 گیت هاب به مناسبت 150میلیونی شدنش کوپایلت را رایگان کرد.
گیت هاب با این کار تحولی بزرگ در هوش مصنوعی برنامه نویسی رقم زد این سرویس با ارائه ماهانه ۲۰۰۰ پیشنهاد کد و ۵۰ پرسش رایگان در VSCode، امکان بهرهمندی از قدرت مدلهایی مانند Claude 3.5 Sonnet را برای همه فراهم میکند.
👾 @pishroapp
گیت هاب با این کار تحولی بزرگ در هوش مصنوعی برنامه نویسی رقم زد این سرویس با ارائه ماهانه ۲۰۰۰ پیشنهاد کد و ۵۰ پرسش رایگان در VSCode، امکان بهرهمندی از قدرت مدلهایی مانند Claude 3.5 Sonnet را برای همه فراهم میکند.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2❤1