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

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

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

ادمین:
@mrbardia72
Download Telegram
🔵 عنوان مقاله
🕒 When 1.1: Natural Language Date/Time Parser

🟢 خلاصه مقاله:
مقاله‌ای که مورد بحث قرار گرفته، مربوط به یک کتابخانه برنامه‌نویسی است که به کاربران امکان می‌دهد تا زمان و تاریخ مورد نظر خود را از رشته‌های متنی مانند "امشب ساعت 11:10" یا "چهارشنبه آینده ساعت 4:20 صبح" استخراج کنند. این کتابخانه دارای قوانینی برای تشخیص و تبدیل تاریخ و زمان به زبان‌های انگلیسی، پرتغالی، چینی، روسی و هلندی است. این ویژگی کاربردی این کتابخانه را به ابزاری مفید و جهانی برای برنامه‌نویسان تبدیل می‌کند که به دنبال احتساب زمان‌های مختلف بر اساس عبارت‌های زبانی هستند. این کتابخانه به طور گسترده در پروژه‌های مختلف قابل استفاده است و فراهم آوردن این امکانات به صورت خودکار روند توسعه نرم‌افزاری را ساده‌تر و کارآمدتر می‌کند.

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


👑 @gopher_academy
👍1
🔵 عنوان مقاله
Yokai: A Modular, Observable Go Framework for Backend Apps

🟢 خلاصه مقاله:
مقاله‌ای که مورد بحث قرار گرفته، یک چارچوب ماژولار برای ساخت برنامه‌های پس‌زمینه‌ی برنامه‌های کاربردی در زبان برنامه‌نویسی Go را معرفی می‌کند. این چارچوب با هدف افزایش کیفیت تولید و کاهش نیاز به نوشتن کدهای تکراری زیرساختی طراحی شده است. به طور خاص، این سیستم سه جنبه کلیدی را مدیریت می‌کند: قابلیت مشاهده (observability)، پیکربندی (configuration)، و وابستگی‌های درونی (dependency wiring).

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

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


👑 @gopher_academy
👍1
🔵 عنوان مقاله
Miniflux 2.2.3: Minimalist and Opinionated Feed Reader

🟢 خلاصه مقاله:
مقاله‌ای که اشاره کرده‌اید، به بررسی یک پروژه برنامه‌نویسی می‌پردازد که در آن از حداقل‌ها استفاده شده است. در این پروژه، به جای استفاده از ORM (Object-Relational Mapping) یا چارچوب‌های متداول برنامه‌نویسی، تنها از پایگاه داده Postgres استفاده شده است. همچنین، فقط از مقدار بسیار محدودی از JavaScript استفاده شده تا پیچیدگی‌های غیرضروری کاهش یابد. کد مربوط به این پروژه در یک مخزن GitHub قابل دسترس است. این انتخاب‌ها نشان دهنده تمایل به استفاده از تکنولوژی‌ها در ساده‌ترین شکل ممکن است تا کارایی بالا را بدون نیاز به اجزاء اضافی تضمین کند. این رویکرد در برنامه‌نویسی می‌تواند به بهبود عملکرد و سهولت نگهداری کمک کند.

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


👑 @gopher_academy
👍1
🔵 عنوان مقاله
Polyglot Programming: TypeScript, Go, & Rust

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

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


👑 @gopher_academy
👍2
🔵 عنوان مقاله
gosax: Libary for XML SAX (Simple API for XML) Parsing

🟢 خلاصه مقاله:
مقاله‌ای که شرح داده شده به بررسی کتابخانه‌ای برای تجزیه XML می‌پردازد که صرفاً برای خواندن (read-only) طراحی شده است. تمرکز اصلی این کتابخانه بر روی کارایی و آگاهی از مصرف حافظه است، به این معنا که تلاش شده تا با استفاده از تکنیک‌ها و الگوریتم‌های بهینه، حافظه کمتری اشغال شود و سرعت پردازش افزایش یابد. این ویژگی‌ها آن را برای استفاده در سیستم‌هایی که منابع محدود دارند یا نیاز به پردازش سریع داده‌ها دارند، مناسب می‌سازد. کتابخانه همچنین به گونه‌ای طراحی شده که با وجود محدودیت‌های خواندن فقط، کاربران قادر به دستیابی به عملکرد بهینه‌ای از تجزیه XML باشند. این افزایش کارایی و کاهش مصرف حافظه می‌تواند برای توسعه‌دهندگانی که با فایل‌های XML سنگین کار می‌کنند، بسیار مفید باشد.

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


👑 @gopher_academy
2
🔵 عنوان مقاله
Run GitHub Actions Up to 2x Faster at Half the Cost

