Gopher Academy
3.33K subscribers
915 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
Gopher Academy pinned «درود دوستان عزیزم 💔 میدونم این روزا شرایط خیلی سخته… هیچ‌کدوم‌مون انتظار نداشتیم که وارد همچین فضای پرتنش، ناراحت‌کننده و بعضاً جنگی بشیم. تو این حال و هوای که پر از دلهره‌ست، واقعاً درک می‌کنم که حال و حوصله‌ی خیلی چیزا رو نداریم. من هم مثل شما ناراحتم،…»
🔵 عنوان مقاله
TinyGo 0.38.0: Now with (Initial) Multicore Support

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

زبان برنامه‌نویسی Go که توسط Google توسعه یافته، پیشرفت‌های قابل توجهی را در پشتیبانی از کاربردهای خاص و فشرده از جمله در سیستم‌های تعبیه شده و هدف‌های WebAssembly به دست آورده است. این نسخه جدید برای اولین بار پشتیبانی از چند هسته‌ای را برای کامپایلر Go در 'مکان‌های کوچک' معرفی کرده که ابتدا برای میکروکنترلر RP2040 عرضه شده است. همچنین، پشتیبانی از دستگاه ذخیره سازی جمعی USB برای برخی از پردازشگرها افزوده شده و یک GC تجربی جدید برای WASM نیز توسعه یافته است تا بهینه‌سازی مدیریت حافظه در برنامه‌های اجرایی در WebAssembly را بهبود بخشد. این پیشرفت‌ها، کاربرد و سازگاری زبان برنامه‌نویسی Go را در محیط‌هایی که نیازمند کارایی بالا و راه‌حل‌های کدنویسی فشرده هستند، به شکل قابل توجهی افزایش می‌دهد.

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


👑 @gopher_academy
🔵 عنوان مقاله
♟️ Introducing Chess V2: A New Chess Library

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

این مقاله یک کتابخانه منحصر به‌فرد را توصیف می‌کند که قابلیت‌های اصلی لازم برای توسعه نرم‌افزارهای مربوط به شطرنج را پیاده‌سازی کرده است. کتابخانه از تولید حرکات، تجزیه‌وتحلیل موقعیت‌ها در صفحه شطرنج و پشتیبانی از قالب ضبط بازی‌های شطرنج یعنی نوتاسیون بازی قابل حمل (PGN) پشتیبانی می‌کند. همچنین، یک نمونه برنامه نوشته شده در زبان برنامه‌نویسی Go وجود دارد که به کاربران امکان می‌دهد بازی را علیه یک حریف غیرماهر کامپیوتری تجربه کنند. کل پروژه در مخزن GitHub قابل دسترسی و همکاری است.

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


👑 @gopher_academy
🔵 عنوان مقاله
OpenTelemetry for Go: Measuring the Overhead

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

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

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


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

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

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

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


👑 @gopher_academy
🔵 عنوان مقاله
Dealing with Race Conditions in Go

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

آنتون مقالات بسیار مفیدی در مورد برنامه‌نویسی موازی در زبان Go نوشته است. در آخرین مقاله‌اش، به مبحث پیچیده شرایط مسابقه پرداخته و خطرات عملیات "بررسی-سپس-تنظیم"، استراتژی‌های "مقایسه‌وتنظیم"، الگوهای "بستن" که نیاز به تکرار ندارند، هشدارهای "TryLock"، و معماری پردازشگر "بدون اشتراک" مبتنی بر کانال را مورد بررسی قرار داده است. این مطالب به برنامه‌نویسان کمک می‌کند تا با مشکلات مربوط به دسترسی همزمان به داده‌ها بهتر مقابله کنند و برنامه‌های کارآمدتری بسازند.

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


👑 @gopher_academy
Forwarded from Bardia & Erfan
ای شب از مهتاب تو روشن شده
روی خاک از آب تو گلشن شده
ای خلیج فارس، ای نام بلند
ای شکوهت مثل الوند و سهند
ای غرورت مظهر پایندگی
نام تو دیباچه بالندگی
🕊42🔥1🎉1
Forwarded from Database Labdon
🔵 عنوان مقاله
pg_auto_reindexer 1.5: Automatic B-Tree Reindexing Tool

