🎄 یک برنامه نویس تنبل – Telegram
🎄 یک برنامه نویس تنبل
2.01K subscribers
1.52K photos
282 videos
37 files
1.9K links
کانال یک برنامه نویس تنبل

🔥لینوکس
🔥برنامه نویسی فرانت‌اند
🔥برنامه نویسی بک‌اند
🔥اخبار تکنولوژی و...

ارتباط با مدیریت :

@CoderNap

اسپانسر هاست سایت راییوم توسط پوینا

https://rayium.ir

@poinair
Download Telegram
وقتی تو مرورگر google.com رو تایپ میکنی چه اتفاقی میوفته

@DevTwitter
👍7
Forwarded from Linuxor ?
پهنای باند (Bandwidth) یعنی چه حجمی از داده "می‌تونه" رد شه، ولی گذردهی (Throughput) یعنی واقعاً "چقدر" رد می‌شه. مثل اینه که یه لوله بزرگ آب داشته باشی (پهنای باند)، اما به خاطر فشار کم یا نشتی، فقط یه بخشی از آب برسه (گذردهی).


@Linuxor
👍3
🎄 یک برنامه نویس تنبل
🔸territorial یک بازی جذاب پیکسی سبک و انلاین که میتونه شمارو معتاد کنه قلمرو خودتون گسترش میدید-متحد میشید-کمک میگیرید و میفرستید-حمله میکنید و... هم تحت وب هم اندروید هم ios https://territorial.io #معرفی @TheRaymondDev
👆👆
https://territorial.io

توی بازی که معرفی کردیم یه مشکلی که بود کانکشن وبسوکتش بعضا قطع میشد و چون بصورت دیفالت reconnect نمیشه چیزی هم براش پیاده نکردن و در جای حساس یهو همه چی پر
واسه همین مجبور شدیم کار غیراخلاقی کنیم و بصورت گلوبال WebSocket رو override کردیم و قابلیت ریکانکت شدن رو بهش اضافه کردیم:

https://gist.github.com/maanimis/42dd254450a10f8f087ae8447d8c91ee

@TheRaymondDev
👍2
🔶 ماشین گزارش شفافیت تلگرام با آدرس زیر به شما میگه براساس ای‌پی شما و/یا شماره تلفن شما چه تعداد درخواست از طرف دولت دریافت کرده و چه تعداد کاربر بابت اون درخواست اطلاعاتشان به دولت داده شده. اگر در ایران هستید خوبه حتمن آزمایش کنید.

https://news.1rj.ru/str/transparency

@TheRaymondDev
🔶 مارک زاکربرگ ؛ از ترس ترامپ؛ توهین و فحاشی به همجنسگراها رو در «فیس بوک»، «واتساپ» و «اینستاگرام» آزاد کرد.

تم ها و استیکرهای همجنسگراها نیز حذف شد.

شرکت متا(مالک اینستاگرام و فیسبوک):

از الان به بعد کاربرای اپلیکیشنای ما میتونن همجنسگراها و ترنس ها رو "بیمار روانی" خطاب کنند


@TheRaymondDev | @GizmizTe
🤣27👍3🕊2
🔶 به گزارش تک کرانچ, پس از تعطیلی قریب الوقوع TikTok در 19 ژانویه به دلیل مالکیت آن در ایالات متحده (مگر اینکه دیوان عالی مداخله کند)، به نظر می رسد یک برنامه چینی دیگر توجه ها را به خود جلب کرده است. کاربران آمریکایی به برنامه ویدیویی کوتاه چینی Xiaohongshu (معروف به RedNote در انگلیسی) هجوم می آورند. این برنامه امروز به رتبه 1 برنامه های رایگان در اپ استور ایالات متحده رسیده است و همچنین برترین برنامه شبکه اجتماعی در تمام برنامه های رایگان آیفون است.

پ.ن: جالب است که کاربران آمریکایی به شبکه اجتماعی خودشون اعتماد ندارند و به شبکه اجتماعی چینی مهاجرت می کند!

