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

پست پین رو بخونید
https://news.1rj.ru/str/dev_perfects/455


ارتباط:
https://news.1rj.ru/str/HidenChat_Bot?start=936082426
Download Telegram
Forwarded from Syntax | سینتکس (Daimon)
This media is not supported in your browser
VIEW IN TELEGRAM
6 الگوی برتر معماری نرم‌افزار

معماری مونولیتیک (Monolithic Architecture)


در معماری مونولیتیک، تمام اجزای یک برنامه در یک کدبیس واحد و یکپارچه ترکیب می‌شوند. این رویکرد، فرآیند استقرار (Deployment) را ساده کرده و برای برنامه‌های کوچک مدیریت آن آسان‌تر است. با این حال، با رشد برنامه، این معماری می‌تواند سنگین و پیچیده شود، به طوری که مقیاس‌پذیری و نگهداری آن دشوار می‌گردد. هر تغییری در بخشی از برنامه ممکن است نیازمند استقرار دوباره کل سیستم باشد.

این معماری برای پروژه‌های کوچک و تیم‌های کوچک مناسب است، اما برای پروژه‌های بزرگ‌تر، به دلیل وابستگی‌های زیاد میان اجزاء، مدیریت تغییرات بسیار دشوار می‌شود.


الگوی (Controller-Worker Pattern)

این الگو منطق کنترل (Control Logic) را از منطق پردازش (Processing Logic) جدا می‌کند. کنترلر وظیفه مدیریت درخواست‌های ورودی، جریان داده‌ها و تخصیص وظایف به اجزای کارگر (Worker) را بر عهده دارد. اجزای کارگر وظایف پردازشی واقعی را انجام می‌دهند. این الگو برای مدیریت وظایف غیرهمزمان (Asynchronous Tasks) مفید است و می‌تواند مقیاس‌پذیری را با امکان اجرای همزمان چندین نمونه از اجزای کارگر بهبود بخشد.

مناسب برای سیستم‌هایی است که بار پردازشی غیرهمزمان دارند، مانند پردازش صف‌ها (Queues) یا مدیریت درخواست‌های سنگین.

معماری میکروسرویس‌ها (Microservices Architecture)

معماری میکروسرویس‌ها برنامه را به سرویس‌های کوچک و مستقل تقسیم می‌کند که از طریق APIهای مشخص با یکدیگر ارتباط برقرار می‌کنند. هر سرویس مسئول یک قابلیت خاص از کسب‌وکار است و می‌تواند به‌طور مستقل توسعه، استقرار و مقیاس‌پذیری شود. این معماری انعطاف‌پذیری بیشتری فراهم می‌کند و امکان استفاده از فناوری‌های مختلف برای سرویس‌های مختلف را می‌دهد. اما مدیریت سرویس‌ها و ارتباط بین آن‌ها می‌تواند پیچیدگی‌هایی به همراه داشته باشد.

این معماری مناسب سازمان‌هایی است که نیاز به توسعه سریع و مقیاس‌پذیری خدمات دارند. اما نیازمند ابزارهای مناسب برای نظارت، هماهنگی و مدیریت ارتباطات میان سرویس‌ها است.


مدل (Model-View-Controller یا MVC)

الگوی MVC یک برنامه را به سه بخش مرتبط تقسیم می‌کند:
- مدل (Model): وظیفه مدیریت داده‌ها و منطق کسب‌وکار را دارد.
- نما (View): داده‌ها را به کاربر نمایش می‌دهد.
- کنترلر (Controller): ورودی کاربر را مدیریت کرده و با مدل تعامل دارد.

این جداسازی باعث سازماندهی بهتر کد می‌شود و مدیریت و مقیاس‌پذیری برنامه، به‌ویژه در توسعه وب، را آسان‌تر می‌کند.

این الگو در اکثر فریم‌ورک‌های وب مانند Django و Ruby on Rails استفاده می‌شود و برای پروژه‌هایی که نیاز به تعامل زیاد با کاربر دارند، ایده‌آل است.


معماری رویداد-محور (Event-Driven Architecture)

