Gopher Academy
3.33K subscribers
914 photos
40 videos
279 files
1.95K links
🕸 Gopher Academy

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

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

ادمین:
@mrbardia72

ادمین تبلیغات:
@labdon_ads
Download Telegram
🔵 عنوان مقاله
Using the SIGHUP Signal for Configuration Reloads

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

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


👑 @gopher_academy
👍1🎉1🍾1
🔵 عنوان مقاله
Firebase Brings Its Genkit AI Framework to Go

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

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

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


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

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

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

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


👑 @gopher_academy
👍6🔥1
🔵 عنوان مقاله
Cheating the Reaper in Go

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

مقاله‌ی میگوئل به بررسی چگونگی به کارگیری مدیریت دستی حافظه در زبان برنامه‌نویسی گو، علی‌رغم وجود جمع‌آوری خودکار زباله‌ها (GC) می‌پردازد. او با استفاده از بسته‌ی 'unsafe'، یک آلوکیتور کارآمد بساز بسیار سریعی را در گو پیاده‌سازی کرده و نشان می‌دهد که چه زمانی و چگونه می‌توان به طور ایمن، فرایندهای خودکار GC را دور زد. این مقاله راهنمایی کامل برای توسعه‌دهندگانی است که به دنبال بهبود عملکرد برنامه‌های خود در مواردی هستند که عملکرد GC ممکن است مانعی ایجاد کند.

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


👑 @gopher_academy
👍3
🔵 عنوان مقاله
Go Event-Driven: Build Backend Systems That Actually Scale

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

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

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


👑 @gopher_academy
👍2🔥1
🔵 عنوان مقاله
Bufstream: Robust Streaming for gRPC

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

نسخه جدیدی از Kafka با عنوان اجرای cloud-first که برای جریان‌های go gRPC طراحی شده، عرضه شده که بدون حالت است، خودکار مقیاس‌پذیری می‌کند، از نظر طرح‌واره آگاه است و تا هشت برابر ارزان‌تر از نگهداری یک استک Kafka معمولی است. این سیستم در گزارش Jepsen مورد آزمایش و تایید قرار گرفته‌است، که نشان‌دهنده‌ی قابلیت اطمینان و کارایی آن در سطح شرکت‌ها است.

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


👑 @gopher_academy
👍3🔥1
🔵 عنوان مقاله
Using Differential Coverage for Debugging

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

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

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


👑 @gopher_academy
👍1
🔵 عنوان مقاله
aerc: A Go-Powered Terminal-Based Email Client

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

مقاله به بررسی یک مشتری ایمیل نوآورانه می‌پردازد که از ترکیب ابزارها و فناوری‌های موجود مانند Pine و Vim به همراه قابلیت‌های tmux ساخته شده است. این مشتری ایمیل، که با زبان برنامه‌نویسی Go کار می‌کند، از ایمیل‌های HTML پشتیبانی کرده و قابلیت‌های امنیتی مانند امضای PGP و پروتکل‌های IMAP، Maildir و SMTP را نیز دارا می‌باشد. این امکانات متنوع، کاربردی را برای کاربران فراهم می‌کند تا سیستم ایمیل خود را مطابق با نیازهای خاص خود تنظیم و استفاده کنند.

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


👑 @gopher_academy
👍3
🔵 عنوان مقاله
Bufstream: Kafka and gRPC for the Modern Age

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

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

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


👑 @gopher_academy
👍1🔥1
درود وقت بخیر به همگی دوستان

دوستانی که به صورت ریموت با کشورهای خارجی کار میکنن بی زحمت پی وی بهم پیام بدن
@mrbardia72

چندتا سوال کوتاه ازتون بپرسم در مورد تجربه‌تون، مسیر شروع، چالش‌ها و نکات مهم دیگه

ممنون میشم اگر راهنمایی کنید.
لطفا از سرکنجکاوی پیام ندید اگر واقعا تجربه کار کردن رو دارید پیام بدید
با احترام
👍2🕊1🍾1
Forwarded from Gopher Job
🟢اگر کارفرما هستی و دنبال برنامه نویس گولنگ هستی آگهی شغلی تو برامون بفرستید
🟢اگر کارجو هستید رزومه خودتون رو براساس فرمتی زیر برامون بفرست

💋فقط استک گولنگ پروموت میکنیم.

🤝موارد زیر را به همراه فایل pdf رزومه بفرستید:

🎯نام و نام خانوادگی (اجباری)
🎯مدت سابقه کار (اجباری)
🎯لینکدین (اختیاری)
🎯گیتهاب (اختیاری)
🎯محل سکونت  (اجباری)
🎯امکان نقل مکان برای کار دارم یا خیر
(اجباری)


🕊Admin:
@mrbardia72


👑 @gopher_job
👍2🕊1
🔵 عنوان مقاله
Practical Patterns for Graceful Shutdowns

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

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

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


👑 @gopher_academy
Persian Gulf | TAK3DA.COM
Shadmehr Aghili
آهنگ جدید شادمهر عقیلی - خلیج فارس

