Gopher Academy
3.85K subscribers
932 photos
42 videos
280 files
2.19K links
🕸 Gopher Academy

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

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

ادمین:
@mrbardia72
Download Telegram
🔵 عنوان مقاله
GopherCon 2025 Go Contributor Summit Notes

🟢 خلاصه مقاله:
در GopherCon 2025 جمع زیادی از مشارکت‌کنندگان Go گرد هم آمدند و درباره مدیریت وابستگی‌ها، روند بررسی و پذیرش پیشنهادهای زبانی، کارایی و الگوهای بهینه در cgo، امنیت و پیاده‌سازی WebAuthn، وضعیت فازینگ و پوشش تست، و هدف‌گیری WebAssembly (و حتی به‌صورت گذرا JVM) گفتگو کردند. محورهای اصلی شامل بهبود reproducible builds و امنیت در اکوسیستم ماژول‌ها، شفاف‌تر و کارآمدتر شدن فرآیند پروپوزال‌ها با درس‌آموخته‌های generics و حفظ سازگاری عقب‌رو، کاهش سربار مرز Go/C در cgo، بلوغ فازینگ و پوشش در CI، و چالش‌های Wasm/WASI مانند اندازه باینری، زمان راه‌اندازی و async بود. هرچند یادداشت‌ها خام‌اند، اما جهت‌گیری‌ها، اولویت‌ها و سوالات باز را روشن می‌کنند و انتظار می‌رود با مسائل پیگیری، اسناد طراحی و دعوت به بازخورد از سوی جامعه ادامه یابد.

#Go #GopherCon #cgo #WebAuthn #WebAssembly #Fuzzing #DependencyManagement #OpenSource

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


👑 @gopher_academy
🔵 عنوان مقاله
qjs: Run JavaScript in Go

🟢 خلاصه مقاله:
qjs یک روش تازه برای اجرای JavaScript داخل اپ‌های Go است که بدون نیاز به Cgo کار می‌کند. به‌جای اتصال به یک کتابخانه بومی، نسخه فورک‌شده‌ای از QuickJS را به WebAssembly کامپایل کرده و آن را زیر Wazero اجرا می‌کند. این رویکرد کل زنجیره را در محیط خالص Go نگه می‌دارد و فرایند بیلد، استاتیک‌سازی و کراس‌کامپایل را ساده‌تر می‌کند. مزیت دیگر، ایزوله‌سازی و سندباکس طبیعی ناشی از WebAssembly است. هرچند احتمالاً نسبت به اتصال بومی اندکی سربار دارد، اما برای سناریوهایی مثل اسکریپت‌نویسی، افزونه‌ها و اجرای امن منطق کاربر، توازن خوبی بین سادگی، پرتابل‌بودن و امنیت ارائه می‌دهد.

#Go #JavaScript #WebAssembly #Wazero #QuickJS #Cgo #GoLang #Embedding

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


👑 @gopher_academy
🔵 عنوان مقاله
go-sqlite3: Go Bindings to SQLite Using Wazero

🟢 خلاصه مقاله:
این کتابخانه با نام go-sqlite3 امکان استفاده از SQLite در Go را بدون cgo فراهم می‌کند. هسته SQLite به‌صورت WebAssembly اجرا و درون runtimeِ wazero بارگذاری می‌شود، در حالی‌که رابطی سازگار با database/sql ارائه می‌دهد. نتیجه این است که بیشتر کدهای موجود مبتنی بر database/sql با کمترین تغییر کار می‌کنند و در عوض، مزایایی مثل باینری‌های کاملاً استاتیک، کراس‌کامپایل آسان، وابستگی‌های کمتر به سیستم‌عامل و استقرار ساده‌تر (به‌ویژه در کانتینر و Serverless) به دست می‌آید. اجرای SQLite داخل WebAssembly علاوه‌بر یک محیط ایزوله و قابل پیش‌بینی، ممکن است محدودیت‌هایی هم داشته باشد؛ از جمله عدم پشتیبانی برخی افزونه‌های بومی و کارایی پایین‌تر نسبت به نسخه‌های cgo. با این حال برای بسیاری از کاربردها مانند ابزارهای خط فرمان، سرویس‌های سبک، تست‌ها و محیط‌های ابری، این مبادله به‌خاطر قابل‌حمل بودن و سادگی عملیاتی ارزشمند است.

#Go #SQLite #WebAssembly #wazero #database_sql #cgo #GoBindings #Serverless

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


👑 @gopher_academy
1👍1