Gopher Academy
3.33K subscribers
916 photos
40 videos
279 files
1.96K links
🕸 Gopher Academy

🔷interview golang
https://github.com/mrbardia72/Go-Interview-Questions-And-Answers

حمایت مالی:
https://www.coffeete.ir/mrbardia72

ادمین:
@mrbardia72
Download Telegram
🔵 عنوان مقاله
Raylib-Go-Wasm: Raylib Go Bindings for the Web

🟢 خلاصه مقاله:

کتابخانه Raylib که برای ساخت بازی‌های ویدیویی کاربرد دارد، این امکان را فراهم می‌سازد تا از زبان برنامه‌نویسی Go استفاده شود. اما تا کنون، امکان هدف‌گذاری پلتفرم وب در بستر Go موجود نبود، که این یک محدودیت بزرگ بود. با این حال، تلاش‌هایی در جریان است تا این قابلیت به Raylib افزوده شود و اکنون در مراحل اولیه قرار دارد. خالق این تغییرات به دنبال کمک و بازخورد از جامعه توسعه‌دهندگان است تا بتوان روی پلتفرم وب نیز بازی‌هایی ساخت. این پیشرفت برای توسعه‌دهندگانی که علاقمند به ساخت بازی‌های وب‌محور هستند مفید خواهد بود.

🟣لینک مقاله:
https://golangweekly.com/link/170276/web


👑 @gopher_academy
1
Forwarded from Bardia & Erfan
⭕️ قیمت ارزهای آزاد | شنبه 24 خرداد 1404 - 15:46

🇺🇸 دلار : 835,600 ریال
🇪🇺 یورو : 970,200 ریال
🇬🇧 پوند انگلیس : 1,136,200 ریال
🕊3
Forwarded from Bardia & Erfan
⭕️ گزارش قیمت ارزهای دیجیتال | شنبه 24 خرداد 1404 - 15:48

◽️ بیت کوین : 98,116,794,000 ریال
◽️ بیت کوین : 105,016.37 تتر

◽️ اتریوم : 2,367,833,900 ریال
◽️ اتریوم : 2,534.34 تتر

◽️ تتر : 934,370 ریال
◽️ تتر : 1.000157 تتر
🕊31
در ادامه یک خلاصه‌ٔ کوتاه و مفید از مقاله

«More predictable benchmarking with testing.B.Loop»

نوشته‌ی Junyang Shao در وبلاگ Go منتشرشده در ۲ آوریل ۲۰۲۵ آورده شده است

---

🔄 مشکل اولیه با b.N

تا قبل از Go 1.24، بنچمارک‌ها با for range b.N { ... } نوشته می‌شدند که:

نیاز به b.ResetTimer() و b.StopTimer() برای مدیریت دقیق زمان داشت.

به‌دلیل inlining و حذف کد بدون اثر جانبی، گاهی کد تست‌شده اصلاً اجرا نمی‌شد و زمان‌های غیرواقعی تولید می‌کرد .
---
معرفی testing.B.Loop

Go 1.24 متد جدیدی معرفی کرد:

func Benchmark(b *testing.B) {
... setup once ...
for b.Loop() {
// کد اصلی برای بنچمارک
}
... cleanup once ...
}

مزایای کلیدی آن عبارتند از:

مدیریت خودکار زمان: زمان‌سنج به‌صورت خودکار بین setup/loop/cleanup کنترل می‌شود؛ نیازی به ResetTimer یا StopTimer نیست .

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

یکبار اجرا برای تعیین تعداد تکرارها: برخلاف روش قدیمی که تابع benchmark چندین‌بار با b.Nهای مختلف فراخوانی می‌شد، این روش تنها یک‌بار اجرا شده و کارآمدتر است .

---
⚙️ نکات قابل توجه

اگر در هر بار اجرا نیاز به پرکردن داده‌ها یا عملیات خارج از loop دارید، باید خودتان با b.StopTimer() و b.StartTimer() مدیریت کنید:

> مثال: مقداردهی تصادفی پیش از sort .

داخل یک تابع بنچمارک، باید فقط از for b.Loop() استفاده شود، نه ترکیبی از b.N و b.Loop .

--
🧭 توصیه و نتیجه‌گیری

testing.B.Loop در Go 1.24 نسل جدیدی از بنچمارک‌ها است:

ساده‌تر، دقیق‌تر و مقاوم‌تر در برابر اشتباهات رایج.

برای بنچمارک‌های جدید، به‌عنوان روش پیش‌فرض توصیه می‌شود؛
و برای بنچمارک‌های موجود نیز می‌توان با کمی تغییر به آن مهاجرت کرد .
---
فقط یک نگاه مختصر

✳️ ساده‌سازی کد

⏱️ حذف نیاز به مدیریت زمان دستی