🟢 خلاصه مقاله:
مقاله‌ی مورد بررسی به ارائه یک اسکریپت می‌پردازد که قادر به شناسایی و بازنمایه‌سازی (ری‌ایندکسینگ) شاخص‌های B-tree ورم‌دار با استفاده از REINDEX CONCURRENTLY است که حداقل قفل‌گذاری را به همراه دارد. این فرآیند اجازه می‌دهد تا بهبود کارایی دسترسی و استفاده از داده‌های موجود در پایگاه داده بدون تأثیر منفی قابل توجه بر دسترسی کاربران در زمان اجرای بازنمایه‌سازی انجام پذیرد. اسکریپت به نحوی طراحی شده است که می‌تواند به طور خودکار شاخص‌هایی که نیاز به بازنمایه‌سازی دارند را تعیین کرده و فرآیند را با تمرکز بر کاهش زمان بلوکه شدن اجرا کند. این یک نوآوری مهم در مدیریت پایگاه‌های داده است که می‌تواند به بهینه‌سازی عملکردهای مرتبط با زمان و همین‌طور کاهش هزینه‌های نگهداری سیستم کمک کند.

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


👑 @Database_Academy
Forwarded from Bardia & Erfan
چه زیبا گفت امیر کبیر ،بزرگ‌مرد تاریخ ایران زمین :

یا سخنی داشته باش دلپذیر ، یا دلی داشته باش سخن پذیر ...
13
Forwarded from Linux Labdon
🔵 عنوان مقاله
postmarketOS 25.06 Linux Mobile OS Brings Support for New Devices and systemd

🟢 خلاصه مقاله:
نسخه جدید توزیع موبایلی postmarketOS 25.06 اکنون برای دانلود در دسترس است و بر پایه‌ی Alpine Linux 3.22 ساخته شده‌است. این نسخه جدید شامل پشتیبانی از دستگاه‌های جدید و ویژگی‌های تازه، به‌روزرسانی اجزاء نرم‌افزاری و موارد دیگر می‌باشد. در این به‌روزرسانی، تمرکز اصلی بر افزایش تعداد دستگاه‌های سازگار با توزیع و عرضه ویژگی‌های جدید برای بهبود تجربه کاربری بوده است. علاوه بر این، اصلاحات و بهینه‌سازی‌های متعددی بر روی مولفه‌های مختلف نرم‌افزاری انجام شده است تا استفاده از postmarketOS راحت‌تر و کارآمدتر از پیش باشد. این توزیع موبایلی به عنوان یکی از گزینه‌های برتر برای استفاده در دستگاه‌های قدیمی‌تر و جدید مطرح است که به دنبال امنیت بیشتر و حفظ حریم خصوصی هستند.

🟣لینک مقاله:
https://9to5linux.com/postmarketos-25-06-linux-mobile-os-brings-support-for-new-devices-and-systemd


👑 @Linux_Labdon
1🍾1
Forwarded from Database Labdon
🔵 عنوان مقاله
Missed POSETTE 2025? Now Watch All 42 Talks on Demand

🟢 خلاصه مقاله:
مقاله‌ای که مرور شد به تشریح رویداد POSETTE: An Event for Postgres پرداخته است. این رویداد بصورت رایگان و مجازی توسط تیم Postgres در مایکروسافت برگزار شده است. در این رویداد، ۴۵ متخصص از اکوسیستم PostgreSQL به بحث و تبادل نظر پیرامون آخرین قابلیت‌ها، نکات کلیدی عملکرد، و کاربردهای واقعی PostgreSQL پرداخته‌اند. این جلسه فرصتی بوده برای توسعه‌دهندگان تا با آخرین دستاوردها و پیشرفت‌ها در عرصه‌ی PostgreSQL آشنا شوند در حالی که تجربه‌ها و دانش خود را در محیطی مجازی به اشتراک گذاشته‌اند. این رویداد نویدبخش ارائه‌ی دانش فنی و استراتژی‌های به‌روز در استفاده از این پایگاه داده‌ی قدرتمند است.

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


👑 @Database_Academy
1
Forwarded from DevOps Labdon
🔵 عنوان مقاله
Unlock 66% better price-performance with new M4 VMs for memory-intensive workloads (4 minute read)

