Dev Perfects
40 subscribers
9.23K photos
1.26K videos
468 files
13K links
بخوام خیلی خلاصه بگم
این کانال میاد مطالب کانالای خفن تو حوزه تکنولوژی و برنامه نویسی رو جمع میکنه

پست پین رو بخونید
https://t.iss.one/dev_perfects/455


ارتباط:
https://t.iss.one/HidenChat_Bot?start=936082426
Download Telegram
Forwarded from SoniaCircuit (Sony)
به همین زودیا برای این مسیج یه توضیح مفصل مینویسم
فقط این رو بگم که قراره پست های خیلی بیشتری در مورد موضوعات مختلف بنویسم و دوباره این کانال مرده رو خیلی خیلی زنده ترش کنم.

هر شروعی یه پایانی داره,
هر پایانی یه شروعی داره.

#note
Forwarded from SoniaCircuit (Sony)
هنوزم یکی از بهترین منابع برای آشنایی و یادگیری با مباحث مهندسی امنیت، حساب می شود!
مفاهیم بیان شده، کمک می کند تقریبا هر چیزی را که مد نظر داریم، آن را بتوانیم امن کنیم.
https://github.com/veeral-patel/how-to-secure-anything

@DevTwitter | <Vahid Nameni/>
Forwarded from Anophel | آنوفل
💙 تا حالا شده بخوای یه سیستم رو طوری بسازی که بتونی راحت تغییرش بدی بدون اینکه کل کدها رو عوض کنی؟ معماری شش‌ضلعی (Hexagonal Architecture
) همون چیزیه که دنبالش می‌گردی!

💠اصول Hexagonal Architecture :
-هسته کسب‌وکار (Core Domain): منطق اصلی برنامه که بدون وابستگی به هیچ چیزی کار می‌کنه.
- پورت‌ها (Ports) : رابط‌هایی که هسته از طریق اونا با دنیای بیرون ارتباط می‌گیره.
- آداپتورها (Adapters): وظیفه‌ی پیاده‌سازی پورت‌ها و برقراری ارتباط بین هسته و اجزای خارجی.

💠مزایای معماری Hexagonal :
- کاهش وابستگی‌ها: بخش‌های مختلف مستقل از همدیگه هستن.
- انعطاف‌پذیری: راحت می‌تونی واسط‌های خارجی رو بدون دست زدن به هسته عوض کنی.
- بهبود تست‌پذیری: تست‌نویسی خیلی ساده‌تر می‌شه چون هسته مستقله.
- قابلیت تغییر فناوری: راحت می‌تونی تکنولوژی‌های خارجی رو بدون تغییرات زیاد جایگزین کنی.

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

⭐️در پست های قبلی نیز به یک سری معماری و architectural approach رو نیز بررسی کردم:

https://lnkd.in/evuPH7cB

🌐لینک پست:
https://www.linkedin.com/posts/mohammad-abdorrahmani-051914198_agvaewaesaeuagv-agvaew-go-activity-7273570842481942528-vlh6?utm_source=share&utm_medium=member_desktop

#گولنگ #گو #go #golang
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Meitix
ولی یه مشکلی که این قضیه داره. اینه که اگر تعداد سرور های موجود توی hash ring کم باشه. بار بصورت مساوی توسط laod balancer تقسیم نمیشه. برای حل این موضوع میان به ازای هر نود، چند نود virtual هم میسازن
تلگرام هر عکسی رو که می‌فرستم داخل پوشه

/android/media/org.telegram.messenger/Telegram Images/

کلون می‌کنه و توی گالری از اون عکس دوتا یا شاید حتی ۸ تا میسازه.


شما هم همچین مشکلی دارید؟

توی این ساب‌ردیت قبلاً بهش اشاره شده:

https://www.reddit.com/r/Telegram/comments/15xknfl/telegram_keeps_duplicating_images_sent_with_the/

اما پاسخی داده نشده.

@SohrabContents
یه Arena Allocator برای C/Cpp نوشتم که کراس پلتفرمه و قابلیت اینو داره که از چندین Buffer برای مدیریت درخواست‌های بیشتر استفاده کنه
https://github.com/thehxdev/libarena

@DevTwitter | <Hossein/>
سرویس‌های پارچ برای به‌روزرسانی موقتاً از دسترس خارج می‌شوند.




@ParchLinux
Forwarded from Go Casts 🚀
سلام دوستان
یه گروه راه اندازی کردم که در مورد مباحث مختلف دنیای ابری و سرور و دیتاسنتر و شبکه اشتراک دانش و پرسش و پاسخ داشته باشیم، تو این گروه قراره بدونیم چطوری سرویس هارو دیپلوی کنیم، تنظیمات پروداکشن چطوری باشه، دیتابیس چطوری مدیریت کنیم، از کدوم دیتاسنتر و ارائه دهنده سرور بگیریم و غیره