🟢 خلاصه مقاله:
مقاله‌ مورد نظر به معرفی سرویس "Blacksmith" می‌پردازد که به منظور اجرای سریع‌تر فعالیت‌های GitHub Actions با استفاده از پردازنده‌های مدرن مخصوص بازی‌های رایانه‌ای طراحی شده است. نصب و راه‌اندازی Blacksmith فقط با یک تغییر خط کد امکان‌پذیر است. بیش از 100 شرکت مانند Ashby، Superblocks و Slope از Blacksmith استفاده می‌کنند تا به توسعه‌دهندگان کمک کنند تا کدهای خود را سریع‌تر ادغام کنند. این سرویس در نتیجه باعث بهبود بازدهی و کارایی در فرآیند توسعه نرم‌افزار می‌شود.

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


👑 @gopher_academy
👍1
🔵 عنوان مقاله
Go sync.Once is Simple, But How Does It Work?

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

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


👑 @gopher_academy
👍3
🔵 عنوان مقاله
  Developing a Terminal App in Go with Bubble Tea

🟢 خلاصه مقاله:
مقاله‌ای که مورد بررسی قرار گرفته، به توضیح و راهنمایی یک اسکرین‌کست ۵۰ دقیقه‌ای‌ می‌پردازد که در آن فرآیند تولید یک ابزار خط فرمان برای یادداشت‌برداری با استفاده از زبان برنامه‌نویسی Go و کتابخانه‌های Bubble Tea و Lip Gloss از Charm، نمایش داده شده است. این اسکرین‌کست به بررسی چگونگی ساختار، طراحی و استایل دادن به این اپلیکیشن می‌پردازد و به توضیح مراحل توسعه ابزاری عملی در محیط خط فرمان اختصاص یافته است. Bubble Tea به عنوان یک کتابخانه برای مدیریت معماری و نماها استفاده می‌شود و Lip Gloss برای اعمال استایل و ظاهر بصری به کار می‌رود. این ترکیب ابزارها در Go فرصتی برای توسعه‌ دهندگان فراهم می‌کند تا اپلیکیشن‌های خط فرمان پیچیده و جذاب‌تری را توسعه دهند.

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


👑 @gopher_academy
👍2
🔵 عنوان مقاله
Mailpit: Go-Powered Email and SMTP Testing Tool

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

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


👑 @gopher_academy
👍3
🔵 عنوان مقاله
WorkOS: Sell to Enterprises with a Few Lines of Code

🟢 خلاصه مقاله:
این مقاله به بررسی پلتفرم جدید هویتی برای سرویس‌های نرم‌افزاری تجاری (B2B SaaS) می‌پردازد که قابلیت‌های انعطاف‌پذیر و روش‌های استفاده آسانی را از طریق API ارائه می‌دهد. این پلتفرم به کاربران امکان می‌دهد تا Single Sign-On (SSO)، System for Cross-domain Identity Management (SCIM)، و Fine-Grained Access Control (FGA) را در چند دقیقه و نه چند ماه، به طور کامل و بدون دردسر ادغام کنند. هدف اصلی این پلتفرم، تسهیل فرآیندهای مرتبط با مدیریت هویت و دستیابی به کنترل دقیق‌تر بر دسترسی‌ها در بسترهای نرم‌افزاری B2B است که به سازمان‌ها کمک می‌کند تا امنیت بیشتری را تجربه کنند و با سرعت بیشتری پروژه‌های خود را عملیاتی سازند.

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


👑 @gopher_academy
👍4🔥1
Forwarded from Software Engineer Labdon
شرکت های بزرگی مثل Microsoft مخازن جالبی در GitHub دارند مثل Security-101 که مخصوص آموزش امنیت برای کاربرانی است که قصد دارند نکات اولیه امنیتی را یاد بگیرند!
https://github.com/microsoft/Security-101

<Vahid Nameni/>
👍4
🔵 عنوان مقاله
Machine Learning in Go with a Python Sidecar

🟢 خلاصه مقاله:
مقاله مورد بحث توسعهٔ زبان برنامه‌نویسی Go و نقش آن در پروژه‌های یادگیری ماشینی (ML) و مدل‌های زبان بزرگ (LLMs) را مورد بررسی قرار می‌دهد. Python به دلیل تنوع بسیار زیاد پروژه‌ها و نمونه‌ها، همچنان پرچمدار عرصه ML است، اما Go به عنوان یک زبان 'چسب' مفید برای ادغام و هماهنگی بین پروژه‌های ML شناخته شده است، حتی اگر این کار به تعامل با پروژه‌های مبتنی بر Python هم نیاز داشته باشد. استفاده از Go می‌تواند در بهبود چگونگی کنترل و مدیریت این تعاملات میان زبانی به طور موثر کمک کند. این مقاله به توضیح مزایای استفاده از Go در کاربردهای ML مختلف و تعامل آن با Python می‌پردازد.


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