@TheRaymondDev
😁5👍2
🎄 یک برنامه نویس تنبل
🔶 به گزارش تک کرانچ, پس از تعطیلی قریب الوقوع TikTok در 19 ژانویه به دلیل مالکیت آن در ایالات متحده (مگر اینکه دیوان عالی مداخله کند)، به نظر می رسد یک برنامه چینی دیگر توجه ها را به خود جلب کرده است. کاربران آمریکایی به برنامه ویدیویی کوتاه چینی Xiaohongshu…
🔶 در رابطه با این خبر یه مشکل اساسی که ما داریم که آزادی بیان در شبکه اجتماعی هست.

دو نوع آزادی بیان داریم : آزادی بیان شرقی و آزادی بیان غربی

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

خب این نوع آزادی بیان ها به شدت تناقص میاره و اینجاست که کاربران برای اینکه بدونن که در دنیا چه اتفاقی می افته و خبرها رو پیگیری کنه در انتخاب شبکه اجتماعی بین بد و بدتر هستند.

@TheRaymondDev
👍6👎2🤡1
🔶 دوست عزیزمون دیاکو که افزونه کروم برای راست چین سازی چت دیپ سیک توسعه داده است و البته ممکن است که در آینده قابلیت راست چین زبان خاورمیانه ای (غرب آسیا) اضافه کند.

این افرونه مرورگر کروم بیس ها قابل نصب است.

گیت هاب :

https://github.com/diakohamidian/rtl-deep-seek

@TheRaymondDev | @Diako488
1👍1
Forwarded from Panic Dev
⭐️ استاریفای یه پلتفرم کاربر محوره که به شما این امکان رو میده برای ریپازیتوری هاتون استار بگیرید و برای پروفایل گیت هابتون فالوور بگیرید.

💸 کاملا رایگانه و بر اساس میزان تعاملون و تاثیر پذیریتون توی کامیونیتی بهتون اعتبار میده که اون اعتبار رو میتونید برای گرفتن استار یا فالوور واقعی گیت‌هاب استفاده کنید.

🔥 این پروژه نیمه دوم ماه آینده لانچ میشه و در دسترس میشه و فقط 5000 کاربر میگیره.

ضمنا 10 تا استار فوری هم بهتون توی اولین ورود میده که میتونید روی هر کدوم از ریپازیتوری هاتون که دوست دارید اعمالش کنید 🤩

🔗 https://starify.app
Please open Telegram to view this post
VIEW IN TELEGRAM
🔶 قطعی گسترده اینترنت در روسیه

کاربران اینترنت در سراسر روسیه از اختلالات گسترده ای خبر داده اند که بر شرکت های مخابراتی و پلتفرم های آنلاین تأثیر می گذارد.

به گفته سایت مانیتورینگ Downdetector، این قطعی ها بر شرکت های Beeline، Megafon، MTS، Rostelecom و Tele2 تأثیر گذاشته است.

کاربران همچنین مشکلاتی را در دسترسی به تلگرام، تیک تاک، گوگل، یوتیوب، استیم و توییچ گزارش کرده اند.

علت اصلی قطعی اینترنت روسیه خرابی سیستم توزیع DNS توسط زیرساخت جهانی DNSSEC است.

#خبر

@TheRaymondDev
😁2
Forwarded from Linuxor ?
اگر کد شما درست کار نکرد نگران نباشید. اگر همه چیز درست انجام می‌شد، شما بیکار می‌شدید.


@Linuxor ~ Mosher's Law
😁15👍1
Forwarded from laravel-news
تیلور، خبر از مشارکت دختر 13 ساله اش در مستندات لاراول داد! 👩‍🦱

تیلور: "او می خواهد نویسنده یا روزنامه نگار شود، احتمالا امسال اولین مشارکت خود را در مستندات لاراول انجام دهد. ❤️"

#Laravel_Doc
👍133
🔶 چگونه دیتا براساس مقام در لاراول نمایش دهیم؟