🔒 جلوگیری از بهینه‌سازی‌های مخرب

عملکرد سریع‌تر در اجرا
2👍2🔥1
🔵 عنوان مقاله
Modern (Go) Application Design

🟢 خلاصه مقاله:

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

🟣لینک مقاله:
https://golangweekly.com/link/170260/web


👑 @gopher_academy
3
جاوید و پیروز باد ایران ما
12🕊6
🔴 اطلاعیه مهم

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

ما هم به عنوان یک رسانه، وظیفه خودمون دونستیم که در کنار محتوای همیشگی، صدای مردم باشیم و اطلاعات درست و مهم رو به‌موقع منتشر کنیم 📰

با این حال، تصمیم نهایی با شماست:

❤️ اگر موافقید که پوشش خبری موقت داشته باشیم، خوشحال می‌شیم همراه‌مون باشید.
🕊 نیازی به پوشش خبری نیست

لطفاً با ری‌اکشن مشخص کنید که کدوم مسیر رو ترجیح می‌دید 🙏
❤️ = پوشش خبری موقت
🕊 = نیازی به پوشش خبری نیست

🌷فقط توجه کنید چنین اخباری روی توی چنل شخصی براتون میذارم

@bardia_kazemi
🕊10712
🔵 عنوان مقاله
Go 1.25 Release Candidate 1

🟢 خلاصه مقاله:

نسخه نهایی Go 1.25 قرار است در ماه آگوست منتشر شود، اما تیم Go از حال حاضر اطمینان کافی دارد تا اولین نسخه RC را ارائه دهد. تنها تغییر در زبان، حذف مفهوم انواع اصلی است که اخیراً توسط رابرت گریسمر توضیح داده شده است. علاوه بر این، تغییراتی چون یک سیستم زباله‌روبی تجربی جدید، تغییرات در GOMAXPROCS و بهبود اطلاعات اشکال‌زدایی در حال انجام است. این تغییرات نه تنها قابلیت‌های جدیدی را اضافه می‌کنند بلکه ویژگی‌های موجود را نیز بهبود می‌بخشند تا زبان برنامه‌نویسی Go همچنان به عنوان یک انتخاب برتر برای برنامه‌نویسانی که به دنبال زبانی کارآمد، قابل اتکا و ساده هستند، باقی بماند.

🟣لینک مقاله:
https://golangweekly.com/link/170355/web


👑 @gopher_academy
1👍1🎉1🕊1
Forwarded from omid trade 360
🔵 عنوان مقاله
The next Nubank will be built on stablecoins (2 minute read)

🟢 خلاصه مقاله:
مقاله‌ای که مرور شده، به بررسی نقش فزاینده‌ی استیبل‌کوین‌ها (ارزهای دیجیتال پایدار) در سیستم مالی جهانی می‌پردازد. این ارزها، که از قبل به عنوان ابزار پرداخت شناخته شده‌اند، اکنون به عنوان یک لایه بنیادین در پلتفرم‌های مالی جهانی در حال ظهور هستند و انتظار می‌رود که نقشی مشابه به نقشی که Stripe و BaaS (بانکداری به عنوان یک سرویس) در دهه گذشته ایفا کردند، ایفا کنند، اما در مقیاس بسیار گسترده‌تری. با اجرای قانون GENIUS و فراهم شدن شفافیت قانونی، اکنون استیبل‌کوین‌ها می‌توانند به عنوان معادل نقد عمل کنند، موانع مجوز را کاهش می‌دهند و امکان پرداخت‌های فوری و جهانی را فراهم می‌آورند و برای فین‌تک‌های جدید بستری قدرتمند ایجاد می‌کنند. استفاده‌های جدیدی مانند عملیات خزانه‌داری SpaceX و حقوق و دستمزد جهانی Deel در حال ظهور است و شرکت‌هایی که استیبل‌کوین‌ها را به عنوان زیرساخت در نظر می‌گیرند در موج بعدی فین‌تک قدرتمندتر خواهند بود.

🟣لینک مقاله:
https://www.linkedin.com/posts/sytaylor_the-next-nubank-will-be-built-on-stablecoins-activity-7335711920995360768-MQ-V?&utm_source=tldrcrypto


👑 @omidtrade360
1
🔵 عنوان مقاله
GoAT: A Go Assembly Transpiler for C

🟢 خلاصه مقاله:

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

🟣لینک مقاله:
https://golangweekly.com/link/170262/web


👑 @gopher_academy
5
🔵 عنوان مقاله
Complete Go for Professional Developers

🟢 خلاصه مقاله:

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

🟣لینک مقاله:
https://golangweekly.com/link/170254/web


👑 @gopher_academy
2👍2
🔵 عنوان مقاله
Prevent Postgres Slowdowns on Go Apps with This Check List

🟢 خلاصه مقاله:

استفاده از چک لیست عملکرد ماهانه PostgreSQL برای برنامه‌های Go، روشی ارزشمند برای توسعه دهندگان است تا بتوانند به صورت منظم و قبل از تبدیل شدن به مشکلات بزرگ، مشکلات احتمالی را شناسایی و رفع کنند. این چک لیست شامل بررسی‌‌های مختلفی در زمینه عملیات پایگاه داده مانند تجزیه و تحلیل پرسش‌های کُند، ایندکس‌سازی، کنترل ارتباطات و تخصیص منابع است. استفاده مؤثر از این چک لیست، فرهنگ نگهداری پیشگیرانه را در تیم‌های توسعه ترویج می‌دهد و منجر به کشف و اصلاح زودهنگام مشکلات می‌شود، که نه تنها زمان را می‌گرداند بلکه از خرابی‌های احتمالی یا کاهش شدید عملکرد جلوگیری می‌کند. اتخاذ این فرآیند بازبینی پیشگیرانه ماهانه تضمین می‌کند که برنامه‌های Go کارآمد، پایدار و واکنش‌گرا باقی می‌مانند.

🟣لینک مقاله:
https://golangweekly.com/link/170263/web


👑 @gopher_academy
2
🔵 عنوان مقاله
The Draft Go 1.25 Release Notes

🟢 خلاصه مقاله:

نسخه اولیه کاندید انتشار برای نسخه ۱.۲۵ زبان برنامه‌نویسی گو، معروف به Go 1.25 RC1، امروز منتشر شده است. در حالی که کار بر روی یادداشت‌های نسخه نهایی همچنان ادامه دارد، این یادداشت‌ها به عنوان منبع معتبری برای آگاهی از ویژگی‌ها و بهبود‌های جدید در نسخه نهایی عمل می‌کنند.

🟣لینک مقاله:
https://golangweekly.com/link/170342/web


👑 @gopher_academy
2
🔵 عنوان مقاله
go-redis 9.10: The Official Redis Client for Go

🟢 خلاصه مقاله:

نسخه ۸.۰ Redis به تازگی منتشر شده و به عنوان منبع باز، از ویژگی‌های جدیدی پشتیبانی می‌کند که شامل مجموعه‌های برداری و جستجوی شباهت برداری است. تجربه‌های من با این امکانات نویدبخش بوده و همچنین پشتیبانی آزمایشی از مجموعه‌های برداری در کتابخانه go-redis اضافه شده است. اسناد راهنمای این ویژگی‌ها در وب‌سایت اصلی به روز رسانی شده‌اند.

🟣لینک مقاله:
https://golangweekly.com/link/170268/web


👑 @gopher_academy
1👍1🍾1
درود دوستان عزیزم 💔

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

من هم مثل شما ناراحتم، همدردم… و این متن رو نه به عنوان صاحب یه کانال، بلکه به عنوان یه رفیق یه برادر کوچک تر براتون می‌نویسم.

فقط یه سوال ازتون دارم:
آیا ادامه‌ی پست گذاشتن توی کانال – طبق روال قبل – توی این روزها براتون مفیده یا نه؟👇

❤️ اگه فکر می‌کنید ادامه بدم و این فضا شاید حتی کوچیک‌ترین تسکینی باشه، با دل و جون ادامه می‌دم.

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

با ری اکشن بهم بگید /

❤️ ادامه بده طبق روال گذشته
🕊 موقتا پستی منتشر نکنید
45🕊31
🔵 عنوان مقاله
tinygo-tkey: Develop Go Apps for the Tillitis TKey-1

🟢 خلاصه مقاله:

دستگاه TKey یک توکن امنیتی USB منبع باز و نوین است. رون، که به خاطر کارهایش با TinyGo شناخته شده است، روشی را برای اجرای برنامه‌های ساخته شده با زبان برنامه‌نویسی Go روی این دستگاه ایجاد کرده‌است. این قابلیت نه تنها کاربرد TKey را گسترش می‌دهد، بلکه امکانات جدیدی را برای توسعه‌دهندگانی که می‌خواهند از سادگی و کارایی زبان Go در محیطی با امنیت سخت‌افزاری استفاده کنند، فراهم می‌آورد.

🟣لینک مقاله:
https://golangweekly.com/link/170273/web


👑 @gopher_academy
👍2
Gopher Academy pinned «درود دوستان عزیزم 💔 میدونم این روزا شرایط خیلی سخته… هیچ‌کدوم‌مون انتظار نداشتیم که وارد همچین فضای پرتنش، ناراحت‌کننده و بعضاً جنگی بشیم. تو این حال و هوای که پر از دلهره‌ست، واقعاً درک می‌کنم که حال و حوصله‌ی خیلی چیزا رو نداریم. من هم مثل شما ناراحتم،…»