🔵 عنوان مقاله
A Practical Example of Dependency Inversion using Plugins
🟢 خلاصه مقاله:
مقالهای که مورد بررسی قرار گرفته، نحوه استفاده از اصول معماری پاک (Clean Architecture) به همراه بسته پلاگین زبان برنامهنویسی Go را برای ایجاد یک برنامه قابل تطبیق و قابل گسترش بدون نیاز به تغییر در کد منبع اصلی، توضیح میدهد. در این رویکرد، برنامه به لایههای مختلفی تقسیم میشود که هرکدام وظایف مجزایی دارند و تنها از طریق اینترفیسها با یکدیگر در تعامل هستند. این ساختار به توسعهدهندگان امکان میدهد تا پلاگینها یا ماژولهایی را به راحتی اضافه کنند یا حذف نمایند بدون آنکه نیاز به تغییر دادن کدهای اصلی برنامه باشد. استفاده از اصول معماری پاک همچنین به افزایش قابلیت نگهداری و کارایی کد کمک میکند و میتواند به بهبود چابکی و پاسخگویی برنامه در برابر تغییرات نیازها و فناوریها منجر شود. این مقاله با ارائه مثالهای عملی و کدبرداری، به خواننده کمک میکند تا درک بهتری از چگونگی پیادهسازی این معماری در پروژههای واقعی داشته باشد.
🟣لینک مقاله:
https://golangweekly.com/link/164274/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
A Practical Example of Dependency Inversion using Plugins
🟢 خلاصه مقاله:
مقالهای که مورد بررسی قرار گرفته، نحوه استفاده از اصول معماری پاک (Clean Architecture) به همراه بسته پلاگین زبان برنامهنویسی Go را برای ایجاد یک برنامه قابل تطبیق و قابل گسترش بدون نیاز به تغییر در کد منبع اصلی، توضیح میدهد. در این رویکرد، برنامه به لایههای مختلفی تقسیم میشود که هرکدام وظایف مجزایی دارند و تنها از طریق اینترفیسها با یکدیگر در تعامل هستند. این ساختار به توسعهدهندگان امکان میدهد تا پلاگینها یا ماژولهایی را به راحتی اضافه کنند یا حذف نمایند بدون آنکه نیاز به تغییر دادن کدهای اصلی برنامه باشد. استفاده از اصول معماری پاک همچنین به افزایش قابلیت نگهداری و کارایی کد کمک میکند و میتواند به بهبود چابکی و پاسخگویی برنامه در برابر تغییرات نیازها و فناوریها منجر شود. این مقاله با ارائه مثالهای عملی و کدبرداری، به خواننده کمک میکند تا درک بهتری از چگونگی پیادهسازی این معماری در پروژههای واقعی داشته باشد.
🟣لینک مقاله:
https://golangweekly.com/link/164274/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
cekrem.github.io
Clean Architecture: A Practical Example of Dependency Inversion in Go using Plugins
Let's make Dependency Inversion and other SOLID principles Great Again™
❤1
🔵 عنوان مقاله
go-mail v0.6: A Library for Sending Emails
🟢 خلاصه مقاله:
مقالهای که مرور شده، دربارهی بهروزرسانی نسخه 0.6 نرمافزار ارسال ایمیل گو-میل صحبت میکند. این نسخه جدید ویژگیهای متعددی اضافه کرده است. از جمله این ویژگیها میتوان به پشتیبانی از امضای S/MIME، کشف خودکار احراز هویت SMTP، پشتیبانی از سوکت دامنه یونیکس و ویژگی 'ارسال سریع' اشاره کرد. این ویژگیهای جدید به کاربران امکان میدهند تا ارسال ایمیلهای خود را با امنیت و سهولت بیشتری انجام دهند. اضافه شدن این قابلیتها نشاندهنده تلاش برای بهبود کارایی و افزایش امنیت در ارسال ایمیلها است، و به کاربران اجازه میدهد تا بتوانند با اعتماد بیشتری نسبت به حفظ امنیت محتوای ارسالی خود اقدام کنند.
🟣لینک مقاله:
https://golangweekly.com/link/164288/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
go-mail v0.6: A Library for Sending Emails
🟢 خلاصه مقاله:
مقالهای که مرور شده، دربارهی بهروزرسانی نسخه 0.6 نرمافزار ارسال ایمیل گو-میل صحبت میکند. این نسخه جدید ویژگیهای متعددی اضافه کرده است. از جمله این ویژگیها میتوان به پشتیبانی از امضای S/MIME، کشف خودکار احراز هویت SMTP، پشتیبانی از سوکت دامنه یونیکس و ویژگی 'ارسال سریع' اشاره کرد. این ویژگیهای جدید به کاربران امکان میدهند تا ارسال ایمیلهای خود را با امنیت و سهولت بیشتری انجام دهند. اضافه شدن این قابلیتها نشاندهنده تلاش برای بهبود کارایی و افزایش امنیت در ارسال ایمیلها است، و به کاربران اجازه میدهد تا بتوانند با اعتماد بیشتری نسبت به حفظ امنیت محتوای ارسالی خود اقدام کنند.
🟣لینک مقاله:
https://golangweekly.com/link/164288/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
GitHub
Release v0.6.0: S/MIME, Auto-discovery, Quicksend and more · wneessen/go-mail
Welcome to go-mail v0.6.0! This release brings some cool new features. We hope you enjoy!
S/MIME signing support
The PRs #298 and #406 add S/MIME signing support to go-mail. We support RSA and ECDS...
S/MIME signing support
The PRs #298 and #406 add S/MIME signing support to go-mail. We support RSA and ECDS...
🥰1
🔵 عنوان مقاله
Realizing Why Go Reflection Restricts What Struct Fields Can Be Modified
🟢 خلاصه مقاله:
این مقاله به بررسی دسترسی و تغییر دادهها در زبان برنامهنویسی Rust میپردازد و تأکید دارد که فیلدهای خصوصی (غیرقابل خروجی) نمیتوانند تغییر کنند، حتی با استفاده از بازتاب (reflection). دیدگاه منطقی و اصول امنیتی در Rust، دسترسی به فیلدهای خصوصی را محدود میکند، که این از تغییر دادههای حساس توسط کدهای بیرونی جلوگیری میکند. این محدودیت به حفظ ساختار دادهها کمک میکند و امنیت برنامهها را افزایش میدهد. نکتهی کلیدی این است که Rust با محدود کردن دسترسیها، به توسعهدهندگان کمک میکند تا سیستمهای مطمئنتری بسازند و از ورود یا تغییرات ناخواسته در بخشهای کلیدی کد جلوگیری میکند. این مقاله، با تاکید بر این امنیت داده، راهنمای مفیدی برای برنامهنویسانی است که به دنبال رویکردهای محافظت شده در برنامهنویسی هستند.
🟣لینک مقاله:
https://golangweekly.com/link/164276/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Realizing Why Go Reflection Restricts What Struct Fields Can Be Modified
🟢 خلاصه مقاله:
این مقاله به بررسی دسترسی و تغییر دادهها در زبان برنامهنویسی Rust میپردازد و تأکید دارد که فیلدهای خصوصی (غیرقابل خروجی) نمیتوانند تغییر کنند، حتی با استفاده از بازتاب (reflection). دیدگاه منطقی و اصول امنیتی در Rust، دسترسی به فیلدهای خصوصی را محدود میکند، که این از تغییر دادههای حساس توسط کدهای بیرونی جلوگیری میکند. این محدودیت به حفظ ساختار دادهها کمک میکند و امنیت برنامهها را افزایش میدهد. نکتهی کلیدی این است که Rust با محدود کردن دسترسیها، به توسعهدهندگان کمک میکند تا سیستمهای مطمئنتری بسازند و از ورود یا تغییرات ناخواسته در بخشهای کلیدی کد جلوگیری میکند. این مقاله، با تاکید بر این امنیت داده، راهنمای مفیدی برای برنامهنویسانی است که به دنبال رویکردهای محافظت شده در برنامهنویسی هستند.
🟣لینک مقاله:
https://golangweekly.com/link/164276/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
❤1
Gopher Academy pinned «🎯 چندتا پست در مورد ویژگی های جدید گولنگ 1.24 اینجاست می تونید بخونید👇 🔵 https://t.me/gopher_academy/3557 🔵 https://t.me/gopher_academy/3556 🔵 https://t.me/gopher_academy/3555 🔵 https://t.me/gopher_academy/3554 🔵 https://t.me/gopher_academy/3553 🔵…»
🔵 عنوان مقاله
An Interactive Tour of Go 1.24
🟢 خلاصه مقاله:
مقاله مورد بحث به بررسی ویژگیهای جدید نسخه 1.24 زبان برنامهنویسی Go پرداخته است. این ویژگیها شامل موارد متنوعی میشوند که هر کدام به وسیله نمونههای قابل اجرا و تعاملی همراه شدهاند تا کاربردی بودن آنها مانند استفاده از نامهای جنسیتی عمومی، ایجاد و پاکسازی نشانگرهای ضعیف، کار با دسترسی به فایل و مشاهده معیارهای عملکردی برای پیادهسازی جدید و سریعتر map نشان داده شود. انتظار میرود که نسخه 1.24 Go در ماههای آینده منتشر شود، با اینکه نسخه دوم Release Candidate (RC2) آن احتمالاً طی هفته جاری منتشر خواهد شد. این بروزرسانیها نشاندهنده تلاشهای مستمر توسعهدهندگان Go برای ارتقاء کارایی و افزایش تواناییهای زبان هستند.
🟣لینک مقاله:
https://golangweekly.com/link/164267/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
An Interactive Tour of Go 1.24
🟢 خلاصه مقاله:
مقاله مورد بحث به بررسی ویژگیهای جدید نسخه 1.24 زبان برنامهنویسی Go پرداخته است. این ویژگیها شامل موارد متنوعی میشوند که هر کدام به وسیله نمونههای قابل اجرا و تعاملی همراه شدهاند تا کاربردی بودن آنها مانند استفاده از نامهای جنسیتی عمومی، ایجاد و پاکسازی نشانگرهای ضعیف، کار با دسترسی به فایل و مشاهده معیارهای عملکردی برای پیادهسازی جدید و سریعتر map نشان داده شود. انتظار میرود که نسخه 1.24 Go در ماههای آینده منتشر شود، با اینکه نسخه دوم Release Candidate (RC2) آن احتمالاً طی هفته جاری منتشر خواهد شد. این بروزرسانیها نشاندهنده تلاشهای مستمر توسعهدهندگان Go برای ارتقاء کارایی و افزایش تواناییهای زبان هستند.
🟣لینک مقاله:
https://golangweekly.com/link/164267/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
antonz.org
Go 1.24 interactive tour
Weak pointers, faster maps, directory-scoped access, and more.
👍2🎉1
🔵 عنوان مقاله
The First Newsletter Dedicated to Product Engineers
🟢 خلاصه مقاله:
مقالهای که مورد بحث قرار گرفته، تمرکز خود را بر روی نقش مهم مهندسان محصول در استارتآپهای در حال رشد به سرعت معطوف داشته است. این مهندسان نه تنها توانایی تشخیص نیازمندیهای محصول را دارند، بلکه قابلیت اجرایی کردن این نیازها را نیز دارا هستند. اهمیت این نقش در این است که این افراد قادر به همزمانی تحلیل و پیادهسازی هستند، که این امر، کلیدی برای موفقیت سریع است. مقاله با ارائه مهارتها و راهبردهای لازم برای موفقیت در این نقش، "Product for Engineers" را به عنوان منبعی معرفی میکند که به اشتراکگذاری این دانشها پرداخته و به مهندسان محصول کمک میکند تا در محیطهای پویا و سریع استارتآپها به موفقیت دست یابند.
🟣لینک مقاله:
https://golangweekly.com/link/164266/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
The First Newsletter Dedicated to Product Engineers
🟢 خلاصه مقاله:
مقالهای که مورد بحث قرار گرفته، تمرکز خود را بر روی نقش مهم مهندسان محصول در استارتآپهای در حال رشد به سرعت معطوف داشته است. این مهندسان نه تنها توانایی تشخیص نیازمندیهای محصول را دارند، بلکه قابلیت اجرایی کردن این نیازها را نیز دارا هستند. اهمیت این نقش در این است که این افراد قادر به همزمانی تحلیل و پیادهسازی هستند، که این امر، کلیدی برای موفقیت سریع است. مقاله با ارائه مهارتها و راهبردهای لازم برای موفقیت در این نقش، "Product for Engineers" را به عنوان منبعی معرفی میکند که به اشتراکگذاری این دانشها پرداخته و به مهندسان محصول کمک میکند تا در محیطهای پویا و سریع استارتآپها به موفقیت دست یابند.
🟣لینک مقاله:
https://golangweekly.com/link/164266/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Posthog
Product for Engineers | Substack
Helping engineers and founders flex their product muscles. Click to read Product for Engineers, a Substack publication with tens of thousands of subscribers.
🐳1
🔵 عنوان مقاله
Bunster: Compile Shell Scripts to Static Binaries
🟢 خلاصه مقاله:
مقالهای که مورد بررسی قرار گرفته به بررسی چگونگی تبدیل اسکریپتهای bash به زبان برنامهنویسی Go و سپس تبدیل آنها به باینریها میپردازد. این فرآیند به منظور افزایش قابلیت حمل و اجرای اسکریپتها در محیطهای مختلف بدون نیاز به مفسر bash انجام میشود. ترانسپایل کردن اسکریپتهای bash به زبان Go امکان بهرهمندی از ویژگیهای این زبان مانند مدیریت حافظه بهینهتر، سرعت بالاتر اجرا، و حاکمیت بیشتر بر روی محیط اجرایی را فراهم میآورد. به علاوه، این رویکرد امکان توزیع برنامهها به صورت فایلهای باینری را میدهد که اجرای آنها در سیستمها و پلتفرمهای گوناگون آسانتر میشود. این مقاله به خوانندگان راهنماییهای کاربردی برای ترانسپایل اسکریپتهای bash میدهد و مزایای استفاده از Go را تشریح میکند.
🟣لینک مقاله:
https://golangweekly.com/link/164582/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Bunster: Compile Shell Scripts to Static Binaries
🟢 خلاصه مقاله:
مقالهای که مورد بررسی قرار گرفته به بررسی چگونگی تبدیل اسکریپتهای bash به زبان برنامهنویسی Go و سپس تبدیل آنها به باینریها میپردازد. این فرآیند به منظور افزایش قابلیت حمل و اجرای اسکریپتها در محیطهای مختلف بدون نیاز به مفسر bash انجام میشود. ترانسپایل کردن اسکریپتهای bash به زبان Go امکان بهرهمندی از ویژگیهای این زبان مانند مدیریت حافظه بهینهتر، سرعت بالاتر اجرا، و حاکمیت بیشتر بر روی محیط اجرایی را فراهم میآورد. به علاوه، این رویکرد امکان توزیع برنامهها به صورت فایلهای باینری را میدهد که اجرای آنها در سیستمها و پلتفرمهای گوناگون آسانتر میشود. این مقاله به خوانندگان راهنماییهای کاربردی برای ترانسپایل اسکریپتهای bash میدهد و مزایای استفاده از Go را تشریح میکند.
🟣لینک مقاله:
https://golangweekly.com/link/164582/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
GitHub
GitHub - yassinebenaid/bunster: Compile shell scripts to static binaries.
Compile shell scripts to static binaries. Contribute to yassinebenaid/bunster development by creating an account on GitHub.
👍5
🔵 عنوان مقاله
Protect Against Bots, Fraud, and Abuse in Real Time
🟢 خلاصه مقاله:
مقالهای که ارائه شده در مورد WorkOS Radar و کاربردهای آن در حفظ امنیت برنامهها میپردازد. WorkOS Radar با استفاده از تکنیکهای پیشرفته شناسایی دستگاه (device fingerprinting)، قادر است رفتارهای مضر را تشخیص داده، تأیید کند و مسدود سازد. این فناوری به ویژه در جلوگیری از ثبتنامهای جعلی، سوءاستفاده از سطح رایگان خدمات و همچنین مقابله با حملات رباتها و تلاشهای نفوذ به صورت خودکار (brute force attacks) مؤثر است. با استفاده از WorkOS Radar، کاربران میتوانند از برنامههای خود در برابر انواع خطرات سایبری به طور موثر محافظت کرده و ایمنی دادهها و عملکرد کاربردی برنامههای خود را تضمین کنند. این ابزار امنیتی به کاربران این امکان را میدهد که به صورت فعال و پیشگیرانه در مقابل تهدیدات سایبری قدم بردارند.
🟣لینک مقاله:
https://golangweekly.com/link/164556/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Protect Against Bots, Fraud, and Abuse in Real Time
🟢 خلاصه مقاله:
مقالهای که ارائه شده در مورد WorkOS Radar و کاربردهای آن در حفظ امنیت برنامهها میپردازد. WorkOS Radar با استفاده از تکنیکهای پیشرفته شناسایی دستگاه (device fingerprinting)، قادر است رفتارهای مضر را تشخیص داده، تأیید کند و مسدود سازد. این فناوری به ویژه در جلوگیری از ثبتنامهای جعلی، سوءاستفاده از سطح رایگان خدمات و همچنین مقابله با حملات رباتها و تلاشهای نفوذ به صورت خودکار (brute force attacks) مؤثر است. با استفاده از WorkOS Radar، کاربران میتوانند از برنامههای خود در برابر انواع خطرات سایبری به طور موثر محافظت کرده و ایمنی دادهها و عملکرد کاربردی برنامههای خود را تضمین کنند. این ابزار امنیتی به کاربران این امکان را میدهد که به صورت فعال و پیشگیرانه در مقابل تهدیدات سایبری قدم بردارند.
🟣لینک مقاله:
https://golangweekly.com/link/164556/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Workos
Radar — WorkOS
Detect, verify, and block harmful behavior in real time. Radar protects your app against AI bots, account abuse, credential theft, and more.
🙏1
Forwarded from 𓄂 Bardia 𓆃
🔵 عنوان مقاله
▶ How to Build an MMO Game with Godot 4 and Go
🟢 خلاصه مقاله:
این مقاله به بررسی و توضیح یک سری ویدیویی متشکل از 13 قسمت در یوتیوب میپردازد که نحوه ساخت یک بازی آنلاین چندنفره با استفاده از موتور بازی محبوب Godot (بدون ارتباط با Go) را آموزش میدهد. در این سریال، زبان برنامهنویسی Go برای مدیریت بخش پشتیبانی(بکاند) استفاده شده است. اصلیترین هدف از این سری ویدیو، ارائه دستورالعملها و راهنماییهای گام به گام برای توسعهدهندگانی است که علاقمند به استفاده از Godot و Go در پروژههای بازیسازی خود هستند. این مقاله، علاوه بر معرفی ابزارها و تکنولوژیهای مرتبط، به برجستهسازی تواناییها و قابلیتهای این دو پلتفرم در خلق بازیهای چندنفره تمرکز دارد و نکات کاربردی برای برنامهنویسان و توسعهدهندگان بازی را ارائه میدهد.
🟣لینک مقاله:
https://golangweekly.com/link/164561/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
▶ How to Build an MMO Game with Godot 4 and Go
🟢 خلاصه مقاله:
این مقاله به بررسی و توضیح یک سری ویدیویی متشکل از 13 قسمت در یوتیوب میپردازد که نحوه ساخت یک بازی آنلاین چندنفره با استفاده از موتور بازی محبوب Godot (بدون ارتباط با Go) را آموزش میدهد. در این سریال، زبان برنامهنویسی Go برای مدیریت بخش پشتیبانی(بکاند) استفاده شده است. اصلیترین هدف از این سری ویدیو، ارائه دستورالعملها و راهنماییهای گام به گام برای توسعهدهندگانی است که علاقمند به استفاده از Godot و Go در پروژههای بازیسازی خود هستند. این مقاله، علاوه بر معرفی ابزارها و تکنولوژیهای مرتبط، به برجستهسازی تواناییها و قابلیتهای این دو پلتفرم در خلق بازیهای چندنفره تمرکز دارد و نکات کاربردی برای برنامهنویسان و توسعهدهندگان بازی را ارائه میدهد.
🟣لینک مقاله:
https://golangweekly.com/link/164561/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
YouTube
Make an MMO with Godot 4 + Golang
This is a brand-new course showing you how to make a multiplayer online game (MMO) using Golang and Godot 4.4. This is the video companion playlist for my bl...
👍1
🔵 عنوان مقاله
Go 1.24 Release Candidate 2 Released
🟢 خلاصه مقاله:
در جدیدترین گزارشها، تیم توسعهدهنده زبان برنامهنویسی Go اعلام کردهاند که یک قدم دیگر به انتشار نسخه 1.24 نزدیکتر شدهایم. آنها به شدت تاکید دارند که کاربران به آزمایش نسخه دوم کاندید انتشار (RC2) بپردازند و از آن در محیطهای توسعه و تولید استفاده کنند تا هرگونه اشکالات آن را گزارش دهند. هرچند که RC2 تفاوت چشمگیری با RC1 ندارد، اما یادداشتهای اولیه انتشار همچنان بهبود مییابند. علاوه بر این، تور تعاملی Go 1.24 ارائهشده توسط آنتون زیانوف به شما کمک میکند تا به سرعت با ویژگیهای جدید این نسخه آشنا شوید و در کاربرد آنها سرعت بگیرید. این بروزرسانیها و امکانات جدید نشاندهنده تعهد مستمر تیم Go به بهبود و تکامل این زبان است.
🟣لینک مقاله:
https://golangweekly.com/link/164557/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Go 1.24 Release Candidate 2 Released
🟢 خلاصه مقاله:
در جدیدترین گزارشها، تیم توسعهدهنده زبان برنامهنویسی Go اعلام کردهاند که یک قدم دیگر به انتشار نسخه 1.24 نزدیکتر شدهایم. آنها به شدت تاکید دارند که کاربران به آزمایش نسخه دوم کاندید انتشار (RC2) بپردازند و از آن در محیطهای توسعه و تولید استفاده کنند تا هرگونه اشکالات آن را گزارش دهند. هرچند که RC2 تفاوت چشمگیری با RC1 ندارد، اما یادداشتهای اولیه انتشار همچنان بهبود مییابند. علاوه بر این، تور تعاملی Go 1.24 ارائهشده توسط آنتون زیانوف به شما کمک میکند تا به سرعت با ویژگیهای جدید این نسخه آشنا شوید و در کاربرد آنها سرعت بگیرید. این بروزرسانیها و امکانات جدید نشاندهنده تعهد مستمر تیم Go به بهبود و تکامل این زبان است.
🟣لینک مقاله:
https://golangweekly.com/link/164557/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
👍1
🔵 عنوان مقاله
Forgejo 10.0: A Go-Powered Self-Hosted Software Forge
🟢 خلاصه مقاله:
مقالهای که شما به آن اشاره کردهاید، در مورد نرمافزاری به نام Forgejo بحث میکند که به عنوان یک جایگزین کامل برای GitHub پیشنهاد شده است. Forgejo در واقع یک شاخه (fork) از نرمافزار Gitea است، اما با ویژگیهای بیشتر توسعه یافته که آن را برای استفاده به عنوان پلتفرم کدنویسی مستقل تقویت میکند. این پلتفرم اکنون توسط Codeberg به کار گرفته شده است و شما میتوانید نحوه کار آن را در مخزن خود Forgejo مشاهده کنید. به تازگی نسخهی 10.0 از آن منتشر شده است که احتمالاً شامل بهروزرسانیها و ویژگیهای جدیدی است. این مقاله تاکید دارد که Forgejo گزینهای قدرتمند برای کسانی است که به دنبال جایگزینی برای GitHub هستند.
🟣لینک مقاله:
https://golangweekly.com/link/164574/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Forgejo 10.0: A Go-Powered Self-Hosted Software Forge
🟢 خلاصه مقاله:
مقالهای که شما به آن اشاره کردهاید، در مورد نرمافزاری به نام Forgejo بحث میکند که به عنوان یک جایگزین کامل برای GitHub پیشنهاد شده است. Forgejo در واقع یک شاخه (fork) از نرمافزار Gitea است، اما با ویژگیهای بیشتر توسعه یافته که آن را برای استفاده به عنوان پلتفرم کدنویسی مستقل تقویت میکند. این پلتفرم اکنون توسط Codeberg به کار گرفته شده است و شما میتوانید نحوه کار آن را در مخزن خود Forgejo مشاهده کنید. به تازگی نسخهی 10.0 از آن منتشر شده است که احتمالاً شامل بهروزرسانیها و ویژگیهای جدیدی است. این مقاله تاکید دارد که Forgejo گزینهای قدرتمند برای کسانی است که به دنبال جایگزینی برای GitHub هستند.
🟣لینک مقاله:
https://golangweekly.com/link/164574/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
forgejo.org
Forgejo – Beyond coding. We forge.
Forgejo is a self-hosted lightweight software forge. Easy to install and low maintenance, it just does the job.
💡 چرا همه اساتید موفق سیگنال و پکیج میفروشن ؟ 🥶
‼️ ادم موفق چیزی میفروشه به مردم ؟😂
💯 اقای ارسلان حسینی تو چنلش هر هفته یک سیگنال میده سری قبلی ریپل سیگنال داد ۳۵۰٪ سود داده و روند امروز مارکت هم تحلیل کرده بود و معامله جدید هم گذاشته 💸
⏳ برای ورود کلیک کنید:
💬 @arsalaneth ⬅️
💬 @arsalaneth ⬅️
🔴🔴🔴🔴🔴🔴
‼️ ادم موفق چیزی میفروشه به مردم ؟😂
💯 اقای ارسلان حسینی تو چنلش هر هفته یک سیگنال میده سری قبلی ریپل سیگنال داد ۳۵۰٪ سود داده و روند امروز مارکت هم تحلیل کرده بود و معامله جدید هم گذاشته 💸
⏳ برای ورود کلیک کنید:
💬 @arsalaneth ⬅️
💬 @arsalaneth ⬅️
🔴🔴🔴🔴🔴🔴
🔵 عنوان مقاله
asyncmachine-go: A Declarative Control Flow Library
🟢 خلاصه مقاله:
مقالهی مورد بررسی رویکردهای برنامهنویسی شیءگرا و مدل بازیگر را از طریق ماشین حالت مبتنی بر ساعت برای ساخت جریانهای کاری خودکار و دارای حالت بررسی میکند. این روش به توسعهدهندگان امکان میدهد تا با استفاده از ماشینهای حالت که زمانبندیهای مشخصی دارند، جریانهای کاری پیچیدهای را طراحی و پیادهسازی کنند. با استفاده از مدل بازیگر، هر کامپوننت بهعنوان یک بازیگر مستقل عمل میکند که میتواند پیامها را دریافت کرده و بر اساس آنها واکنش نشان دهد. این بازیگرها توانایی اجرای اعمال مختلف را دارند و با ارتباطات مشخص و قواعد تعریفشده با دیگر بازیگرها تعامل میکنند. این تکنیک بهویژه برای برنامههایی که نیاز به مدیریت و واکنشهای سریع دارند، مفید است، زیرا امکان پیکربندی پویای جریانهای کاری و پاسخگویی به تغییرات در زمان واقعی را فراهم میآورد. این سیستم تأکیدی بر خودکارسازی و کاهش نیاز به دخالت دستی دارد، که باعث افزایش کارایی و دقت در پردازشها میشود.
🟣لینک مقاله:
https://golangweekly.com/link/164580/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
asyncmachine-go: A Declarative Control Flow Library
🟢 خلاصه مقاله:
مقالهی مورد بررسی رویکردهای برنامهنویسی شیءگرا و مدل بازیگر را از طریق ماشین حالت مبتنی بر ساعت برای ساخت جریانهای کاری خودکار و دارای حالت بررسی میکند. این روش به توسعهدهندگان امکان میدهد تا با استفاده از ماشینهای حالت که زمانبندیهای مشخصی دارند، جریانهای کاری پیچیدهای را طراحی و پیادهسازی کنند. با استفاده از مدل بازیگر، هر کامپوننت بهعنوان یک بازیگر مستقل عمل میکند که میتواند پیامها را دریافت کرده و بر اساس آنها واکنش نشان دهد. این بازیگرها توانایی اجرای اعمال مختلف را دارند و با ارتباطات مشخص و قواعد تعریفشده با دیگر بازیگرها تعامل میکنند. این تکنیک بهویژه برای برنامههایی که نیاز به مدیریت و واکنشهای سریع دارند، مفید است، زیرا امکان پیکربندی پویای جریانهای کاری و پاسخگویی به تغییرات در زمان واقعی را فراهم میآورد. این سیستم تأکیدی بر خودکارسازی و کاهش نیاز به دخالت دستی دارد، که باعث افزایش کارایی و دقت در پردازشها میشود.
🟣لینک مقاله:
https://golangweekly.com/link/164580/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
GitHub
GitHub - pancsta/asyncmachine-go: Declarative control flow library implementing AOP and Actor Model through a clock-based state…
Declarative control flow library implementing AOP and Actor Model through a clock-based state machine - pancsta/asyncmachine-go
🔵Mutable data type in Golang
Slice
Array
Map
Channels
————————————-
🔵Immutable data type in Golang
Boolean, Int, Float
Pointers
String
Interfaces
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Slice
Array
Map
Channels
————————————-
🔵Immutable data type in Golang
Boolean, Int, Float
Pointers
String
Interfaces
➖➖➖➖➖➖➖➖
👑 @gopher_academy
🍓2🙏1
Gopher Academy
🔵Mutable data type in Golang Slice Array Map Channels ————————————- 🔵Immutable data type in Golang Boolean, Int, Float Pointers String Interfaces ➖➖➖➖➖➖➖➖ 👑 @gopher_academy
در زبان برنامهنویسی Go (گولنگ)، مفهوم mutable و immutable به قابلیت تغییر یا عدم تغییر دادهها پس از ایجاد آنها اشاره دارد. این مفاهیم به طور مستقیم در خود زبان Go تعریف نشدهاند، اما میتوان آنها را در رفتار انواع دادهها مشاهده کرد.
### ۱. Immutable Types (انواع غیرقابل تغییر)
- تعریف: دادههایی که پس از ایجاد، نمیتوان محتوای آنها را تغییر داد.
- مثالها:
- اعداد (int, float, ...): وقتی یک عدد ایجاد میشود، نمیتوان آن را تغییر داد. اگر مقدار جدیدی به یک متغیر اختصاص دهید، در واقع یک مقدار جدید ایجاد میشود.
- رشتهها (string): رشتهها در Go غیرقابل تغییر هستند. اگر بخشی از یک رشته را تغییر دهید، در واقع یک رشته جدید ایجاد میشود.
- ثابتها (constants): ثابتها در Go نیز غیرقابل تغییر هستند.
#### مثال:
### ۲. Mutable Types (انواع قابل تغییر)
- تعریف: دادههایی که پس از ایجاد، میتوان محتوای آنها را تغییر داد.
- مثالها:
- آرایهها (arrays): آرایهها در Go قابل تغییر هستند، اما اندازه آنها ثابت است.
- برشها (slices): برشها قابل تغییر هستند و میتوان عناصر آنها را تغییر داد.
- نقشهها (maps): نقشهها نیز قابل تغییر هستند و میتوان کلیدها و مقادیر آنها را تغییر داد.
- ساختارها (structs): اگر فیلدهای یک ساختار قابل تغییر باشند، میتوان آنها را تغییر داد.
#### مثال:
### ۳. تفاوتهای کلیدی
- تغییرپذیری: دادههای mutable پس از ایجاد قابل تغییر هستند، در حالی که دادههای immutable پس از ایجاد غیرقابل تغییر هستند.
- عملکرد: تغییر دادههای immutable معمولاً منجر به ایجاد یک کپی جدید از داده میشود، در حالی که تغییر دادههای mutable روی همان داده اصلی اعمال میشود.
- کارایی: استفاده از دادههای mutable میتواند کارایی بیشتری داشته باشد، زیرا از ایجاد کپیهای مکرر جلوگیری میکند. با این حال، دادههای immutable امنتر هستند و از خطاهای ناشی از تغییرات ناخواسته جلوگیری میکنند.
### ۴. نکات مهم
- در Go، رشتهها و ثابتها immutable هستند، در حالی که برشها، نقشهها و ساختارها mutable هستند.
- هنگام کار با دادههای mutable، باید مراقب باشید که تغییرات ناخواسته در دادهها رخ ندهد، به ویژه زمانی که دادهها بین توابع یا گوروتینها به اشتراک گذاشته میشوند.
این تفاوتها به شما کمک میکنند تا تصمیم بگیرید از کدام نوع داده در شرایط مختلف استفاده کنید.
➖➖➖➖➖➖➖➖
👑 @gopher_academy
### ۱. Immutable Types (انواع غیرقابل تغییر)
- تعریف: دادههایی که پس از ایجاد، نمیتوان محتوای آنها را تغییر داد.
- مثالها:
- اعداد (int, float, ...): وقتی یک عدد ایجاد میشود، نمیتوان آن را تغییر داد. اگر مقدار جدیدی به یک متغیر اختصاص دهید، در واقع یک مقدار جدید ایجاد میشود.
- رشتهها (string): رشتهها در Go غیرقابل تغییر هستند. اگر بخشی از یک رشته را تغییر دهید، در واقع یک رشته جدید ایجاد میشود.
- ثابتها (constants): ثابتها در Go نیز غیرقابل تغییر هستند.
#### مثال:
s := "Hello"
s[0] = 'h' // این خطا میدهد، زیرا رشتهها غیرقابل تغییر هستند.
s = "hello" // این کار میکند، اما در واقع یک رشته جدید ایجاد میشود.
### ۲. Mutable Types (انواع قابل تغییر)
- تعریف: دادههایی که پس از ایجاد، میتوان محتوای آنها را تغییر داد.
- مثالها:
- آرایهها (arrays): آرایهها در Go قابل تغییر هستند، اما اندازه آنها ثابت است.
- برشها (slices): برشها قابل تغییر هستند و میتوان عناصر آنها را تغییر داد.
- نقشهها (maps): نقشهها نیز قابل تغییر هستند و میتوان کلیدها و مقادیر آنها را تغییر داد.
- ساختارها (structs): اگر فیلدهای یک ساختار قابل تغییر باشند، میتوان آنها را تغییر داد.
#### مثال:
slice := []int{1, 2, 3}
slice[0] = 10 // این کار میکند، زیرا برشها قابل تغییر هستند.
### ۳. تفاوتهای کلیدی
- تغییرپذیری: دادههای mutable پس از ایجاد قابل تغییر هستند، در حالی که دادههای immutable پس از ایجاد غیرقابل تغییر هستند.
- عملکرد: تغییر دادههای immutable معمولاً منجر به ایجاد یک کپی جدید از داده میشود، در حالی که تغییر دادههای mutable روی همان داده اصلی اعمال میشود.
- کارایی: استفاده از دادههای mutable میتواند کارایی بیشتری داشته باشد، زیرا از ایجاد کپیهای مکرر جلوگیری میکند. با این حال، دادههای immutable امنتر هستند و از خطاهای ناشی از تغییرات ناخواسته جلوگیری میکنند.
### ۴. نکات مهم
- در Go، رشتهها و ثابتها immutable هستند، در حالی که برشها، نقشهها و ساختارها mutable هستند.
- هنگام کار با دادههای mutable، باید مراقب باشید که تغییرات ناخواسته در دادهها رخ ندهد، به ویژه زمانی که دادهها بین توابع یا گوروتینها به اشتراک گذاشته میشوند.
این تفاوتها به شما کمک میکنند تا تصمیم بگیرید از کدام نوع داده در شرایط مختلف استفاده کنید.
➖➖➖➖➖➖➖➖
👑 @gopher_academy
👏5❤1⚡1
🔵 عنوان مقاله
▶ Go in the Smallest of Places
🟢 خلاصه مقاله:
مقالهای که در کنفرانس GopherCon 2024 ارائه شده است به بررسی پتانسیل و جزئیات فنی استفاده از TinyGo برای ساخت سیستمهای مبتنی بر زبان Go روی میکروکنترلرها میپردازد. TinyGo به عنوان یک پیادهسازی کوچک و بهینه از زبان برنامهنویسی Go شناخته شده است که برای دستگاههای دارای منابع محدود مانند میکروکنترلرها طراحی شده است. سخنرانی تمرکز اصلیاش بر روی چالشها و راهحلهایی بوده است که TinyGo در رفع مشکلات مربوط به محدودیتهای حافظه و قدرت پردازش ارائه میدهد. همچنین بر این نکته تاکید شده که چگونه TinyGo میتواند برای توسعه دهندگان Go امکان استفاده از کدهای موجود را بهگونهای فراهم آورد که به آسانی قابل انتقال به پلتفرمهای سختافزاری مختلف باشد. این سخنرانی نه تنها جنبههای فنی را پوشش داده، بلکه به نمونههای کاربردی نیز پرداخته تا نشان دهد چگونه TinyGo میتواند در پروژههای واقعی مورد استفاده قرار گیرد.
🟣لینک مقاله:
https://golangweekly.com/link/164567/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
▶ Go in the Smallest of Places
🟢 خلاصه مقاله:
مقالهای که در کنفرانس GopherCon 2024 ارائه شده است به بررسی پتانسیل و جزئیات فنی استفاده از TinyGo برای ساخت سیستمهای مبتنی بر زبان Go روی میکروکنترلرها میپردازد. TinyGo به عنوان یک پیادهسازی کوچک و بهینه از زبان برنامهنویسی Go شناخته شده است که برای دستگاههای دارای منابع محدود مانند میکروکنترلرها طراحی شده است. سخنرانی تمرکز اصلیاش بر روی چالشها و راهحلهایی بوده است که TinyGo در رفع مشکلات مربوط به محدودیتهای حافظه و قدرت پردازش ارائه میدهد. همچنین بر این نکته تاکید شده که چگونه TinyGo میتواند برای توسعه دهندگان Go امکان استفاده از کدهای موجود را بهگونهای فراهم آورد که به آسانی قابل انتقال به پلتفرمهای سختافزاری مختلف باشد. این سخنرانی نه تنها جنبههای فنی را پوشش داده، بلکه به نمونههای کاربردی نیز پرداخته تا نشان دهد چگونه TinyGo میتواند در پروژههای واقعی مورد استفاده قرار گیرد.
🟣لینک مقاله:
https://golangweekly.com/link/164567/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
YouTube
GopherCon 2024: Go in the Smallest of Places - Patricio Whittingslow
Join us as we delve into the world of embedded systems, shedding light on Micro Controller Units (MCUs) and their practical applications in domains ranging from rocket motor control to biomedical processes. Surprisingly, we'll discover how Go, a language…
👍1
🔵 عنوان مقاله
gno.land Offers Grants & Bounties for Go-Powered Decentralized Apps
🟢 خلاصه مقاله:
مقالهای که شما به آن اشاره کردهاید، به معرفی پلتفرم قرارداد هوشمند gno.land میپردازد که محیطی جذاب برای توسعهدهندگان برنامهها، علاقمندان به زبان برنامهنویسی Go و کسانی است که به دنبال کار با تکنولوژیهای نوین هستند. این پلتفرم به کاربران امکان میدهد تا در محیطی آزاد و عادلانه به ساخت و پیادهسازی قراردادهای هوشمند بپردازند. هدف از این پلتفرم، فراهم کردن امکاناتی است که از طریق آنها بتوان جهانی بهتر و عادلانهتری را رقم زد. این پلتفرم با استفاده از زبان Go، یکی از زبانهای برنامهنویسی روز دنیا، به کاربران امکان میدهد قابلیتهای نوآورانهای را در توسعه نرمافزارهای خود به کار برند.
🟣لینک مقاله:
https://golangweekly.com/link/164581/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
gno.land Offers Grants & Bounties for Go-Powered Decentralized Apps
🟢 خلاصه مقاله:
مقالهای که شما به آن اشاره کردهاید، به معرفی پلتفرم قرارداد هوشمند gno.land میپردازد که محیطی جذاب برای توسعهدهندگان برنامهها، علاقمندان به زبان برنامهنویسی Go و کسانی است که به دنبال کار با تکنولوژیهای نوین هستند. این پلتفرم به کاربران امکان میدهد تا در محیطی آزاد و عادلانه به ساخت و پیادهسازی قراردادهای هوشمند بپردازند. هدف از این پلتفرم، فراهم کردن امکاناتی است که از طریق آنها بتوان جهانی بهتر و عادلانهتری را رقم زد. این پلتفرم با استفاده از زبان Go، یکی از زبانهای برنامهنویسی روز دنیا، به کاربران امکان میدهد قابلیتهای نوآورانهای را در توسعه نرمافزارهای خود به کار برند.
🟣لینک مقاله:
https://golangweekly.com/link/164581/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Forwarded from 𓄂 Bardia 𓆃
پنج پرامپت chatgpt برای بهبود عملکرد
۱. تولید پیشنهادات کاربردی
"
۲. بهبود نوشتار با بازخورد دقیق
"
۳. ساخت یک رزومه قوی
"
۴. تسریع یادگیری با اصل ۸۰/۲۰
"
۵. یادگیری مهارتهای جدید
"
با استفاده از این پیشنهادات، میتوانید بهرهوری خود را افزایش دهید و مهارتهای جدیدی یاد بگیرید!
۱. تولید پیشنهادات کاربردی
"
من تازه به استفاده از ChatGPT روی آوردهام و شغل من [شغل خود را وارد کنید] است. لطفاً فهرستی از ۱۰ پیشنهاد برتر برای افزایش بهرهوری من ارائه دهید
."۲. بهبود نوشتار با بازخورد دقیق
"
[متن نوشتاری خود را وارد کنید] لطفاً نوشتهی من را بررسی کن. اشتباهات گرامری و املایی را اصلاح کن و پیشنهاداتی برای بهبود وضوح نوشتهام ارائه بده
."۳. ساخت یک رزومه قوی
"
جزئیات حرفهای من را در زیر تحلیل کن و یک رزومه متقاعدکننده ایجاد کن که به من در یافتن شغل [جزئیات شغل مورد نظر را وارد کنید] کمک کند: [جزئیات حرفهای خود را وارد کنید
]."۴. تسریع یادگیری با اصل ۸۰/۲۰
"
میخواهم درباره [موضوع مورد نظر را وارد کنید] یاد بگیرم. لطفاً ۲۰ درصد مهمترین نکات این موضوع را شناسایی و به اشتراک بگذار که به من کمک کند ۸۰ درصد آن را درک کنم.
"۵. یادگیری مهارتهای جدید
"
میخواهم در [مهارت مورد نظر را وارد کنید] بهتر شوم. من کاملاً مبتدی هستم. لطفاً یک برنامه یادگیری ۳۰ روزه ایجاد کن که به یک مبتدی مانند من کمک کند تا این مهارت را بیاموزد و پیشرفت کند
."با استفاده از این پیشنهادات، میتوانید بهرهوری خود را افزایش دهید و مهارتهای جدیدی یاد بگیرید!
🔥2🍾1👨💻1