👑 @gopher_academy
🙏2💅1
🔵 عنوان مقاله
GoLand 2024.3 Released

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

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


👑 @gopher_academy
👍2🍓21
🔵 عنوان مقاله
Leveraging benchstat Projections in Go Benchmark Analysis

🟢 خلاصه مقاله:
مقاله‌ای که مطرح شده به معرفی ابزار benchstat از کتابخانه استاندارد زبان برنامه‌نویسی Go می‌پردازد. این ابزار برای مقایسه و تفحص داده‌های بنچمارک (معیار سنجی کارایی) که توسط تست‌های بنچمارک Go تولید شده‌اند، استفاده می‌شود. مقاله با تشریح ویژگی‌ها و کاربردهای benchstat شروع می‌شود و دلایلی را که این ابزار می‌تواند برای توسعه‌دهندگان مفید باشد، بیان می‌کند. به‌طور خاص، این ابزار به تحلیل و درک بهتر عملکرد کد کمک می‌کند و می‌تواند بینش‌هایی راجع به بهینه‌سازی‌های احتمالی ارائه دهد. استفاده از benchstat به‌ویژه در محیط‌های توسعه‌ای که به دنبال بهبود مداوم کارایی هستند، توصیه می‌شود. این مقاله برای برنامه‌نویسانی که با زبان Go کار می‌کنند و می‌خواهند داده‌های بنچمارک خود را به طور دقیق‌تری تجزیه و تحلیل کنند، مفید است.

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


👑 @gopher_academy
👍1
Forwarded from Software Engineer Labdon
چگونه یک سیستم رزرو بلیت هواپیما با معماری Event-Driven و Saga پیاده‌سازی کنیم؟

تو این مقاله توضیح دادم چطور با ترکیب Event-Driven Architecture، RabbitMQ و Saga Pattern تونستم سیستم‌های رزرو بلیت هواپیما رو به یه سطح دیگه ببرم. اگه دنبال معماری‌های مقیاس‌پذیر و پایدار هستی، حتماً این مطلب رو بخون!

لینک مقاله

DevTwitter | <mostafa jafarzadeh/>

👑 @software_Labdon
2👍2🔥1🍾1💅1
Forwarded from Gopher Job
🟢اگر کارفرما هستی و دنبال برنامه نویس گولنگ هستی آگهی شغلی تو برامون بفرستید
🟢اگر کارجو هستید رزومه خودتون رو براساس فرمتی زیر برامون بفرست

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

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

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


🕊Admin:
@mrbardia72


👑 @gopher_job
👍3
Forwarded from Linux Labdon
با مفاهیم deadlock و علت‌هایی که ممکنه منجر بهش بشه توی این سایت بصورت عملی آشنا بشید.

#Concurrency #Deadlock #Operating #System #OS #linux #C #Race #condition

https://deadlockempire.github.io


👑 @linux_labdon
👍2💅1
🔵 عنوان مقاله
A Taste of Go Code Generator Magic: A Quick Guide to Getting Started

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

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


👑 @gopher_academy
🔵 عنوان مقاله
ogen 1.5: OpenAPI v3 Code Generator for Go

🟢 خلاصه مقاله:
مقاله‌ای که به بررسی آن پرداخته‌اید، به معرفی ابزاری به نام "ogen" می‌پردازد که برای تولید کد پیاده‌سازی کلاینت و سرور از مشخصات OpenAPI طراحی شده است. این ابزار توسط یک پست وبلاگی معرفی شده و همچنین دارای یک مخزن GitHub است. استفاده از ogen می‌تواند به توسعه‌دهندگان کمک کند تا روند توسعه نرم‌افزار را تسریع بخشیده و به استانداردسازی و خودکارسازی در تولید کد بین جلویی (کلاینت) و پشتی (سرور) کمک کند. این ابزار با کمک به خودکار سازی فرآیندها، خطاها را کاهش داده و بازدهی توسعه را بهبود می‌بخشد. کاربرد آن در پروژه‌هایی که از مشخصات OpenAPI برای توصیف API‌های خود استفاده می‌کنند، می‌تواند بسیار موثر باشد.

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


👑 @gopher_academy
👍1
🔵 عنوان مقاله
htmgo 1.0: Build Simple, Scalable System with Go and htmx

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

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


👑 @gopher_academy