Gopher Academy
3.34K subscribers
918 photos
40 videos
279 files
1.99K links
🕸 Gopher Academy

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

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

ادمین:
@mrbardia72
Download Telegram
🔵 عنوان مقاله
Maelstrom: A Fast, Contained Test Runner for Multiple Languages

🟢 خلاصه مقاله:
مجموعه‌ای از ابزارها که برای زبان‌های برنامه‌نویسی Go، Rust و Python پشتیبانی می‌کند، این ابزارها توانایی اجرای تست‌ها در میکرو-کانتینرهای ایزوله را دارند و ادعا می‌کند که به‌راحتی با تست‌های موجود شما کار می‌کنند. این تست‌ها می‌توانند هم بر روی ماشین محلی شما و هم در سراسر خوشه‌ای از سرورها اجرا شوند. اطلاعات بیشتر و دسترسی به کد این ابزارها از طریق مخزن GitHub قابل دسترس است. این امکان اطمینان می‌دهد که تست‌ها در محیط‌های کنترل‌شده و جدا شده به خوبی عمل کنند و به توسعه‌دهندگان این قدرت را می‌دهد که بتوانند بدون نگرانی از تداخل‌های محتمل، تست‌های خود را به‌طور مؤثری اجرا کنند.

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


👑 @gopher_academy
👍21🎉1
برای ایجاد یک نمونه ساده از چگونگی کار با Nginx و Golang، می‌توانید یک سرور وب ساده در Golang راه‌اندازی کنید و سپس Nginx را به عنوان یک پروکسی معکوس (reverse proxy) برای این سرور پیکربندی کنید.

### 1. ایجاد سرور وب ساده در Golang

ابتدا یک سرور وب ساده با استفاده از Golang ایجاد کنید. این سرور یک پیام خوشامدگویی را در پاسخ به درخواست‌های HTTP ارسال می‌کند.

// main.go
package main

import (
"fmt"
"net/http"
)

func handler(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hello, welcome to your subdomain!")
}

func main() {
http.HandleFunc("/", handler)
http.ListenAndServe(":8080", nil)
}

فایل بالا را به نام main.go ذخیره کنید و سپس با استفاده از دستور زیر سرور را اجرا کنید:

go run main.go

این سرور اکنون در حال اجرا بر روی پورت 8080 است و به هر درخواستی پاسخ می‌دهد.

### 2. پیکربندی Nginx به عنوان پروکسی معکوس

حال باید Nginx را به گونه‌ای پیکربندی کنید که به عنوان یک پروکسی معکوس عمل کند و درخواست‌ها را به سرور Golang ارسال کند.

ابتدا مطمئن شوید که Nginx نصب شده است. اگر نصب نشده، می‌توانید آن را با استفاده از دستورات زیر نصب کنید:

# On Ubuntu/Debian
sudo apt update
sudo apt install nginx

# On CentOS/RHEL
sudo yum install epel-release
sudo yum install nginx

سپس فایل پیکربندی Nginx را ویرایش کنید. فایل پیکربندی معمولاً در مسیر /etc/nginx/nginx.conf یا /etc/nginx/sites-available/default قرار دارد. محتوای فایل پیکربندی می‌تواند به شکل زیر باشد:

server {
listen 80;
server_name yourdomain.com *.yourdomain.com;

location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}

در این پیکربندی:
- listen 80;
باعث می‌شود Nginx به درخواست‌های HTTP روی پورت 80 گوش دهد.
- server_name yourdomain.com *.yourdomain.com;
باعث می‌شود Nginx به درخواست‌های دامنه اصلی و تمامی ساب‌دامین‌ها پاسخ دهد.
- proxy_pass http://127.0.0.1:8080;
درخواست‌ها را به سرور Golang که روی پورت 8080 اجرا می‌شود، هدایت می‌کند.
-
proxy_set_header
هدرهای HTTP مورد نیاز را تنظیم می‌کند.

### 3. راه‌اندازی و تست

بعد از ویرایش پیکربندی، Nginx را راه‌اندازی یا مجدداً راه‌اندازی کنید تا تنظیمات جدید اعمال شوند:

sudo systemctl restart nginx

اکنون Nginx به عنوان پروکسی معکوس عمل می‌کند و درخواست‌ها را به سرور Golang شما ارسال می‌کند. با ورود به دامنه yourdomain.com یا هر یک از ساب‌دامین‌های آن در مرورگر، باید پیام "Hello, welcome to your subdomain!" را مشاهده کنید.

### نتیجه‌گیری