فرض کنید می خواهید دیتا براساس مقام در یک صفحه نمایش دهید و در حالت عادی دو دیتای کلی در یک صفحه نشون میده هم در مدیر و کاربر عادی.

کد زیر:

$tasks = Task::paginate(10);
$tasks = Task::where('owner_id', Auth::id())->paginate(10);


اما چگونه براساس کاربر مدیر و عادی این دو نمایش دهیم.

با استفاده تابع کوئری :
$tasks = Task::when(!Auth::user()->isAdmin(), function ($query) {
$query->where('owner_id', Auth::id());
})->paginate(10);


و اینم تابع Roles در مدل User:

public function isAdmin(): bool
{
return $this->roles()->where('noscript', 'isAdmin')->count() > 0;
}


اینجاست من دیتا براساس گیرنده owner_id یعنی کاربر عادی ثبت کردم و اگر کاربری که عضو شد به عنوان کاربر عادی دیتاهای مدیر کل سایت دیده نمی شود و فقط دیتا کاربر عادی می ببیند. بنابراین با isAdmin() براساس مقام در نمایش دیتاها محدودیت ایجاد کردم.

#لاراول

@TheRaymondDev
🔥1
🔶 فرهنگستان زبان و ادب فارسی، واژه فارسی «فرسته» را معادل واژه فرنگی «پٌست» تصویب کرد.

🤦‍♂️

@TheRaymondDev
😁5👏1
Forwarded from Node Unique
🆕~> انواع معماری‌ها در 👩‍💻 Nodejs: انتخاب بهترین رویکرد برای پروژه. 🧐


⚪️معماری نرم‌افزار یکی از مهم‌ترین عوامل در موفقیت یا شکست یک پروژه است. وقتی صحبت از توسعه‌ی اپلیکیشن‌های مبتنی بر 👩‍💻Node.js می‌شود، انتخاب معماری مناسب می‌تواند عملکرد، مقیاس‌پذیری و نگهداری کد را بهبود بخشد. در این پست، به بررسی رایج‌ترین معماری‌های مورد استفاده در 👩‍💻Nodejs می‌پردازیم. 👍

1️⃣معماری MVC (Model-View-Controller):
⚪️معماری کلاسیک که اپلیکیشن را به سه لایه مدل (مدیریت مدل ها)، نمایش (رابط کاربری)، و کنترلر (مدیریت منطق و واسطه) تقسیم می‌کند.
⚪️مناسب برای پروژه‌های متوسط تا بزرگ که نیازمند کدی سازمان‌دهی‌شده هستند.

2️⃣معماری MVVM (Model-View-ViewModel):
⚪️شبیه به MVC است، اما با تمرکز بیشتر بر داده‌محوری و جداسازی بهتر منطق UI از منطق تجاری.
⚪️معمولاً برای پروژه‌های SPA (تک‌صفحه‌ای) استفاده می‌شود، به ویژه با فریمورک‌هایی مانند 👩‍💻 Vuejs یا 🏤 Angular.

3️⃣معماری لایه‌ای (Layered Architecture):
⚪️این معماری شامل لایه‌های مختلفی مانند کنترلر، سرویس‌ها، و مدل ها است.
⚪️مناسب برای پروژه‌هایی که نیاز به جداسازی وظایف در بخش‌های مختلف دارند.

4️⃣معماری میکروسرویس‌ها (Microservices):
⚪️اپلیکیشن به سرویس‌های کوچک و مستقل تقسیم می‌شود که هرکدام می‌توانند به طور جداگانه توسعه، تست، و مستقر شوند.
⚪️مناسب برای پروژه‌های بزرگ و پیچیده با تیم‌های متعدد.

5️⃣معماری Serverless (بدون سرور):
⚪️کد به صورت تابع‌های کوچک اجرا می‌شود و مدیریت سرورها بر عهده‌ی ارائه‌دهندگان ابری مثل AWS Lambda است.
⚪️برای پروژه‌هایی با نیاز به مقیاس‌پذیری بالا و هزینه‌های پایین مناسب است.

