Ditty | دیتی – Telegram
Ditty | دیتی
3.19K subscribers
194 photos
20 videos
4 files
387 links
دیتی | دنیای ساده‌شدهٔ برنامه‌نویسی وب
https://ditty.ir
Download Telegram
🔺توی سال ۲۰۲۰ چه پروژه‌های جاوااسکریپتی بیشترین Star رو توی گیت‌هاب گرفتن؟

- سال ۲۰۲۰، Deno تونست توی جایگاه اول قرار بگیره. جایگاهی که ۵ سال پیاپی برای Vue.js بود

- منبع:
https://risingstars.js.org/2020

#javanoscript
Ditty | دیتی
🔺۴۰ نکته و توصیه برای برنامه‌نویس‌های تازه‌کار - قسمت دوم ditty.ir/249 - شما هم اگه تجربه‌هایی دارید، توی قسمت نظرات به اشتراک بذارین تا توی قسمت‌های بعدی منتشر بشن 😉 @ditty_ir
🔺۴۰ تجربه برای توسعه‌دهنده‌های تازه‌کار - قسمت سوم
ditty.ir/254

- توی این قسمت سعی کردم بعضی از تجربیات بقیه دوستان رو هم اضافه کنم. شما هم می‌تونین تجربیاتتون رو بفرستین تا توی قسمت آخر منتشر بشه 😉
@ditty_ir
🔺کدنویسی کمتر و تمیزتر با View Composer های #لاراول

- توی هر برنامه‌ای View هایی داریم که همه جا استفاده میشن. مثلاً هدر و فوتر که ما اونها رو توی هر صفحه‌ای داریم و معمولاً اطلاعاتی رو برای نمایش دادن به اونها پاس می‌دیم

- در حالت عادی اگه این ویوها نیاز به اطلاعات داشته باشن، باید توی هر return view که داریم این اطلاعات رو پاس بدیم که کدنویسی اضافی به حساب میاد

- اما با ویژگی View Composer ها می‌تونیم فقط یک بار این کدنویسی رو انجام بدیم و بگیم هر وقت که یک View خاص در حال رندر شدن هست، این اطلاعات رو پاس بده! 💯

- برای آشنایی بیشتر با این ویژگی پست زیر رو بخونید:
https://ditty.ir/283

#laravel
🔺سایت زدین برای مشتری، ولی پولش رو نمیده؟ پلاگین زیر رو به سایت اضافه کنین:
https://github.com/kleampa/not-paid

یک ددلاین تعریف می‌کنید مثلاً ۱۰۰ روز. بعد به ازای هر روز یک واحد از opacity سایت کم میشه و نهایتاً بعد از ۱۰۰ روز opacity به صفر میرسه و سایت کلاً محو میشه 😁
@ditty_ir
🔺یه قابلیت #جالب ولی کمتر شناخته‌شده #جاوااسکریپت، پراکسی هست

- با پراکسی می‌تونیم کنترل بیشتری روی آبجکت‌ها داشته باشیم و کارهای جالبی انجام بدیم. مثلاً آرایه‌هایی با شماره ایندکس منفی داشته باشیم! 👌

- تازه‌ترین پست دیتی رو از اینجا بخونید:
ditty.ir/292

#javanoscript 💯
Ditty | دیتی
🔺آزمون جاوااسکریپت - شماره ۸ - خروجی رو حدس بزنین 👏 - برای مشاهده جزییات جواب، توضیحات لینک زیر رو ببینید: ditty.ir/260 #javanoscript #quiz
🔺جاوااسکریپتی‌ها، چرا خروجی این کد برابر با 0 هست؟

🔹آزمون جاوااسکریپت - شماره ۹

- برای مشاهده جواب اختصاصی این لینک رو ببینید:
ditty.ir/299

#javanoscript #quiz
🔺ویژگی Enum به 8.1 PHP اضافه خواهد شد
#php
🔺+30 فونت #جذاب، مخصوص برنامه‌نویسی 👌

- فونت‌ها رو دانلود و نصب کنین، اسمش رو توی ادیتور یا IDE اضافه کنین
https://devfonts.gafi.dev

#links
👍1
🔹یه ویژگی به #لاراول اضافه شد برای اینکه بشه تشخیص داد آیا یک کالکشن شامل فقط یک مقدار هست یا خیر! کاری که قبلاً به راحتی با متد count انجام میشد.

- نظر شما درباره این نوع ویژگی‌ها چیه؟

#laravel
🔺به ورژن ۸.۳۰ #لاراول یه ویژگی خوب اضافه شده که متد stopOnFirstFailure هست که توی اعتبارسنجی به کار میره

- این متد باعث میشه که اعتبارسنجی با مواجه‌شدن با اولین خطا متوقف بشه که در نتیجه ورودی‌های بعدی پردازش نمی‌شن

- قبلاً همه ورودی‌ها بدون توجه به اینکه ورودی‌های قبلی ناقص هستن، بررسی می‌شدن

- البته مشخص نیست چطوری میشه اون رو توی Form Request ها استفاده کرد

#laravel
🔺جالبه که تصور می‌کنیم شرکت‌های بزرگ بهترین و با کیفیت‌ترین کدها رو دارن. خوبه که بدونیم توی دل اکثر شرکت‌های بزرگ در حالت عادی چیزی بالاتر از CRUD اتفاق نمی‌افته. ایده‌آل گرایی پایانی نداره و افراط توی کدنویسی تمیز و استفاده وسواس‌گونه از الگوها و معماری‌ها فقط کار رو پیچیده‌تر می‌کنه.