در معماری رویداد-محور، اجزا از طریق تولید و مصرف رویدادها با یکدیگر ارتباط برقرار می‌کنند. هنگامی که یک رویداد رخ می‌دهد (مانند یک اقدام کاربر یا تغییری در سیستم)، رویداد های خاصی در سیستم ایجاد می‌شود و دیگر اجزای سیستم نسبت به رویداد ها اکشن مناسبی که نیاز دارند را انجام می دهند. این معماری بسیار جدا از هم (Decoupled) است و مقیاس‌پذیری و انعطاف‌پذیری بیشتری فراهم می‌کند، چرا که اجزا می‌توانند به‌طور مستقل تکامل یابند.

این معماری در سیستم‌های توزیع‌شده بسیار مفید است.


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

در معماری لایه‌ای، برنامه به لایه‌های مجزا با وظایف مشخص تقسیم می‌شود. لایه‌های رایج شامل موارد زیر هستند:
- لایه ارائه (Presentation Layer): وظیفه نمایش داده به کاربر.
- لایه منطق کسب‌وکار (Business Logic Layer): مدیریت منطق اصلی برنامه.
- لایه دسترسی به داده (Data Access Layer): مدیریت تعامل با پایگاه داده.

هر لایه تنها با لایه مجاور خود ارتباط برقرار می‌کند که باعث جداسازی وظایف (Separation of Concerns) می‌شود. این الگو نگهداری را آسان کرده و به تیم‌ها اجازه می‌دهد به‌طور مستقل روی لایه‌های مختلف کار کنند. با این حال، وجود لایه‌های متعدد ممکن است باعث کاهش عملکرد به دلیل سربار ناشی از ارتباط میان لایه‌ها شود.

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

source

@Syntax_fa
👍1
بفرمایید Harper
هارپر یک ابزار بررسی گرامر انگلیسی هست که طبق ادعادی نویسنده‌ش از نظر سرعت و دقت، توان رقابت با Grammarly رو داره!
حریم خصوصی رو رعایت می‌کنه و البته رایگان و کدباز هست.

گیتهاب:
https://github.com/automattic/harper

سایت اصلی:
https://writewithharper.com

@DevTwitter | <Morteza Geransayeh/>
Forwarded from Morteza Bashsiz مرتضی باشسیز (Morteza Bashsiz)
درود دوستان

من تمامی اسکریپت‌هایی که توی این دوره دیباگ استفاده میکنم رو گذاشتم توی ریپوزیتوری یوتیوبم توی گیتهاب
اگه دوست دارید که خودتون تمرین کنید میتونید استفاده کنید

https://github.com/MortezaBashsiz/YouTube/tree/main/Debug
این ویدئو رو پارسال درمورد ماستادون و فدیورس ضبط کردم، اگر قصد دارید داخلشون حساب بسازید توصیه می‌کنم تماشا کنید.



تماشا از پیرتوب


@SohrabContents
Forwarded from CleverDevs (Mammad)
یکی از بچه های چنل در حال توسعه بک‌اند فروشگاهی هست. این پروژه با nestjs و mongodb در حال توسعه‌ست. داکیومنتش با swagger توسعه داده می‌شه (فایل postman هم موجوده). در پروژه از unit test استفاده شده تا دوستانی که مایل به همکاری هستن به راحتی به پروژه بپیوندن. پروژه روی داکر هست که اگه از دوستان کسی مایل به تست بود، به راحتی با داکر پروژه رو اجرا کنه. دوستان فرانت کاری که دنبال بک اند برای نمونه کارشون می‌گردن میتونن از این ریپو استفاده کنن.

لینک گیت هاب :‌

https://github.com/AliDeWeb/Shop-Center

#openSource
@CleverDevs - @CleverDevsGp
وقتی ویندوز 98 میزبان هوش مصنوعی می‌شود؛ سفر به گذشته برای آینده!

تصور کنید یک کامپیوتر با Pentium II و فقط 128 مگابایت رم، در حال اجرای یک مدل زبانی مثل Llama 2! تیم EXO Labs این ایده جذاب رو عملی کرده و نتیجه‌اش یه ترکیب شگفت‌انگیز از نوستالژی و تکنولوژیه.

با کمک کد ساده‌ای از آندری کارپاتی، این سیستم می‌تونه با سرعت 35.9 توکن بر ثانیه متن تولید کنه.