6️⃣معماری Event-Driven (مبتنی بر رویداد):
⚪️با استفاده از رویدادها و پیام‌ها (event emitters) کار می‌کند.
⚪️مناسب برای اپلیکیشن‌های بلادرنگ (real-time) مثل سیستم‌های چت، بازی‌های آنلاین، و اعلان‌ها.

7️⃣معماری Clean (معماری تمیز):
⚪️تأکید بر جداسازی منطق تجاری از زیرساخت‌ها و فناوری‌ها.
⚪️هدف آن ایجاد کدی خوانا، قابل نگهداری و مقیاس‌پذیر است.

8️⃣معماری Hexagonal (شش‌ضلعی):
⚪️به نام Ports and Adapters هم شناخته می‌شود.
⚪️هدف آن انعطاف‌پذیری بیشتر با جداسازی منطق کسب‌وکار از جزئیات تکنیکی است.

9️⃣معماری Monolithic (یکپارچه):
⚪️اپلیکیشن به صورت یک واحد بزرگ ساخته می‌شود.
⚪️مناسب برای پروژه‌های کوچک یا زمانی که نیاز به پیچیدگی کم و استقرار ساده است.

0️⃣1️⃣معماری Modular (ماژولار):
⚪️پروژه به ماژول‌های مستقل تقسیم می‌شود که هرکدام مسئولیت مشخصی دارند.
⚪️برای کدهای با قابلیت استفاده مجدد (reusable code) مناسب است و 🤟 nodejs با فریم ورک های مثل 👩‍💻 nestjs و angular 🏤 استفاده میشه بیشتر.

1️⃣1️⃣معماری CQRS (Command Query Responsibility Segregation):
⚪️وظایف دریافت داده‌ها (Query) و دستکاری داده‌ها (Command) را جدا می‌کند.
⚪️معمولاً در پروژه‌هایی با حجم بالای داده یا نیاز به پردازش پیچیده استفاده می‌شود.

2️⃣1️⃣معماری SOA (Service-Oriented Architecture):
⚪️مشابه میکروسرویس‌ها است، اما سرویس‌ها کمتر مستقل هستند و ارتباطات بیشتری دارند.
⚪️مناسب برای پروژه‌هایی با نیاز به سرویس‌های اشتراکی.

3️⃣1️⃣معماری Multi-Tenant (چند مستأجر):
⚪️برای سیستم‌هایی که به طور همزمان توسط چند کاربر یا شرکت استفاده می‌شوند (مانند SaaS) طراحی شده است.
⚪️مناسب برای پروژه‌های SaaS (نرم‌افزار به‌عنوان سرویس).

4️⃣1️⃣معماری Pipeline (خط لوله):
⚪️داده‌ها به صورت مرحله‌ای پردازش می‌شوند.
⚪️معمولاً در سیستم‌های پردازش داده‌های بزرگ (Big Data) استفاده می‌شود.

♨️~>لپ مطلب:
⚪️هر معماری مزایا و معایب خاص خود را دارد. انتخاب معماری مناسب به نیازهای پروژه، مقیاس آن، و تیم توسعه بستگی دارد. 👍

📣~> اگه موردی بود حتما تو کامنت ها باهام درجریان بزار 👇

#️⃣ #کاربردی #مقاله #معماری_نرم_افزار #nodejs

🔤 @Code_Unique
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍2
🔶 براساس گزارش آسوشیتدپرس نیوز, به گفته مقامات کره جنوبی ، جعبه های سیاه در سقوط هواپیمای کره جنوبی نتوانستند 4 دقیقه پایانی را ثبت کنند و هیچ داده ای در جعبه سیاه هواپیمای ججو ایر کره جنوبی وجود ندارد.

#خبر

@TheRaymondDev
🤨6
💎 آشنایی با ORM‌ها، چی هستد و به چه کاری میان 💎