- این‌ها حرف‌های جالبِ دو تا از توسعه‌دهنده‌های با سابقه Stackoverflow هست:

🔹پیروی کردن از Best Practice ها خوبه ولی اجباری نیست

🔹گاهی وقت‌ها مجبوریم کیفیت رو فدای سرعت و عملکرد کنیم

🔹ما برای هر ویژگی جدیدی تست نمی‌نویسیم

🔹ما از متدهای استاتیک بصورت گلوبال استفاده می‌کنیم که این موضوع تست کردن برنامه رو سخت می‌کنه

🔹از تست‌های خودکار (Automated Tests) زیاد استفاده نمی‌کنیم. چون ساختار کدهای ما از استانداردهای Decoupling تبعیت نمی‌کنه

🔹از متدهای استاتیک بجای Polymorphism و Dependency Injection استفاده می‌کنیم. شاید تست کردن رو سخت کنه اما باعث بهبود سرعت و عملکرد میشه

🔹این موارد سرعت برنامه رو بالا می‌برن، هرچند باعث سخت شدن نگهداری و تست کد میشن

🔹بعضی از کوئری‌های SQL سنگین هستن و برای عملکرد بهتر، بطور فراوان از کش و Redis استفاده می‌کنیم

https://stackoverflow.blog/2021/03/03/best-practices-can-slow-your-application-down/
👍1
🔺محبوب‌ترین زبان‌های برنامه‌نویسی در سه ماه اول ۲۰۲۱:

1. JavaScript
2. Python
3. Java
4. PHP
5. C#
6. C++
7. CSS
8. TypeScript
9. Ruby
10. C
11. Swift
12. R
13. Objective-C
14. Shell
15. Scala
16. Go
17. PowerShell
18. Kotlin
19. Rust
20. Perl

- این آمار براساس فعالیت توسعه‌دهنده‌ها توی گیت‌هاب منتشر شده - منبع
👍1
🔺سال جدید مبارک دوست خوبم. امیدوارم سالی پر از لحظات و خاطرات قشنگ و جذاب باشه برات. ممنونم که همراه دیتی بودید و هستید 😉

happy = new Year(1400); // 🎉

@ditty_ir
🔺همه چیز از آبجکت Set جاوااسکریپت

- این ویژگی از ES6 به جاوااسکریپت اضافه شده و با اون می‌تونیم مجموعه‌ای داشته باشیم که هیچ مقدار تکراری توی اون وجود نداره

- پست زیر رو بخونید تا با ویژگی‌های آبجکت Set و #ترفند‌های اون آشنا بشید:
ditty.ir/303

#javanoscript
🔺الگوی طراحی Factory Method به زبان #ساده

- این یکی از پرطرفدارترین الگوهاست و با اون می‌تونیم کدهای تمیزتر، خواناتر و با قابلیت توسعه بالاتری داشته باشیم 👌

- این پست رو بخونید تا بهتر با این الگو آشنا بشید:
ditty.ir/302

#oop
🔺الگوی طراحی Abstract Factory به زبان #ساده

- اگه کدهایی دارین که پر از if/else و new هست، شاید این الگو برای شما باشه

- این الگو با مخفی کردن قسمت‌های ساختن اشیا از دید کاربر، کمک می‌کنه تا کدهای تمیزتر و قابل توسعه‌تری داشته باشیم 👌

- برای آشنایی با این الگو پست زیر رو بخونید:
ditty.ir/304

#oop
🔺الگوی طراحی Builder به زبان #ساده

- اگه آبجکت‌هایی داریم که مراحل ساخت پیچیده‌ای دارن، از این الگو استفاده می‌کنیم

- یکی از معروف‌ترین پیاده‌سازی‌های این الگو، Query Builder ها هست که توی بیشتر زبان‌ها و فریم‌ورک‌ها وجود داره و برای ساختن دستورات SQL استفاده میشه

- توی این پست با این الگو آشنا می‌شیم و یاد می‌گیریم که چطوری یک Query Builder ساده بسازیم:
ditty.ir/305

#oop
👍1
🔺توی #لاراول چطوری آدرس‌هایی با امنیت بالاتر داشته باشیم؟

- فرض کنیم برای لغو اشتراک ایمیل کاربر شماره ۹۰ آدرسی داریم به صورت زیر:
example.com/unsubscribe/90

- این لینک به صورت عمومی در دسترس هست و این کاربر می‌تونه با عوض کردن شناسه ۹۰ با ۸۹، اشتراک کاربر شما ۸۹ رو هم لغو کنه!

- با Signed URLs لاراول می‌تونیم بدون احتیاج به احراز هویت جلوی این کار رو بگیریم 👌

ـ Signed URLs لاراول به زبان ساده:
https://ditty.ir/306

#laravel 💯
🔺اعتبارسنجی تاریخ‌ها در #لاراول

- اگه توی برنامه تاریخ‌هایی داریم و می‌خوایم اونها رو اعتبارسنجی کنیم، فریم‌ورک لاراول امکانات #جالبی رو در اختیار ما گذاشته تا راحت‌تر از همیشه این کار رو انجام بدیم 👌

- توی این پست با چند تا از این قوانین اعتبارسنجی آشنا می‌شیم:
ditty.ir/127

#laravel
🔺لورم پیکسوم چیه؟

- اگه برای وبسایتتون نیاز به عکس‌های آزمایشی، با ابعاد و طرح‌های متنوع دارین، این وبسایت رو ببینین:
https://picsum.photos

#links