https://t.me/addlist/KpzXaiSpKENkMGM0
4👍2
🔵 عنوان مقاله
Proposal: Add Bare Metal Support to Go?

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

اندریا پیشنهاد داده است که یک هدف 'none' جدید به کامپایلر زبان برنامه‌نویسی Go اضافه شود تا اجرای مستقل بدون پشتیبانی مستقیم سیستم‌عامل ممکن شود. این ایده که قبلاً نیز مطرح شده اما فیلیپو والسوردا، یکی از مشارکت‌کنندگان Go، معتقد است که باید دوباره با جدیت به آن پرداخته شود. پیاده‌سازی این هدف می‌تواند استفاده از Go را در ماشین‌های مجازی کوچک، فرم‌ورها و دیگر محیط‌های محدود گسترش دهد. بحث‌های داخلی در مورد این پیشنهاد نیز در گوگل، محل توسعهٔ این زبان، در جریان است.

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


👑 @gopher_academy
2
🔵 عنوان مقاله
Odin: A Pragmatic C Alternative with a Go Flavor

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

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

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


👑 @gopher_academy
👍2
🔵 عنوان مقاله
Organize Your Go Middleware Without Dependencies

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

در ورژن 1.22 زبان برنامه‌نویسی Go، قابلیت‌های جدیدی به مسیریابی HTTP اضافه شده است که این امکان را به توسعه‌دهندگان می‌دهد تا با حذف وابستگی‌های پیشین، مدیریت مسیریابی را ساده‌تر کنند. این تغییرات به توسعه‌دهندگان اجازه می‌دهد تا از کتابخانه‌‌ها و چهارچوب‌های خارجی برای پیاده‌سازی middleware استقلال یابند و با کد کمتر و با کارایی بهتری برنامه‌های وب مستحکم و کارآمد بسازند.

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


👑 @gopher_academy
👍2🎉21
در زبان برنامه‌نویسی Go (Golang)**، متد `time.NewTicker` برای اجرای **عملیاتی تکراری در فواصل زمانی مشخص به کار می‌رود.

---

### 📌 تعریف:

ticker := time.NewTicker(duration)


* duration → فاصله زمانی بین اجرای هر بار (مثلاً: 1*time.Second)
* ticker.C → یک کانال (channel) است که هر بار بعد از گذشت مدت زمان مشخص، یک مقدار time.Time در آن ارسال می‌شود.

---

### 🧠 کاربرد اصلی:

* اجرای یک عملیات به صورت پریودیک (دوره‌ای)
* مثلاً برای:

* چک کردن وضعیت سرویس‌ها
* خواندن داده از صف یا کانال
* اجرای یک تسک background در فواصل زمانی مشخص

---

### مثال ساده:

package main

import (
"fmt"
"time"
)

func main() {
ticker := time.NewTicker(2 * time.Second)
defer ticker.Stop()

for i := 0; i < 5; i++ {
t := <-ticker.C
fmt.Println("Tick at", t)
}
}


⏱️ خروجی:

Tick at 2025-05-12 02:00:02 +0000 UTC
Tick at 2025-05-12 02:00:04 +0000 UTC
...


---

### ⚠️ نکات مهم:

* حتماً بعد از پایان استفاده ticker.Stop() فراخوانی بشه تا نشتی منابع (goroutine leak) نداشته باشیم.
* NewTicker در کنار select هم بسیار کاربرد داره.
👍7
🔵 عنوان مقاله
k6 1.0: A Go-Powered Load Testing Tool

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

مقاله به معرفی ابزار نسل بار مدرن و کاملی می‌پردازد که با استفاده از موتور جاوا اسکریپت قدرت یافته توسط Sobek Go، امکان نوشتن اسکریپت‌های آزمایشی به زبان جاوا اسکریپت را فراهم می‌کند. نسخه ۱.۰ این ابزار استقرار و پشتیبانی عالی از TypeScript را وعده داده و قابلیت تنظیم و گسترش آسان‌تری را ارائه می‌دهد، که آن را برای توسعه‌دهندگان جذاب‌تر می‌کند.

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


👑 @gopher_academy
3
🔵 عنوان مقاله
Building a More Accessible GitHub CLI

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

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

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


👑 @gopher_academy
👍3
🔵 عنوان مقاله
nativewebp: Native WebP Image Library

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

فرمت تصویری WebP که برای فشرده‌سازی تصاویر با کیفیت بالا و پایین کاربرد دارد، در وب بسیار محبوب است. کتابخانه‌ای برای زبان برنامه‌نویسی Go وجود دارد که بدون نیاز به وابستگی‌های خارجی، امکان کار با فرمت WebP را فراهم می‌کند. نسخه ۱.۲ این کتابخانه، که به تازگی منتشر شده، پشتیبانی کامل از انیمیشن‌های WebP را اضافه کرده است، بدین ترتیب امکان استفاده و دستکاری فایل‌های WebP ثابت و متحرک در برنامه‌های Go فراهم شده است.

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


👑 @gopher_academy
👍2