کلمه ORM و یا همون Object-Relational Mapping ابزاریه که به شما این امکان رو میده تا با استفاده از زبان های برنامه‌نویسی شی‌گرا، به راحتی با دیتابیس کار بکنید.

یعنی دیگه نیازی نیست خودتون به صورت دستی به نوشتن کوئری‌های پیچیده با sql خام بپردازید و میتونید تمرکز بیشتری رو روی منطق برنامه‌نویسی داشته باشید 💥


مزایای ORM‌ها

کاهش کد نویسی
با استفاده از ORM، نیاز به نوشتن کد SQL کاهش پیدا میکنه و عملیات دیتابیس به صورت خودکار انجام می‌شه

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

قابلیت‌های جابجایی
با ORM میتونید به سادگی از یک دیتابیس به یک دیتابیس دیگه منتقل شد.

مدیریت خودکار ریلیشن‌ها
با ORM ها مدیریت روابط ( ریلیشن‌ها ) بین جداول مختلف خیلی ساده تر میشه


معایب ORM‌ها

➊ عملکرد کمتر
برای برخی از عملیات‌های پیچیده مثل گذارش گیری ها ممکنه کارایی کمتری نسبت به نوشتن کد SQL خالص داشته باشن.

➋ پیشرفته بودن برای مبتدیان
درک کامل عملکرد ORM و چگونگی کارکرد اون می‌تونه برای برخی از دولوپر‌های تازه‌کار سخت تر باشه.

➌ محدودیت‌های عملکردی
برای سناریوهایی با نیازهای خاص و پیچیده، ممکنه ORM همه نیازهای مارو برآورده نکنه.


💯 بهترین ORM ها برای Node.js

1. Sequelize
یک ORM قدرتمند برای Node.js و دیتابیس های SQL با پشتیبانی از تعریف مدل، روابط پیچیده، و Migration.

2. TypeORM
به شخصه typeorm رو‌ برای NestJS توصیه میکنم چون فوق‌العاده مناسب برای TypeScript هستش که از database های SQL و NoSQL پشتیبانی میکنه.
3. Mongoose
این یکی برای MongoDB به‌کار می‌ره و درواقع ODM هستش که با Schema‌ها، Middleware و قابلیت Validation، مدیریت دیتای NoSQL رو براتون اسون تر میکنه.
4. Prisma
یک ORM مدرن و TypeScript-friendly برای دیتابیس های SQL با تمرکز بر سرعت، Type-Safty کوئری‌ها.


#️⃣ #lazyloading #javanoscript

🫶 𝗖𝗛𝗔𝗡𝗡𝗘𝗟  |  𝗚𝗥𝗢𝗨𝗣
👍3
Forwarded from 🎄 یک برنامه نویس تنبل (The Lazy 🌱 Raymond)
🔶 چگونه دیتا براساس مقام در لاراول نمایش دهیم؟

فرض کنید می خواهید دیتا براساس مقام در یک صفحه نمایش دهید و در حالت عادی دو دیتای کلی در یک صفحه نشون میده هم در مدیر و کاربر عادی.

کد زیر:

$tasks = Task::paginate(10);
$tasks = Task::where('owner_id', Auth::id())->paginate(10);


اما چگونه براساس کاربر مدیر و عادی این دو نمایش دهیم.

با استفاده تابع کوئری :
$tasks = Task::when(!Auth::user()->isAdmin(), function ($query) {
$query->where('owner_id', Auth::id());
})->paginate(10);


و اینم تابع Roles در مدل User:

public function isAdmin(): bool
{
return $this->roles()->where('noscript', 'isAdmin')->count() > 0;
}


اینجاست من دیتا براساس گیرنده owner_id یعنی کاربر عادی ثبت کردم و اگر کاربری که عضو شد به عنوان کاربر عادی دیتاهای مدیر کل سایت دیده نمی شود و فقط دیتا کاربر عادی می ببیند. بنابراین با isAdmin() براساس مقام در نمایش دیتاها محدودیت ایجاد کردم.

#لاراول

@TheRaymondDev
👍4🌚1