لطفا دوست داشتید عضو بشید
https://t.iss.one/serversos_ir


@gocasts
Forwarded from Software Engineer Labdon
SDK (Software Development Kit) و کتابخانه (Library) هر دو ابزارهایی برای توسعه نرم‌افزار هستند، اما تفاوت‌های کلیدی در مفهوم، هدف و کاربرد دارند:

---

### 1. تعریف و مفهوم
- کتابخانه (Library):
مجموعه‌ای از توابع، کدها یا کلاس‌ها که برای حل مشکلات خاص یا افزودن ویژگی‌های خاص به برنامه استفاده می‌شود. کتابخانه‌ها به برنامه‌نویس اجازه می‌دهند تا به جای نوشتن کد از ابتدا، از کدهای آماده استفاده کند.

مثال:
- math در Python برای محاسبات ریاضی.
- fmt در Go برای قالب‌بندی و چاپ.

- SDK:
مجموعه‌ای کامل‌تر از ابزارها، شامل کتابخانه‌ها، مستندات، ابزارهای اشکال‌زدایی، شبیه‌سازها و APIهایی که برای توسعه نرم‌افزار برای یک پلتفرم خاص یا استفاده از یک سرویس خاص طراحی شده‌اند.

مثال:
- Android SDK برای توسعه اپلیکیشن‌های اندروید.
- AWS SDK برای کار با سرویس‌های آمازون.

---

### 2. هدف اصلی
- کتابخانه:
انجام یک وظیفه خاص یا مجموعه‌ای از وظایف مشخص (مانند خواندن/نوشتن فایل، محاسبات ریاضی، یا اتصال به پایگاه داده).

- SDK:
فراهم کردن محیطی کامل برای ساختن یک برنامه یا یک سیستم، که معمولاً شامل کتابخانه‌ها و ابزارهای اضافی است.

---

### 3. سطح استفاده
- کتابخانه:
متمرکز روی یک مسئله خاص است و برنامه‌نویس آن را به کد خود اضافه کرده و فراخوانی می‌کند.

- SDK:
همه‌چیزهایی که برای توسعه یک اپلیکیشن نیاز دارید، از جمله ابزارها، نمونه کدها، و حتی شبیه‌سازها را فراهم می‌کند.


🕸 https://linktr.ee/Labdon
سرویس‌های پارچ مجدداً در دسترس هستند


status.parchlinux.com

@ParchLinux
Forwarded from 🎄 یک برنامه نویس تنبل (  MΞ)
🔸بریم برنامه‌نویسی یاد بگیریم پولدار بشیم،‌ لباس مارک بخریم.
برنامه‌نویس سینیور:


#fun
@TheRaymondDev
Forwarded from Linuxor ?
این سایته اومده خلاصه زبان هارو نوشته، برای پایتونش خیلی خوب بود با یه نگاه میشه از اول تا آخر زبان رفت

https://overapi.com/python

🐧 @Linuxor ~ Sezo
معماری‌های نرم‌افزاری در حوزه برنامه‌نویسی بسیار متنوع هستند و هر کدام با تمرکز بر اهداف، نیازها و شرایط خاصی به‌کار می‌روند.
در این پست، تعدادی از معماری‌های پرکاربرد را میگم و توضیح می‌دهم که روی چه حوزه‌ای متمرکزند، کجا استفاده از آن‌ها مناسب هست و کجا بهتر استفاده نشه.

—————————————————
معماری لایه‌ای (Layered Architecture)

تمرکز:تفکیک مسئولیت‌ها بر اساس لایه‌های منطقی (Presentation، Business، Data Access).

استفاده ش: سیستم‌های کلاسیک سازمانی که ساختار ساده و قابل پیش‌بینی می‌خوان؛ وقتی که تیم توسعه با رویکرد سنتی آشنا و نیاز به شفافیت بین لایه‌ها داریم

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

—————————————————
معماری سرویس‌گرا(Service Oriented Architecture - SOA)

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

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


—————————————————
معماری مایکروسرویس (Microservices Architecture)
تمرکز:
تقسیم سیستم به سرویس‌های کوچک، مستقل و قابل استقرار جداگانه که از طریق APIهای سبک (مثل rest api) با هم در ارتباطند
کجا استفاده کنیم:
در سیستم‌هایی با مقیاس بزرگ که نیاز به انتشار و تغییرات سریع دارند، تیم‌های توسعه جداگانه روی بخش‌های مختلف کار می‌کنن و بخش‌های مختلف سیستم باید به شکل مستقل مقیاس‌پذیر باشن. ولی مواظب باشین که تعدادش یهو نره بالا که از اونور(نگهداریش) به دردسر میفتین
کجا استفاده نکنیم:
در پروژه‌های کوچک یا تیم‌های کم تجربه که نگه‌داشت و هماهنگی بین تعداد زیاد سرویس‌های مستقل می‌تواند سخت باشه. همچنین اگر نیازمندی‌ها ساده است و تغییرات کم هستند، مایکروسرویس می‌تواند پیچیدگی غیرضروری ایجاد کند