فایل‌ها با FTP منتقل می‌شن و کامپایل کدها با ابزارهایی مثل Borland C++ 5.02 انجام شده.
در واقع هوش مصنوعی رو روی کانفیگی بالا آورده که حتی انتقال فایل‌ بهش از طریق USB ممکن نیست
البته کار این تیم جدای از جنبه فانش ، می‌خواد نشون بده هوش مصنوعی نباید فقط در انحصار شرکت‌های بزرگ باشه. این پروژه، قدمیه برای دسترس‌پذیر کردن هوش مصنوعی برای همه!

@DevTwitter | <breaking news/>
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
🔰دستورات مهم برای مدیران سیستم یا همون سیس ادمین های لینوکسی #سری چهارم
🔰اطلاعات دیسک و پارتیشن‌ها در لینوکس را می‌توان با دستورات مختلف جمع‌آوری کرد:

🔹دستور زیر UUID دستگاه بلوک مشخص‌شده را نمایش می‌دهد (بدون نمایش سربرگ یا پارتیشن‌ها):
lsblk -dno UUID /dev/sdX


🔹دستور زیر اطلاعات سیستم فایل، شامل UUID، نوع فایل سیستم و نقطه‌ی مونتاژ را نشان می‌دهد:
lsblk -f /dev/sdX


🔹دستور زیر اطلاعات دستگاه بلوک، شامل UUID، نوع فایل سیستم و برچسب را نمایش می‌دهد:
blkid /dev/sdX


🔹دستور زیر لیست لینک‌های نمادین دستگاه‌ها بر اساس UUID با جزئیات کامل را نشان می‌دهد:
ls -lha /dev/disk/by-uuid


🔹دستور زیر اطلاعات کامل دستگاه را نمایش داده و خروجی را بر اساس UUID فیلتر می‌کند:
udevadm info -q all -n /dev/sdX | grep by-uuid


🔹دستور زیر اطلاعات دقیق درباره‌ی دستگاه‌های بلوک (دیسک‌ها و پارتیشن‌ها) را نشان می‌دهد:
hwinfo --block



📌نویسنده: حسین سیلانی
📌منبع :
آکادمی کندوی دانش
https://learninghive.ir
Forwarded from Go Casts 🚀
شاید تعجب کرده باشید که چرا در خیلی از کنفرانس های JavaScript جای این عبارت از js و ecmanoscript استفاده میکنن..
دلیلش اینه که آقای oracle که sun microsystems رو خرید تریدمارک JavaScript رو هم در نتیجه ش صاحب شد.
حالا آقای ryan dahl که سازنده nodejs و deno هست چند وقتی هست گیر داده به oracle که تریدمارک JavaScript رو کنسل کنه که دیگه به عنوان یه کلمه عمومی همه بتونن ازش استفاده کنن. سفت و سخت پیگیره..

https://x.com/deno_land/status/1873615998324203591


@gocasts
Forwarded from IR-GFW
🌐 گزارش اول IRGFW منتشر شد.

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

موضوعات کلیدی این گزارش شامل وضعیت DNSها، وضعیت UDP و QUIC، وضعیت IPها، کاوشگرهای فعال، سیستم DPI و بررسی اجمالی پروتکل‌ها است.

برای علاقه‌مندان به تحلیل روش‌های فیلترینگ اینترنت در ایران، این گزارش یک منبع کامل و دقیق محسوب می‌شود. با انتشار و به اشتراک‌گذاری این گزارش، می‌توانید به گسترش آگاهی و درک بهتر از سانسور اینترنت در ایران کمک کنید.


🔗 ⁦لینک گزارش پارسی

🔗 لینک گزارش English



➡️ Website | Telegram | X
Please open Telegram to view this post
VIEW IN TELEGRAM
اولین گزارش فنی درباره IRGFW با عنوان "شناخت فایروال بزرگ ایران" اکنون در دسترس بوده، که به بررسی جامع زیرساخت‌ها و عملکردهای فایروال بزرگ ایران پرداخته است.
موضوعات کلیدی این‌گزارش شامل وضعیت DNSها، وضعیت UDP و QUIC، وضعیت IPها، کاوشگرهای فعال، سیستم DPI و بررسی اجمالی پروتکل‌ها است.
برای علاقه‌مندان به تحلیل روش‌های فیلترینگ اینترنت در ایران، این‌گزارش یک منبع کامل و دقیق محسوب می‌شود.

👉 irgfw.report/fa/projects/project1
💡 EN: irgfw.report/projects/project1