با این پیکربندی، شما یک سرور Golang ساده دارید که توسط Nginx به عنوان پروکسی معکوس پشتیبانی می‌شود. Nginx درخواست‌ها را به سرور Golang ارسال می‌کند و پاسخ‌ها را به کاربر بازمی‌گرداند. این تنظیمات به شما اجازه می‌دهد تا ساب‌دامین‌های داینامیک را به راحتی مدیریت کنید و سرور Golang خود را به طور موثرتری به کاربران ارائه دهید.

👑 @gopher_academy
👍81
🔵 عنوان مقاله
PG Back Web 0.3: A Postgres Backup System with Web Interface

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

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


👑 @gopher_academy
👍1🙏1💯1
🔵 عنوان مقاله
What's in an (Alias) Name?

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

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


👑 @gopher_academy
👍2
در این کانال مطالب متنوعی در زمینه های مختلف علوم کامپیوتر و تکنولوژی آموزش داده میشود که شامل:

🔰هوش مصنوعی
👨‍💻 آموزش برنامه نویسی
🌐امنیت وشبکه
🖥طراحی صفحات وب
💡ترفند های جالب

https://t.me/Digitallearning5
🔵 عنوان مقاله
Streamline Your Product Delivery with monday dev

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

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


👑 @gopher_academy
1
Forwarded from DevOps Labdon
در Kubernetes، کلاستر (Cluster) و نیم‌اسپیس (Namespace) دو مفهوم اصلی هستند که هر کدام نقش متفاوتی در مدیریت و سازماندهی منابع دارند:

### 1. کلاستر (Cluster):
کلاستر در Kubernetes به مجموعه‌ای از نودها (nodes) گفته می‌شود که با هم کار می‌کنند تا منابع محاسباتی را فراهم کنند و اپلیکیشن‌ها را اجرا کنند. هر کلاستر Kubernetes شامل یک یا چند نود است که می‌تواند شامل نودهای اصلی (master node) و نودهای کارگر (worker node) باشد.

در کلاستر:
- نودهای کارگر پادها و سرویس‌های اپلیکیشن‌ها را اجرا می‌کنند.
- نود اصلی وظیفه مدیریت و هماهنگی منابع، مدیریت وضعیت پادها و سرویس‌ها، و فراهم کردن API Kubernetes را برعهده دارد.

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

### 2. نیم‌اسپیس (Namespace):
نیم‌اسپیس‌ها به عنوان یک مکانیزم برای تقسیم منطقی یک کلاستر عمل می‌کنند. نیم‌اسپیس‌ها به شما اجازه می‌دهند که منابع و اپلیکیشن‌های مختلف را در یک کلاستر مدیریت و جداسازی کنید.

ویژگی‌های کلیدی نیم‌اسپیس:
- جداسازی منابع: هر نیم‌اسپیس یک محدوده جداگانه برای منابع مثل پادها، سرویس‌ها، و سایر آبجکت‌ها فراهم می‌کند. این کمک می‌کند که از برخورد منابع در یک کلاستر جلوگیری شود.
- مدیریت دسترسی‌ها: نیم‌اسپیس‌ها به شما امکان می‌دهند که با استفاده از RBAC (Role-Based Access Control) دسترسی‌ها را برای تیم‌ها و کاربران مختلف تعریف کنید.
- مدیریت بهتر در محیط‌های اشتراکی: در یک کلاستر بزرگ که چند تیم مختلف ممکن است در حال استفاده از منابع باشند، نیم‌اسپیس‌ها کمک می‌کنند که هر تیم منابع خود را به‌صورت مستقل مدیریت کند.

### تفاوت‌های کلیدی:
- کلاستر: یک کلاستر مجموعه‌ای از نودها است که زیرساخت محاسباتی را فراهم می‌کند و محیطی را برای اجرای پادها در Kubernetes مهیا می‌سازد. هر کلاستر می‌تواند شامل چندین نیم‌اسپیس باشد.
- نیم‌اسپیس: نیم‌اسپیس یک واحد سازمانی داخلی در کلاستر است که به جداسازی منابع و مدیریت آنها کمک می‌کند. نیم‌اسپیس‌ها منابع یک کلاستر را تقسیم‌بندی می‌کنند، اما خود کلاستر را تقسیم نمی‌کنند.

### مثال:
فرض کنید یک سازمان از یک کلاستر برای اجرای چندین اپلیکیشن استفاده می‌کند. برای جداسازی تیم‌های مختلف یا اپلیکیشن‌های مختلف در همان کلاستر، می‌توان از **نیم‌اسپیس**ها استفاده کرد تا هر تیم بتواند منابع خود را جدا از دیگران مدیریت کند. این باعث می‌شود که مدیریت اپلیکیشن‌ها ساده‌تر و مؤثرتر باشد.