—————————————————
معماری رویداد-محور (Event-Driven Architecture)
تمرکز:
تبادل اطلاعات و واکنش سرویس‌ها بر اساس Eventها و پردازش ناهمزمان.
کجا استفاده کنیم:
در سیستم‌هایی که رویدادها و اتفاقات به صورت لحظه‌ای رخ میدن، نیاز به پاسخ آنی و مقیاس‌پذیری بالا دارن (مثل سیستم‌های IoT، بازی‌های آنلاین، پردازش تراکنش‌های لحظه‌ای).
کجا استفاده نکنیم:
در سیستم‌هایی که روابط همزمان، قوی و فرآیندهای خطی و ساده دارند و افزایش پیچیدگی به واسطه پیام‌ها و صف‌ها ارزش افزوده‌ای ندارد. کلا هرجایی که حرف از stream و online بودن معنی نداره

—————————————————
معماری تمیز (Clean Architecture)،
شش ضلعی (Hexagonal) یا پیازی (به قول یکی از بچه ها پوست پیازی) (Onion)

تمرکز:
جداسازی منطق کسب‌وکار از جزئیات زیرساختی و رابط کاربری، تا بشه منطق اصلی را مستقل از تکنولوژی‌ها و فریم‌ورک‌ها نگه داشت. البته تو جزئیات باهم تفاوت هایی دارن
کجا استفاده کنیم:
در پروژه‌های بلندمدت و پیچیده که پایداری منطق کسب‌وکار مهم است و ممکن است نیاز باشد فناوری‌های زیرساختی طی زمان تغییر کنند. یعنی مثلا یهو از SQL Server بخواین سوییچ کنین به mongoDb بی دلیل!:)
کجا استفاده نکنیم:
در پروژه‌های سریع و کوچک با نیازهای ساده که ایجاد این سطح از انتزاع ممکنه زمانی که دارین را هدر بده و پیچیدگی غیرضروری اضافه کنه یه چیزی درست کردین هی کپی پیست نکنین تو پروژه های مختلف همچین کاری از یه جایی به بعد شمارو تبدیل میکنه به کدنویس نه برنامه نویس
@DevTwitter | <MahDi/>
دوره پیشرفته جاوا اسکریپت به شما کمک می‌کند تا مفاهیم پیچیده و پیشرفته این زبان محبوب را درک کنید و مهارت خود را به سطح جدیدی ببرید. این دوره شامل موضوعاتی مانند Generators، Iterators، Maps، و پروژه‌های عملی است که دانش تئوری را به کاربرد عملی متصل می‌کند.

مشاهده دوره در کانال نیکول وب:

https://youtube.com/playlist?list=PLbZbuOkDeba8zDIG2GleE6bVQ8AbW2APN&feature=shared

@DevTwitter | <Mohammadreza/>
Forwarded from nova-account (Mohammad Hossein)
“فریم‌ورک لاراول”
این هفته نسخه بتای اکستنشن رسمی لاراول برای VS Code منتشر میشه.
الان یه نگاهی انداختم به این سایت اول اینکه خب آدرسش عوض شده
دوم اینکه چقدر کامل شده

شدید پیشنهاد میکنم که اصلا از دستش ندید


آدرس: https://cheatsheets.zip/

#cheatsheets #نکتک

@PhiloLearn
Forwarded from 🎄 یک برنامه نویس تنبل (The Lazy 🌱 Raymond)
🔶 پاول دروف اعلام کرد که در سال ۲۰۲۴ حدود ۱۵٫۴ میلیون گروه و کانال مرتبط با محتواهای آسیب‌زا مانند محتواهای کلاهبرداری و تروریسم را حذف کرده است.

پاول دروف تأیید کرد که پاکسازی این پلتفرم از گروه‌ها و کانال‌های آسیب‌زا با کمک ابزارهای پیشرفته‌ی هوش مصنوعی تقویت شده است.

#خبر

@TheRaymondDev
چند وقتی درگیر راه اندازی یه کلاستر ELK بودم و برای نگهداری snapshot ها باید از minio استفاده می کردیم.
یه ریپو درست کردم که براتون یه کلاستر الستیک با nginx و minio بالامیاره و می تونین ازش استفاده کنین

https://github.com/zaaferani/elk-nginx-s3

@DevTwitter | <حسن زعفرانی/>