🟢 خلاصه مقاله:
گوگل کلود اخیراً مدل جدیدی از ماشین‌های مجازی با عنوان Compute Engine M4 را رونمایی کرده که بهینه‌سازی شده برای کارکردهای حافظه‌ای با عملکرد بالا است. این ماشین مجازی جدید می‌تواند تا 224 vCPU و 6TB حافظه DDR5 را پشتیبانی کند. M4 عملکرد قیمت به نسبت بهتری تا 2.44 برابر نسبت به نسل‌های قبلی ارائه می‌دهد و از ذخیره‌سازی پیشرفته Hyperdisk بهره می‌برد. این ویژگی‌ها M4 را یک راه‌حل قدرتمند برای کاربرانی که به حافظه بالا و قدرت پردازشی زیاد نیاز دارند، تبدیل می‌کند، که امکان پیاده‌سازی و اجرای برنامه‌ها و دیتابیس‌های عظیم را در محیط ابری فراهم می‌آورد. این پیشرفت‌ها در عملکرد و ظرفیت به کاربران اجازه می‌دهد تا به صورت کارآمدتر و مقرون به صرفه‌تر برنامه‌های کلان داده و یادگیری ماشینی خود را به اجرا درآورند.

🟣لینک مقاله:
https://cloud.google.com/blog/products/compute/m4-vms-are-designed-for-memory-intensive-workloads-like-sap?utm_source=tldrdevops


👑 @DevOps_Labdon
1👍1🔥1
🎬 استخدام – تولید ویدیو با کمک هوش مصنوعی (AI Video Creator)

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

🧠 مهارت‌های موردنیاز:

آشنایی کامل با ابزارهای ساخت ویدیو مبتنی بر هوش مصنوعی

توانایی پرامپت‌نویسی حرفه‌ای برای تولید محتوای حرفه های ویدیویی با AI

درک خوب از اصول تدوین، داستان‌پردازی تصویری و خلاقیت در تولید محتوا

آشنایی با مفاهیم پایه تولید محتوا در شبکه‌های اجتماعی

🌍 همکاری به‌صورت دورکاری / پروژه‌ای

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

+989355167911
2
🔵 عنوان مقاله
Fullstack without Frameworks

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

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

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


👑 @gopher_academy
3
🔵 عنوان مقاله
Finding Performance Problems by Diffing Two Go Profiles

🟢 خلاصه مقاله:
**
ابزار پروفایلینگ pprof گو قابلیت مقایسه دو پروفایل اجرایی را دارد که این امکان را برای برنامه نویسان فراهم می‌آورد تا تفاوت‌های عملکردی بین دو حالت از برنامه‌هایشان را شناسایی کنند. این ابزار توسط تیم دولت برای شناسایی یک پارامتر به اشتباه سخت‌افزاری شده که باعث ایجاد هزینه‌های سنگین در تولید جداول سیستم شده بود، به کار گرفته شد. با تشخیص و اصلاح این پارامتر، تیم دولت توانست عملکرد نرم‌افزار خود را بهینه‌سازی کند و هزینه‌های محاسباتی غیرضروری را کاهش دهد.

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


👑 @gopher_academy
1
🔵 عنوان مقاله
How to Store Go Pointers from (Go) Assembly

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

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

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


👑 @gopher_academy
3
🔴قابلیت Synthetic time for testing ویژگی های جدید گولنگ نسخه 1.25

⏱️ چی هست این Synthetic Time؟

قطعه‌ای از کد که زمان واقعی (real-time) استفاده می‌کنه—مثلاً `time.Sleep(60*time.Second)`—در تست، باعث می‌شه نتایج:

* کند (شصت ثانیه‌ای وسط تست منتظر شیم؟!)
* غیرقابل اعتماد (وابسته به scheduler واقعی و بار سیستم)

این ویژگی testing/synctest این مشکل رو با فراهم کردن یک "زمان مصنوعی" حل می‌کنه—زمان فقط وقتی جلو می‌ره که goroutineها بلاک بشن، و همه چی بلافاصله و به صورت دترمینیستیک اجرا می‌شه

---

🔧 نحوه استفاده با مثال

مثال تابع با تأخیر و timeout:

func Read(in chan int) (int, error) {
select {
case v := <-in:
return v, nil
case <-time.After(60 * time.Second):
return 0, fmt.Errorf("timeout")
}
}


تست timeout بدون معطلی:

import "testing/synctest"

func TestReadTimeout(t *testing.T) {
synctest.Test(t, func(t *testing.T) {
ch := make(chan int)
_, err := Read(ch)
if err == nil {
t.Fatal("expected timeout, got nil")
}
})
}


در این تست:

* تابع درون synctest.Test اجرا می‌شه.
*این clock از جنس مصنوعیه؛ بدون انتظار، بعد از بلاک شدن goroutine‌ روی select، زمان مصنوعی ۶۰ ثانیه جلو میره و timeout فعال می‌شه—امتحان با سرعت و قابل اعتماد

---

⚙️ قابلیت synctest.Wait()

این متد اجازه می‌ده تا:

1. کدی با goroutine اجرا بشه،
2. منتظر بشیم همه goroutineها بلاک بشن،
3. سپس دقیقاً بررسی انجام بشه،
4. و ادامهٔ تست.

مثل این مثال:

func TestWait(t *testing.T) {
synctest.Test(t, func(t *testing.T) {
done := make(chan struct{})
go func() {
time.Sleep(time.Second)
close(done)
}()
synctest.Wait()
<-done
})
}


این تضمین می‌کنه که قبل از ادامه تست، همه goroutineها به نقطهٔ بلاک رسیده باشن

---

جمع‌بندی & پیشنهاد

*این Go 1.25 با testing/synctest تست‌ زمان‌محور و همزمان را سریع، مطمئن و ساده می‌کند.
* فقط کافیه تابع تست رو داخل synctest.Test (یا Run) بنویسید.
*این Wait() هم برای سناریوهای چندgoroutine مفیده.
* ویژگی در نسخه RC هست و باید ویژگی GOEXPERIMENT=synctest رو هنگام اجرای go test فعال کنید


👑 @gopher_academy
3👍3🔥1🍾1
🔵 عنوان مقاله
Charm Fang: A CLI Starter Kit for Cobra Apps

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

انتشار جدید Charm همیشه مورد توجه توسعه دهندگان قرار می‌گیرد، زیرا آنها کتابخانه‌های فوق‌العاده و خوب طراحی شده‌ای ایجاد می‌کنند. فنگ، که یک لایه افزوده به فریم‌ورک کبرا است، امکانات جدیدی مانند خروجی‌ها و پیام‌های خطای بهبود یافته، صفحات راهنما، پشتیبانی از تکمیل خودکار دستورات، و دیگر بهبودی‌های کاربری برای برنامه‌های کاربری خط فرمان (CLI) اضافه می‌کند. از آنجایی که فنگ جدید است، فعلاً مستندات آن محدود است، اما کد نمونه‌ای که ارائه شده راهنمایی مفیدی برای استفاده بهینه از این امکانات جدید فراهم می‌کند.

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


👑 @gopher_academy
👍2
🔵 عنوان مقاله
Eliminating Dead Code in Go Projects

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

در سال 2023، تیم توسعه‌دهنده زبان برنامه‌نویسی Go ابزاری بنام "deadcode tool" را منتشر کرد که به شناسایی کد‌های غیرقابل دسترس یا مرده در پروژه‌های نرم‌افزاری کمک می‌کند. این ابزار با اسکن کد‌های Go، قسمت‌هایی که هرگز اجرا نمی‌شوند را شناسایی کرده و به توسعه‌دهندگان در حذف آن‌ها کمک می‌کند. استفاده از این ابزار موجب بهبود عملکرد و خوانایی برنامه‌ها شده و بازخورد مثبتی از جامعه توسعه‌دهندگان دریافت کرده است. این ابزار همچنین در بهینه‌سازی سیستم‌های قدیمی و در زمان بازنویسی‌های اساسی بسیار مفید است.

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


👑 @gopher_academy
3
Gopher Academy
🔴قابلیت Synthetic time for testing ویژگی های جدید گولنگ نسخه 1.25 ⏱️ چی هست این Synthetic Time؟ قطعه‌ای از کد که زمان واقعی (real-time) استفاده می‌کنه—مثلاً `time.Sleep(60*time.Second)`—در تست، باعث می‌شه نتایج: * کند (شصت ثانیه‌ای وسط تست منتظر شیم؟!)…
🔴قابلیت json/v2 ویژگی های جدید گولنگ نسخه 1.25

