Golang Insights
СтатистикаStay ahead in Golang development with Golang Insights, your go-to for the latest news, tips, tricks, and code examples tailored for Golang enthusiasts and professionals. Group: https://t.me/GolangEngineers
- Последний пост
- 11 июн.
- Последнее чтение
- 14 авг.
- Постов за неделю
- 0
- Всего постов
- 21
- Тип
- открытый
- Язык
- персидский
- Категория
- Новости и СМИ
- В каталоге с
- 13 авг.
- 1/24сутки в ленте
- —
- 1/48двое суток
- —
- 1/72трое суток
- —
Оценка по просмотрам недавних постов: пост набирает почти всё за первые сутки.
Посты
👩💻 گولنگ دولوپر های عزیز یوتیوب توسط تیم گوگل منتشر شده و تغییرات و قابلیتهای جدید گو را توضیح میدهد. اگر با گو کار میکنید، پیشنهاد میکنم حتماً آن را ببینید. ممنون: #گولنگ 📱 https://www.youtube.com/watch?v=l4lneZYtjQg
✨دریافت اشتراک ۶ ماهه Claude Max برای مشارکت کننده پروژه های آزاد فعال اگر مشارکت کننده پروژه متن باز روی گیتهاب هستید می توانید با توجه به شرایط معین شده ۶ ماه اشتراک رایگان claude max بگیرید. https://claude.com/contact-sales/claude-for-oss ➖➖➖➖➖➖➖➖ ⚡️@GoInsights | @GolangEngineers
Allocating on the Stack Keith Randall 27 February 2026 We’re always looking for ways to make Go programs faster. In the last 2 releases, we have concentrated on mitigating a particular source of slowness, heap allocations. Each time a Go program allocates memory from the heap, there’s a fairly large chunk of code that needs to run to satisfy that allocation. In addition, heap allocations present additional load on the garbage collector. Even with recent enhancements like Green Tea, the garbage collector still incurs substantial overhead. https://go.dev/blog/allocation-optimizations ➖➖➖➖➖➖➖➖ ⚡️@GoInsights | @GolangEngineers
👩💻 تغییرات جدید گولنگ 1.26 ⚡️نسخهٔ Go 1.26 (گولنگ 1.26) با مجموعهای از بهبودهای مهم در کارایی، ابزارهای توسعه و تجربهٔ برنامهنویسی منتشر شده است. در این نسخه، تمرکز ویژهای بر بهینهسازی عملکرد کامپایلر و کاهش مصرف حافظه در برنامههای بزرگ شده که باعث اجرای سریعتر و پایدارتر سرویسهای مقیاسپذیر میشود. 🌐 لینک مقاله نویسنده: میلاد خسروی ➖➖➖➖➖➖➖➖ ⚡️@GoInsights | @GolangEngineers
👩💻 مقالهی جدیدم در Medium منتشر شد: Mastering Search Algorithms in Go 🚀 مروری از مفاهیم پایه تا نکات مرتبط با مقیاسپذیری برای دیتاستهای بزرگ. ❤️بازخوردتون برام ارزشمنده — اگر مفید بود خوشحال میشم لایک کنید. 👉 https://medium.com/@milwad.dev/mastering-search-algorithms-in-go-from-basics-to-billions-of-records-52e44ff4d5aa ➖➖➖➖➖➖➖➖ ⚡️@GoInsights | @GolangEngineers
وقتی هوش مصنوعی کد می زند براتون به این فکر کنید ممکنه یک خسارت هنگفتی براتون ببار بیاره. یه بابایی اومده با Claude Opus 4.6 یک تغییری انجام داده که باعث شده یک حفره امنیتی جدی پیش بیارد که 1.7 میلیون دلار خسارت زده. https://github.com/moonwell-fi/moonwell-contracts-v2/pull/578 ➖➖➖➖➖➖➖➖ ⚡️@GoInsights | @GolangEngineers
Using go fix to modernize Go code Alan Donovan 17 February 2026 The 1.26 release of Go this month includes a completely rewritten go fix subcommand. Go fix uses a suite of algorithms to identify opportunities to improve your code, often by taking advantage of more modern features of the language and library. In this post, we’ll first show you how to use go fix to modernize your Go codebase. Then in the second section we’ll dive into the infrastructure behind it and how it is evolving. Finally, we’ll present the theme of “self-service” analysis tools to help module maintainers and organizations encode their own guidelines and best practices. https://go.dev/blog/gofix ➖➖➖➖➖➖➖➖ ⚡️@GoInsights | @GolangEngineers
👩💻 دستور if/else رو برای همیشه فراموش کن! - آموزش State Pattern در گولنگ ⚡️همه ما این تجربه را داشتیم. با یک بلاک ساده if–else شروع میکنید و فکر میکنید همه چیز کوچک و مرتب خواهد ماند. اما بعد از اضافه کردن چند ویژگی، این بلاک تبدیل به یک آشفتگی بزرگ میشود. پس به فکر استفاده از یک دستور switch برای «تمیزی» میافتید، و مدتی خوب کار میکند—تا وقتی که دیگر جواب نمیدهد. چه اتفاقی میافتد وقتی این switch به ۲۰۰ خط برسد؟ یا وقتی زنجیره if–else شما صدها خط را در شرایط مختلف در بر میگیرد؟ ناگهان منطق برنامه شکننده، دشوار برای خواندن و تقریباً غیرقابل نگهداری میشود. اینجاست که الگوی State وارد میشود. 🌐 لینک مقاله ✍️ میلاد خسروی ➖➖➖➖➖➖➖➖ ⚡️@GoInsights | @GolangEngineers
✅ پروپوزال متدهای جنریک برای گو (Generic Methods for Go) توسط رابرت گریزیمر (Robert Griesemer) به زبان ساده، این پروپوزال میخواهد امکان تعریف متدهای جنریک (دارای پارامتر نوع) را برای تایپهای معمولی (Concrete Types) فراهم کند، چیزی که تا الان در Go وجود نداشته است. ۱. مشکل فعلی چیست؟ در حال حاضر در Go، شما میتوانید «توابع جنریک» (Generic Functions) داشته باشید، اما نمیتوانید «متدهای جنریک» داشته باشید. مثلاً الان این کد مجاز نیست: // الان خطا میدهد func (s *Set) Add[T any](val T) { ... } دلیل تاریخی این محدودیت این بود که تیم Go معتقد بود اگر به متدها اجازه جنریک بودن بدهند، باید این اجازه را به interfaceها هم بدهند. اما پیادهسازی متدهای جنریک در اینترفیسها به دلیل ماهیت داینامیک Go بسیار پیچیده و پرهزینه است. ۲. تغییر دیدگاه (راه حل پیشنهادی) این پروپوزال میگوید بیایید نگاهمان را عوض کنیم: * متدهای روی تایپهای معمولی (مثل structها) صرفاً برای پیادهسازی اینترفیسها نیستند. آنها برای سازماندهی کد و خوانایی هم مفیدند. * بنابراین، بیایید اجازه دهیم متدهای معمولی (Concrete Methods) جنریک باشند، اما متدهای اینترفیس همچنان ساده باقی بمانند. ۳. نحوه کارکرد (سینتکس جدید) پیشنهاد این است که تعریف متدها دقیقاً شبیه توابع جنریک شود. یعنی بتوانید بعد از نام متد، پارامتر نوع (Type Parameter) بگذارید. مثال پیشنهادی: type S struct {} // متد m یک متد جنریک است که پارامتر P را میگیرد func (r *S) m[P any](x P) { // ... } func main() { var s S // فراخوانی با آرگومان صریح s.m[int](42) // فراخوانی با استنتاج نوع (Type Inference) s.m("hello") } ۴. محدودیت مهم (نکته کلیدی) این مهمترین بخش پروپوزال است که باید درک شود: متدهای جنریک نمیتوانند اینترفیسهای موجود را Implement کنند. چون اینترفیسها در Go نمیتوانند متد جنریک داشته باشند، پس یک متد جنریک روی یک استراکت، هیچوقت با یک متد ساده در اینترفیس تطابق (Match) نخواهد داشت. مثال: اگر شما یک متد Read[E any](b []E) داشته باشید، این متد اینترفیس io.Reader را پیادهسازی نمیکند، چون io.Reader انتظار متد Read([]byte) را دارد، نه یک متد جنریک. ۵. چرا این قابلیت مفید است؟ * سازماندهی کد: به جای نوشتن توابع جنریک جداگانه (مثل slices.Map(s, fn)), میتوانید آنها را به صورت متد بنویسید (مثل s.Map(fn)). * زنجیرهسازی (Chaining): باعث میشود کد خواناتر شود. مثلاً x.Filter(...).Map(...) به جای Map(Filter(x, ...), ...). https://github.com/golang/go/issues/77273 ➖➖➖➖➖➖➖➖ ⚡️@GoInsights | @GolangEngineers
🌟 Go 1.26.0 is released! 📝 Release notes: go.dev/doc/go1.26 ⬇️ Download: go.dev/dl/#go1.26.0 ➖➖➖➖➖➖➖➖ ⚡️@GoInsights | @GolangEngineers
درود خدمت دوستان و ضمن عرض تسلیت خدمت همه عزیزان شرایط فعلی اینترنت واقعا افتضاح شده بخصوص تقریباً به هر وی پی انی وصل میشیم هی قطع و وصل میشود و اکثر وی پی ان های معتبر و پروتکل های مختلف را بسته اند و شرایط اعصاب خورد کنی هست. در زیر نمیخوام تبلیغ کنم ولی سرویس v2ray دارم استفاده میکنم کیفیت خیلی خوبی داره و در شرایط اینترانت هم خوب عمل کرده و قیمت های مناسبی دارد. ورود به ربات سرویس امیدوارم آینده سرنوشت خوبی برای همه ما رقم بزند و حق ما برنامه نویسان این نیست.
🛡 پکیج httpclient: ارتباطی هوشمند و بازگشتپذیر (Resilient) در دنیای میکروسرویسها، پایداری ارتباط با سرویسهای خارجی حرف اول را میزند. با استفاده از پکیج httpclient، دیگر نگران قطع شدن لحظهای شبکه یا داون شدن سرویسهای مقصد نباشید! این کتابخانه با یک لایه دفاعی داخلی، پایداری سیستم شما را تضمین میکند. 🚀 ویژگیهای کلیدی: 🔹 پشتیبانی کامل از الگوهای resilience: پیادهسازی داخلی الگوهای Retry، Circuit Breaker، Timeout، Rate Limiter، Bulkhead و Fallback. 🔹 توسعه سریع و آسان: طراحی شده مخصوص فراخوانی APIهای خارجی و ارتباطات بین میکروسرویسی با کمترین کدنویسی. 🔹 مدیریت خطای استاندارد: دارای سیستم Error Handling اختصاصی برای کنترل دقیق و آسان نتایج هر درخواست. 🔹 ساختار Fluent API: کانفیگ بسیار ساده و خوانا برای هر سرویس بهصورت مجزا. 📦 این پکیج بر پایه اصول مهندسی پایداری (Resilience Engineering) ساخته شده تا سرویسهای شما در برابر خطاهای غیرمنتظره، "شکستناپذیر" باشند. https://github.com/ja7ad/httpclient ➖➖➖➖➖➖➖➖ ⚡️@GoInsights | @GolangEngineers
استخدام مهندس ارشد/میانی(Go) Backend موقعیت: ریموت / انگلستان (Exeter) | نوع همکاری: پاره وقت درباره Startup یک استارتاپ معتبر و پیشرو مستقر در انگلستان است که با تلفیق تکنولوژی بلاکچین و استانداردهای مالی، در حال متحول کردن نحوه تأمین مالی پروژههای محیطزیستی (Net-Zero) است. ما پلی میان دنیای سنتی مالی و نوآوریهای Web3 میسازیم. درباره نقش شما ما به دنبال یک توسعهدهنده Go هستیم که به "Clean Architecture" مسلط باشد. شما صرفاً یک کدنویس نخواهید بود؛ بلکه معمار سیستمهای مالی امن و مقیاسپذیر هستید. ما اخیراً زیرساخت خود را به Huma v2 منتقل کردهایم و روی اصول Domain-Driven Design (DDD) بسیار جدی هستیم. چه خواهید ساخت؟ • هسته API: طراحی و پیادهسازی سرویسهای RESTful با استفاده از Go و Huma. • سیستم مالی: توسعه سیستم ثبت تراکنشها با دقت بالا بر روی PostgreSQL (استفاده از UUIDv7 و تراکنشهای ACID). • امنیت و احراز هویت: مدیریت سیستم Auth ترکیبی (JWT + Web3/Particle Network). • زیرساخت: مدیریت Deployها با Docker و CI/CD. تکنولوژیهای ما • زبان: Go (Golang) • فریم ورک: Huma (سازگار با کتابخانه استاندارد) • دیتابیس: PostgreSQL, Redis • معماری: Clean Architecture, Hexagonal • ابزارها: Docker, GitHub Actions, Testify نیازمندیها • حداقل ۳ سال تجربه کاری حرفهای با Go. • تسلط عمیق بر SQL و طراحی دیتابیسهای رابطهای (Postgres). • تجربه عملی با Clean Architecture و نوشتن کدهای ماژولار. • مهارت بالا در نوشتن تست (Unit & Integration). • آشنایی با مفاهیم کانتینرها (Docker). • تسلط کافی به زبان انگلیسی برای تعامل با تیم فنی. لطفا رزومه هایتان را به آیدی تلگرام @Iman_alibeigi بفرستید. ➖➖➖➖➖➖➖➖ ⚡️@GoInsights | @GolangEngineers
🔰 چند نکته طلایی از دیدگاه یکی از بنیانگذار ها و توسعه دهنده های اصلی دیتابیس Postgres من امروز اتفاقی تو تلگرام با آقای Bruce Momjian یکی بنیانگذار ها و توسعه دهنده های اصلی دیتابیس Postgres پیام فرستادم و خوشبختانه به پیامم پاسخ داد صرفا با یک تشکر شروع کردم و پس از آن درخصوص تجربه 30 ساله اش در توسعه نرم افزار پرسیدم که جواب های جالب و با ارزشی می داد که در زیر به اشتراک گذاشتم امیدوارم در مسیر شغلی از این نکات استفاده کنیم. https://bitstack.substack.com/p/lessons-from-30-years-of-postgres ➖➖➖➖➖➖➖➖ ⚡️@GoInsights | @GolangEngineers
🗜 قابلیت تجمیع سریع در دیتابیس پستگرس ۱۹ در PostgreSQL 19 سازوکارهای جدیدی برای «partial aggregation» معرفی شده که به بهبود چشمگیر سرعت کوئریهای شامل GROUP BY، بهویژه روی دادههای بزرگ، کمک میکند.این بهبودها باعث میشوند محاسبات تجمیعی مثل SUM، AVG، MIN و MAX در مراحل مختلف اجرا (روی پارتیشنها، نودهای موازی یا shardها) به صورت محلی انجام و فقط نتایج میانی با هم ادغام شوند، در نتیجه حجم داده جابهجا شده و مصرف CPU/IO کاهش مییابد. در تستهای پست، برای سناریوهای real‑world مثل گزارشگیری تحلیلی روی چند دهمیلیون ردیف، زمان اجرای کوئریهای تجمیعی در PostgreSQL 19 نسبت به نسخههای قبلی به طور ملموسی کمتر شده است. https://www.cybertec-postgresql.com/en/super-fast-aggregations-in-postgresql-19/ ➖➖➖➖➖➖➖➖ ⚡️@GoInsights | @GolangEngineers
مقاله جدید در مورد فیچر go tool که توی گولنگ ۱.۲۴ اضافه شد: 🌐 https://nasermirzaei89.net/2025/11/05/dev-dependencies-in-golang/ ➖➖➖➖➖➖➖➖ ⚡️@GoInsights | @GolangEngineers
🎆 Go 1.25.4 and 1.24.10 are released! ⬇️ Download: go.dev/dl/#go1.25.4 ➖➖➖➖➖➖➖➖ ⚡️@GoInsights | @GolangEngineers
The Green Tea Garbage Collector Michael Knyszek and Austin Clements 29 October 2025 Go 1.25 includes a new experimental garbage collector called Green Tea, available by setting GOEXPERIMENT=greenteagc at build time. Many workloads spend around 10% less time in the garbage collector, but some workloads see a reduction of up to 40%! https://go.dev/blog/greenteagc ➖➖➖➖➖➖➖➖ ⚡️@GoInsights | @GolangEngineers
💫 شرکت در Hacktoberfest 2025 رویداد Hacktoberfest هر سال در ماه اکتبر برگزار میشود و فرصتی عالی برای توسعهدهندگان سراسر جهان است تا با مشارکت در پروژههای متنباز (Open Source) تجربه کسب کنند، مهارتهای خود را بهبود دهند و در جامعهی جهانی توسعهدهندگان دیده شوند. با انجام چند مشارکت مفید (Pull Request) در مخازن عمومی GitHub یا GitLab میتوانید گواهی رسمی مشارکت دریافت کنید و حتی در قرعهکشی جوایز Hacktoberfest نیز شرکت کنید. ما در پروژهی Aerium تعدادی Issue آماده کردهایم تا بتوانید با انجام آنها در این رویداد مشارکت کنید. این تسکها شامل بخشهای مختلفی از توسعه بلاکچین، بهبود مستندات، بهینهسازی کد و طراحی هستند. 📌 برای شروع کافیست: 1. به صفحه Issues بروید: https://github.com/aerium-network/aerium/issues 2. یکی از Issueها را انتخاب کنید. 3. سپس Fork بگیرید، تغییرات را اعمال کنید و Pull Request بفرستید. مشارکت شما نهتنها در رشد پروژهی Aerium مؤثر است، بلکه به شما کمک میکند بخشی از جامعهی جهانی Hacktoberfest باشید و در مسیر توسعهی نرمافزار آزاد نقش داشته باشید. 💪 با هم کد میزنیم، یاد میگیریم، و دنیای متنباز را قویتر میکنیم. ➖➖➖➖➖➖➖➖ ⚡️@GoInsights | @GolangEngineers
🎉 Go 1.25.2 and 1.24.8 are released! 📢 Announcement: https://groups.google.com/g/golang-announce/c/4Emdl2iQ_bI/m/qZN5nc-mBgAJ ⬇️ Download: go.dev/dl/#go1.25.2 ➖➖➖➖➖➖➖➖ ⚡️@GoInsights | @GolangEngineers