👑 @DevOps_Labdon
1🙏2👌1
🔵 عنوان مقاله
Sets in Go: Using Maps and Recommended Packages

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


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


👑 @gopher_academy
🔵 عنوان مقاله
Register Allocation in the Go Compiler

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

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


👑 @gopher_academy
Forwarded from Bardia & Erfan
✍️ Mahsa HafeziKhomamy

🕸 @labdon_academy
💘1
🔵 عنوان مقاله
Go's Singleflight Melts in Your Code, Not in Your DB

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

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


👑 @gopher_academy
👍3🔥2
🔵 عنوان مقاله
Stuck on What to Build? Guided Learning with Real Projects

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

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


👑 @gopher_academy
👍3
🔵 عنوان مقاله
go2type: A Go to TypeScript API Client Generator

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

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


👑 @gopher_academy
🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
🍾101
🔵 عنوان مقاله
Developing a Go Bot That Embeds Ichiban Prolog

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

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


👑 @gopher_academy
🙏4
Forwarded from Bardia & Erfan
🎯اگر علاقه مند به موضوعات👈🏻 بلاکچین/ارزهای دیجیتال/هوش مصنوعی/DeFi/NFTS هستید
👇 چنل زیر رو از دست ندید(با موضاعات متنوع و بروز)

📈 Bitcoin & Ethereum Trends
💰 Exciting Altcoins News
🔗 Cutting-Edge Blockchain Innovations
📊 Business Insights & Market Analysis
📜 Policy & Regulations Updates
🤖 AI: Artificial Intelligence Advancements
🎨 The World of NFTs
🌐 Decentralized Finance (DeFi) News



👑 @Blockchain_labdon
💯2
🔵 عنوان مقاله
Revive 1.4: A Faster, Configurable, Flexible Linter for Go

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

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


👑 @gopher_academy
🔵 عنوان مقاله
Rueidis: A Fast Redis Client with Caching and More

🟢 خلاصه مقاله:
مقاله‌ای که مورد بررسی قرار گرفته به بررسی یک کلاینت Redis تمرکز دارد که بر عملکرد آن تأکید دارد. این کلاینت ویژگی‌هایی چون اجرای خودکار دسته‌ای (auto-pipelining) دستورات غیر مسدود کننده، حافظه نهان سمت کلاینت که به شیوه رسمی پیاده‌سازی شده است، و پشتیبانی از تعداد زیادی از افزونه‌های رسمی Redis را دارا است. قرارگیری این کلایت در زیر مجموعه اصلی ارگانیک GitHub برای Redis هم به نوعی تائید کیفیت و اعتبار آن به شمار می‌رود. به نظر می‌رسد که این مقاله کوتاه بیشتر به توسعه‌دادن ویژگی‌ها و کارآمدی این کلاینت می‌پردازد تا ایجاد یک نمونه مثالی در بین کلاینت‌های Redis که تاکید زیادی بر عملکرد بهینه دارد.

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


👑 @gopher_academy
👍1
Forwarded from Bardia & Erfan

👑 @labdon_academy
👍11😈1
🔵 عنوان مقاله
caddy-exec: Caddy Module for Running One-Off Commands

🟢 خلاصه مقاله:
مقاله‌ای که مورد بررسی قرار گرفته پیرامون سرور HTTP(S) به نام Caddy است که به زبان برنامه‌نویسی Go نوشته شده است. نویسندگان مقاله اظهار دارند که از این سرور در کارهای خود بسیار راضی هستند. نکته‌ی برجسته‌ی مقاله به افزونه‌ای اشاره دارد که امکان فعال سازی دستورات در زمان راه‌اندازی یا خاموش کردن سرور، و همچنین از طریق مسیرهای خاصی به نام «route» را فراهم می‌آورد. این افزونه به کاربران اجازه می‌دهد تا عملیات خاصی را به صورت خودکار در زمان‌های تعیین شده یا در پاسخ به درخواست‌های خاص انجام دهند، که این امر می‌تواند به بهبود کارایی و انعطاف‌پذیری در مدیریت سرور کمک کند. این توانایی سازگاری با نیازهای کاربران و تنظیمات خاص آن‌ها، Caddy را به یک گزینه جذاب در میان سرورهای HTTP(S) تبدیل می‌کند.

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


👑 @gopher_academy
🔵 عنوان مقاله
Modview: Go Project Dependency Graph Visualizer

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

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


👑 @gopher_academy
👍1