در Go 1.25، بستهٔ `json/v2` (همراه با jsontext) معرفی شده است
یک نسخهٔ اساسی و پیشرفته‌تر نسبت به encoding/json قبلی که با فعال‌سازی آزمایشی از طریق متغیر محیطی GOEXPERIMENT=jsonv2 کار می‌کند

🔑 مزایای کلیدی json/v2

1. انعطاف‌پذیری در Marshal/Unmarshal

* دیگر محدود به یک رفتار یکنواخت نیستید؛ با MarshalToFunc و UnmarshalFromFunc می‌توانید رفتار سفارشی خود را برای هر نوع داده بنویسید

2. افزایش قابل‌توجه در سرعت

* به‌ویژه در عملیات خواندن (unmarshal)، تا ۱۰ برابر سریع‌تر از نسخهٔ فعلی گزارش شده است .

3. این API جدید برای تولید و مصرف جریان‌های داده

* امکان مستقیم خواندن از io.Reader و نوشتن به io.Writer فراهم شده (MarshalWrite, UnmarshalRead) بدون نیاز به شیء Encoder/Decoder جداگانه.

4. ویژگی‌های جدید همچون برچسب‌های سفارشی و رفتار پیش‌فرض بهبود یافته

* امکانات گسترده‌ای برای تنظیم سفارشی JSON وجود دارد (برچسب‌ها، inlining، skip کردن فیلدها و غیره) .

یک مثال مفهومی

فرض کنید می‌خواهید برای بولین‌ها (bool) به‌جای true/false از کاراکترهای ویژه مثل و استفاده کنید.

import (
"fmt"
"encoding/json/v2"
"encoding/json/v2/jsontext"
)

// Marshal custom برای bool:
boolMarshaler := json.MarshalToFunc(
func(enc *jsontext.Encoder, val bool) error {
if val {
return enc.WriteToken(jsontext.String("✓"))
}
return enc.WriteToken(jsontext.String("✗"))
},
)

// Marshal برای stringهای شبیه bool:
strMarshaler := json.MarshalToFunc(
func(enc *jsontext.Encoder, val string) error {
if val == "on" || val == "true" {
return enc.WriteToken(jsontext.String("✓"))
}
if val == "off" || val == "false" {
return enc.WriteToken(jsontext.String("✗"))
}
return json.SkipFunc
},
)

marshalers := json.JoinMarshalers(boolMarshaler, strMarshaler)

vals := []any{true, "off", "hello"}
data, err := json.Marshal(vals, json.WithMarshalers(marshalers))
fmt.Println(string(data), err)
// خروجی: ["✓","✗","hello"]


در این مثال:

* true به
* "off" به
* و رشتهٔ "hello" به حالت پیش‌فرض تبدیل می‌شود

📌 وضعیت کنونی و توصیه‌ها

*این Experimental: این ویژگی آزمایشی است و باید با GOEXPERIMENT=jsonv2 فعال شود
* نسخه فعلی encoding/json وقتی flag فعال باشد از json/v2 استفاده می‌کند و عملکرد قدیمی حفظ شده تا سازگاری کامل برقرار شود ([github.com][5]).
* توصیه شده: پروژه‌هایی که وابسته به عملکرد JSON هستند، با فعال‌سازی این flag تست شوند تا مشکلات ناسازگاری احتمالی شناسایی شود .

---
جمع‌بندی

*این json/v2 در Go 1.25 یک نسخه‌ی کاملاً بازطراحی‌شده است: سریع‌تر، انعطاف‌پذیرتر و پیشرفته‌تر.
* با قابلیت‌هایی مانند سفارشی‌سازی عمیق Marshal/Unmarshal و I/O مستقیم همراه است.
* هنوز آزمایشی‌ست؛ اگر پروژه‌ای دارید که نیاز به performance یا JSON پیچیده‌تری دارد، توصیه می‌شود با GOEXPERIMENT=jsonv2 امتحانش کنید.


👑 @gopher_academy
🔥7👍31