🔍 ircf.space
@ircfspace
در برنامه‌نویسی شیءگرا، انکپسولاسیون یعنی اطلاعات داخل یک شیء مخفی می‌مونه و فقط از طریق متدهای خاصی قابل دسترسی هست این باعث میشه که داده‌ها امنیت داشته باشن و دستکاری نشن. در نتیجه، برنامه ساده‌تر و قابل کنترل‌تر میشه چون هر چیزی در شیء خودش نگه‌داری میشه.
توی 4 زبان مثال زدم ؛

@DevTwitter | <Misagh Momeni Bashusqeh/>
Forwarded from کانال مهرداد لینوکس (Mehrdad Linux)
🚫 تا یک حدی بپرسید کدام توزیع لینوکس،IDE،زبان برنامه نویسی و ...
بچسب به اصل کار ، از حاشیه دوری کنید.

طرف توسعه دهنده کرنل لینوکس
بدون syntax highlighting
بدون LSP
فقط یک پنجره ترمینال، بدون tmux
فقط ترمینال خام و vi پایه
از ابتدا یک درایور USB کرنل را تو 3 ساعت مینویسه

https://www.youtube.com/watch?v=IXBC85SGC0Q
#Programming
Forwarded from کانال مهرداد لینوکس (Mehrdad Linux)
اگر از محصولات Logitech devices مثل keyboards, موس و ... روی لینوکس linux استفاده میکنید
🔥 ابزار Solaar که یک Linux manager برای devices های وایرلسی هستند که به سیستم متصل اندو میتونه مفید باشه

جفت کردن/لغو pairing/unpairing دستگاه ها با گیرنده ها
پیکربندی تنظیمات دستگاه
پیکربندی دکمه سفارشی
اجرای قوانین در پاسخ به پیام های خاص از دستگاه ها
مستندات

⚠️من ندارم شما داشتید تست کردید اگر خوب بود یک کامنت بزارید بقیه استفاده کنند
https://github.com/pwr-Solaar/Solaar
#linux
Forwarded from Geek Alerts
اواخر ژانویه ۲۰۲۵ یعنی تا یک ماه دیگه مدل o3 از OpenAI میاد، ظاهرا از o1 پریدیم به o3.

سری «o» میشن مدل‌هایی که قبل از جواب دادن، فکر و استدلال میکنن و روی دقت جواب تمرکز دارن. (در مورد این حرف بزنیم که چرا میگن به AGI نزدیک شدیم)

تست‌ها روی o3 خبر از صبر زیاد برای جواب میده، یعنی ممکنه تا ۲ دقیقه طول بکشه که جواب بده. منطقی میدونیم زمان بیشتر یعنی کلی هزینه و مصرف GPU که o3 رو تبدیل به گرون‌ترین مدل موجود میکنه.
سر این OpenAI یک مدل دیگه یعنی o3-mini رو هم در کنارش منتشر میکنه، مدلی سریع‌تر و ارزونتر با همون کارکرد.

یه تست داریم به اسم ARC که به AI یه سری الگو نشون میدن که توش مربع‌های رنگی چیده شدن و یه قسمتی از الگو ناقصه. مثل تست هوش‌های ۴ گزینه‌ای خودمون. این الان یه معیار برای تشخیص AGI هم به حساب میاد.

دلیلش اینه که حل کردن تست‌ها به توانایی شناختی برمیگرده که ویژگی اصلی ما انسان‌ها هست. حالا AI نمیتونه برای جواب دادن به تست‌های ARC صرفا به حافظه‌اش تکیه کنه و خودش باید به شکلی دنبال راه‌حل بگرده.

تو تست ARC، مدل o3 امتیاز ۷۵.۷٪ رو کسب کرده. که ۵٪ بیشتر GPT-4o هست.

تست‌های ARC عموما ساده هستن و آدم‌ها معمولا میتونن یه امتیازی بین ۸۵ تا ۹۵ بگیرن.
اینکه یک LLM تونسته به عدد ۷۵ برسه نشون میده مسیر AGI داره سریع طی میشه و سال‌های کمی با معرفی اولین AGI فاصله داریم.
lifehacker
@geekalerts
Forwarded from ASafaeirad
After 7 or 8 years, I tried using PowerPoint again, and it's really, really outdated.
The web version is completely unusable.
Surprised how MS is still selling this trash.