Microfrontend.ir
الذهاب إلى القناة على Telegram
کانال تلگرامی وبلاگ میکروفرانتاند. مباحثی پیرامون هوش مصنوعی و یادگیری ماشین، معماری نرم افزار با تمرکز بر DDD ، میکروسرویس و میکروفرانتاند www.microfrontend.ir @hemanhp2
إظهار المزيدلم يتم تحديد البلدالفئة غير محددة
353
المشتركون
+224 ساعات
+27 أيام
+2830 أيام
جاري تحميل البيانات...
سحابة العلامات
لا توجد بيانات
هل تواجه مشاكل؟ يرجى تحديث الصفحة أو الاتصال بمدير الدعم الخاص بنا.
الإشارات الواردة والصادرة
---
---
---
---
---
---
جذب المشتركين
ديسمبر '24
ديسمبر '24
+52
في 5 قنوات
نوفمبر '24
+27
في 1 قنوات
Get PRO
أكتوبر '24
+17
في 0 قنوات
Get PRO
سبتمبر '24
+14
في 0 قنوات
Get PRO
أغسطس '24
+339
في 2 قنوات
Get PRO
يوليو '240
في 1 قنوات
Get PRO
يونيو '240
في 2 قنوات
Get PRO
مايو '240
في 2 قنوات
Get PRO
أبريل '240
في 2 قنوات
Get PRO
مارس '240
في 3 قنوات
Get PRO
فبراير '24
+21
في 2 قنوات
Get PRO
يناير '24
+133
في 3 قنوات
Get PRO
ديسمبر '23
+446
في 2 قنوات
Get PRO
نوفمبر '230
في 2 قنوات
Get PRO
أكتوبر '230
في 2 قنوات
Get PRO
سبتمبر '230
في 0 قنوات
Get PRO
أغسطس '230
في 0 قنوات
Get PRO
يوليو '230
في 0 قنوات
Get PRO
يونيو '230
في 0 قنوات
Get PRO
مايو '230
في 0 قنوات
Get PRO
أبريل '230
في 0 قنوات
Get PRO
مارس '230
في 0 قنوات
Get PRO
فبراير '230
في 0 قنوات
Get PRO
يناير '230
في 0 قنوات
Get PRO
ديسمبر '22
+3
في 0 قنوات
Get PRO
نوفمبر '22
+4
في 0 قنوات
Get PRO
أكتوبر '22
+7
في 0 قنوات
Get PRO
سبتمبر '22
+12
في 0 قنوات
Get PRO
أغسطس '22
+33
في 0 قنوات
Get PRO
يوليو '22
+49
في 0 قنوات
Get PRO
يونيو '22
+9
في 0 قنوات
Get PRO
مايو '22
+14
في 0 قنوات
Get PRO
أبريل '22
+18
في 0 قنوات
Get PRO
مارس '22
+13
في 0 قنوات
Get PRO
فبراير '22
+45
في 0 قنوات
Get PRO
يناير '22
+219
في 0 قنوات
| التاريخ | نمو المشتركين | الإشارات | القنوات | |
| 21 ديسمبر | +6 | |||
| 20 ديسمبر | 0 | |||
| 19 ديسمبر | 0 | |||
| 18 ديسمبر | +1 | |||
| 17 ديسمبر | 0 | |||
| 16 ديسمبر | 0 | |||
| 15 ديسمبر | +1 | |||
| 14 ديسمبر | +2 | |||
| 13 ديسمبر | +6 | |||
| 12 ديسمبر | +8 | |||
| 11 ديسمبر | 0 | |||
| 10 ديسمبر | +2 | |||
| 09 ديسمبر | +8 | |||
| 08 ديسمبر | +4 | |||
| 07 ديسمبر | +12 | |||
| 06 ديسمبر | 0 | |||
| 05 ديسمبر | 0 | |||
| 04 ديسمبر | 0 | |||
| 03 ديسمبر | +2 | |||
| 02 ديسمبر | 0 | |||
| 01 ديسمبر | 0 |
منشورات القناة
در ادامه نکتهها و ترفندهای جنگو و آموزش Django - پیاده سازی Rating با ٖGeneric Relation را بررسی کردیم.
فرض کنید با Django درحال توسعه نرم افزاری هستید که مدلهای مختلفی مانند محصولات، مطالب وبلاگ، نظرات و ... در آن وجود دارد و مدیر پروژه از شما میخواهد که امکان رتبه بندی یا Rating به همه آن مولفهها اضافه کنید. یک انتخاب این است که به ازای هر کدام از این مولفهها یک مدل Rate اضافه کنید که بدیهی است نگه داری همه آنها پیچیدگیهای خاص خود را دارد. بسیار ایدهال خواهد بود اگر بتوانیم یک مدل Rate داشته باشیم و در همه مدلهای دیگر از آن استفاده کنیم. به عبارت دیگر به صورت چند ریختی یا Polymorphism و یا Generic رابطه خود را پیاده کنیم. Generic Relation یکی از ویژگیهای جذابی است که Django ارایه میدهد. در این ویدیو به بررسی Content Type در Django پرداختیم و امکانات مهمی که برای چندریختی در مدلها ارایه میدهدپرداختیم.
Link: https://youtu.be/VOnRkXjlfVI
PlayList: https://youtube.com/playlist?list=PLJ9zDGwhhsBwdrfdaoOqbYev3_ocuBOfv
〰️〰️〰️〰️〰️
© @Microfrontend_ir
| 2 | یکی از دوستان کامنت بسیار مهمی تو یوتیوب نوشته بودند و دیدم خالی از لطف نیست اینجا هم پست کنم.
سوال :
Vessal Daneshvar
برای فیلد های یونیک هم میشه راهنمایی بکنید که soft delete چجوی باشه بهتره ، معمولا یه مقدار پیچیدگی ایجاد میشه موقع پیاده سازی کردن مواردی که باید یونیک باشن و حذف شده اند و مجدد میخوان ایجاد بشن
جواب:
میدونید که یونیک در واقع یک کانستراینت و ایندکس سمت دیتابیسه. یکی از ویژگی های بسیار مهم و جذابی که ارایه میده تعریف conditional constraint که مثلا تو سناریو این ویدیو میتونید بگید ایندکس یونیک صرفا رو مواردی که is_deleted فالس هست اعمال شوند. مثلا به این صورت
UniqueConstraint(fields=['user'], condition=Q(status='DRAFT'), name='unique_draft_user')
جزییات کاملتر تو داکیومنتیشن اینجاست.
https://docs.djangoproject.com/en/4.1/ref/models/constraints/#condition
پی نوشت: از منظر مدیریت ایندکس و کانستراینتها به جرات میتونم بگم جنگو یه سر و گردن از سایر ORM ها مثل لاراول بالاتره.البته دلیلش خود جنگو یا لاراول نیست. دلیلش فرهنگ حاکم بر کامیونیتشونه. تو کامیونیتی php انتخاب اول دیتابیس عموما MySQL و مشتقاتشه اما تو پایتون معمولا انتخاب اول PostgreSQL هستش و نکته اینجاست که مای اس کیو برای ایندکس تمرکزش بر ایندکس های مبتنی بر درخته و خیلی خوب این کارو میکنه. تو پستگرس علاوه بر ایندکس های مبتنی بر درخت، طیف گسترده ای از ایندکس ها | 161 |
| 3 | پیاده سازی Django Soft Delete
چندی پیش خبری منتشر شد که در توییتر حذف دادهها به درستی انجام نمیشود. واقعیت این است که در اغلب نرمافزارهای مدرن دادهها به صورت فیزیکی حذف نمیشوند و صرفا برچسپ حذف شده میگیرند. در این ویدیو با هدف آشنایی بیشتر با مدلهای abstract و proxy در جنگو و همچنین ایجاد Custom Queryset و Custom Manager و Custom Admin Action مدلی را طراحی کردیم که در صورت ارث بری از آنها دادهها با دستور حذف به صورت فیزیکی پاک نشوند و در صورت لزوم برگردانده شوند. برای توضیح بیشتر نیز به جنگو ادمین یک اکشن اضافه کردیم که دادههایی که حذف شده اند را برکردانیم
Link: https://youtu.be/I_23u4xj1Ws
PlayList: https://youtube.com/playlist?list=PLJ9zDGwhhsBwdrfdaoOqbYev3_ocuBOfv
〰️〰️〰️〰️〰️
© @microfrontend_ir | 379 |
| 4 | بهینه سازی فلاتر با InheritedModel
مهمترین مساله و معضل با InheritedWidget این است که به ازای هر تغییری تمام ویجت هایی که از آن ارث گرفتهاند بایستی مجددا build شوند. InheritedModel کلاسی است که از InheritedWidget ارث گرفته است و امکانی را ارایه میدهد که از طرق مفهوم aspect بین ویجتهای که نیاز به build دارند و ویجت هایی که نیاز ندارند فرق گذاشت و به ازای تغییر صرفا ویجت هایی build شوند که نیاز دارند.
Link: https://youtu.be/qNzzVTsKnkw
PlayList: https://youtube.com/playlist?list=PLJ9zDGwhhsBwoDOzFdlHBa6H7w8ExoeKV
〰️〰️〰️〰️〰️
© @microfrontend_ir | 143 |
| 5 | استفاده از State در Flutter InheritedWidget
در هفتمین ویدیو از سری آموزش State Management در Flutter به بررسی شیوه استفاده از State در Flutter InheritedWidget پرداختیم. یکی از اصلی ترین روشهایی که State Management در فلاتر Lift up کردن State است. به این معنی که State را به بالاترین سطح مورد نیاز خود بالا بکشیم و آن را با تمام فرزندان درخت یا یا بخشی از درخت به اشتراک بگذاریم. فلاتر این امکان را از طریق InheritedWidget به برنامه نویس ارایه میدهد. درک InheritedWidget کلید درک سایر رویکردهای State Management در اکوسیستم فلاتر است. در این ویدیو و در ادامه ویدیو قبلی سعی میکنیم یک وبجت فلاتری بسازیم که در آن یک StatefulWidget را از طریق InheritedWidget در درون درخت ویجت ها به اشتراک بگذاریم.
Link: https://youtu.be/sKvNs82QLfE
PlayList: https://youtube.com/playlist?list=PLJ9zDGwhhsBwoDOzFdlHBa6H7w8ExoeKV
〰️〰️〰️〰️〰️
© @microfrontend_ir | 187 |
| 6 | کاربرد InheritedWidget در Flutter
در ششمین ویدیو از سری آموزش State Management در Flutter به بررسی کاربرد InheritedWidget در Flutter پرداختیم. یکی از اصلی ترین روشهایی که State Management در فلاتر Lift up کردن State است. به این معنی که State را به بالاترین سطح مورد نیاز خود بالا بکشیم و آن را با تمام فرزندان درخت یا یا بخشی از درخت به اشتراک بگذاریم. فلاتر این امکان را از طریق InheritedWidget به برنامه نویس ارایه میدهد. درک InheritedWidget کلید درک سایر رویکردهای State Management در اکوسیستم فلاتر است.
Link: https://youtu.be/sfqfkTCFQ1A
PlayList: https://youtube.com/playlist?list=PLJ9zDGwhhsBwoDOzFdlHBa6H7w8ExoeKV
〰️〰️〰️〰️〰️
© @microfrontend_ir | 924 |
| 7 | Flutter Key چیست و چه کاربردی دارد؟
در پنجمین ویدیو از سری آموزش State Management در Flutter به این سوال پاسخ میدهیم که Flutter Key چیست و چه کاربردی دارد؟ برای این کار مثالی را مطرح کردیم که در آن لیستی از آیتم ها داریم و و میخواهیم ترتیب آنها را عوض کنیم. وقتی از Stateful Widget استفاده میکنیم بدون استفاده از Key ترتیب به درستی عوض نمیشود. دلیل این اتفاق را از طریق توضیح مکانیزم داخلی فلاتر بررسی کردیم و سپس انواع Key ها در شرح دادیم.
Link: https://youtu.be/Bg9OL5Zt8ZQ
PlayList: https://youtube.com/playlist?list=PLJ9zDGwhhsBwoDOzFdlHBa6H7w8ExoeKV
〰️〰️〰️〰️〰️
© @microfrontend_ir | 396 |
| 8 | استفاده از Callback در Flutter
در چهارمین ویدیو از سری آموزش مبانی State Management در Flutter رویکرد استفاده از Callback در Flutter برای انتقال دیتا از child به parent را بررسی کردیم.
Link: https://youtu.be/rrrCzcpYb_8
PlayList: https://youtube.com/playlist?list=PLJ9zDGwhhsBwoDOzFdlHBa6H7w8ExoeKV
〰️〰️〰️〰️〰️
© @microfrontend_ir | 77 |
| 9 | ۴ نکته مهم در مورد استفاده از setState در Flutter
در سومین ویدیو از سری آموزش مبانی State Management در Flutter به سراغ متد setState رفتیم. ابتدا مکانیزم رندرینگ در فلاتر را بررسی و سپس سورس کد متد setState را مطالعه و نکات مهم و کمتر گفته ای شده ای در مورد این متد را بررسی کردیم
Link: https://youtu.be/SZ8DUwVAxdM
PlayList: https://youtube.com/playlist?list=PLJ9zDGwhhsBwoDOzFdlHBa6H7w8ExoeKV
〰️〰️〰️〰️〰️
© @microfrontend_ir | 103 |
| 10 | Flutter Stateful Widget vs Stateless Widget
در دومین ویدیو از سری آموزش State Management در Flutter به این سوال پاسخ میدهیم که ویجتها در فلاتر چند نوع هستند و چه تفاوتی با هم دارند؟ برای این کار ابتدا Widget Tree در فلاتر را شرح.و بعد انواع ویجت های Stateful و Stateless را ایجاد کردیم و lifecycle ویجت را بررسی کردیم.
Link: https://youtu.be/-R4FPPJiUXk
PlayList: https://youtube.com/playlist?list=PLJ9zDGwhhsBwoDOzFdlHBa6H7w8ExoeKV
〰️〰️〰️〰️〰️
© @microfrontend_ir | 128 |
| 11 | Flutter State چیست؟
در اولین ویدیو از سری آموزش State Management در Flutter به این سوال پاسخ میدهیم که Flutter State چیست؟ و فلاتر چگونه تفکر Reactive و برنامه نویسی Declarative را ترکیب و یک پلتفرم جذاب برای طراحی واسط کاربری ارایه داده است. در ادامه ابزارهای دیگری که برای مدیریت State در فلاتر وجود دارد را مطرح کردیم.
Link: https://youtu.be/0lM6YPK6GwQ
PlayList: https://youtube.com/playlist?list=PLJ9zDGwhhsBwoDOzFdlHBa6H7w8ExoeKV
〰️〰️〰️〰️〰️
© @microfrontend_ir | 204 |
| 12 | انواع کامپوننت ها در React
در این ویدیو از پلی لیست آموزش React کامپوننت را تعریف و میگوییم React Component چیست؟ سپس انواع کامپوننت ها را در ریاکت تعریف و بررسی کردیم و در نهایت یک کامپوننت ساده ریاکت ایجاد کردیم.
Link: https://youtu.be/1Q6bvttNRMU
Playlist: https://youtube.com/playlist?list=PLJ9zDGwhhsByPAaNxIYX26M3ZpWkSzVz-
〰️〰️〰️〰️〰️
© @microfrontend_ir | 176 |
| 13 | آموزش TailwindCSS و Vite
در ادامه آموزش TailwindCSS در این ویدیو اولین گام ساخت پروژه مبتنی بر TailwindCSS را ابتدا به صورت ساده بررسی کردیم و در ادامه برای بهبود محیط و بهره وری از ابزار Vite برای ساخت پروژه استفاده کردیم
Link: https://youtu.be/aE9lckQip2Y
PlayList: https://youtube.com/playlist?list=PLJ9zDGwhhsBzNRzQmVENfCPU1umUYm1pk
〰️〰️〰️〰️〰️
© @microfrontend_ir | 130 |
| 14 | لا يوجد نص... | 151 |
| 15 | JSX چیست ؟
در سومین ویدیو پلی لیست آموزش React بررسی کردیم که JSX چیست؟ برای این منظور ابتدا به بررسی مفهوم و ساختار JSX پرداختیم و بعد مثال جلسه قبلی را با استفاده از JSX باز نویسی کردیم.
همچنین برخی از اصول و قواعد JSX را مطرح و دلیل استفاده از Fragment را شرح دادیم.
Link: https://youtu.be/jMrxVapepsE
Playlist: https://youtube.com/playlist?list=PLJ9zDGwhhsByPAaNxIYX26M3ZpWkSzVz-
〰️〰️〰️〰️〰️
© @microfrontend_ir | 159 |
| 16 | آموزش React - اجرای اولین برنامه بدون JSX
در دومین ویدیو پلی لیست آموزش React - اجرای اولین برنامه بدون JSX را بررسی میکنیم. برای این منظور ابتدا یک تکه کد را با استفاده از HTML میسازیم و سپس معادل آن را در React و با استفاده از element ها پیاده میکنیم
Link: https://youtu.be/kUdKfetGLrg
Playlist: https://youtube.com/playlist?list=PLJ9zDGwhhsByPAaNxIYX26M3ZpWkSzVz-
〰️〰️〰️〰️〰️
© @microfrontend_ir | 100 |
| 17 | مقایسه Angular و React و Vue - کدام بهتر است؟
در این ویدیو به جمع بندی این پلی لیست میپردازیم و مختصر مقایسه ای بین Angular و React و Vue انجام میدیم و میگوییم کدام بهتر است؟ ابتدا برخی از تجربیات شخصی خودم رو در استفاده ازاین ابزارها بررسی کردم. سپس نتیجه پرفورمنس هرکدام از این ابزارها در js benchmark بررسی کردیم. سپس سایز باندل خروجی را مقایسه و در مرورگر حافظه استفاده شده و تست Lighthouse را اجرا و مقایسه کردیم.
Link: https://youtu.be/hBasrGvBVPk
Source Code : https://github.com/hemanhp/django-ng-react-vue
Playlist:https://youtube.com/playlist?list=PLJ9zDGwhhsBwrYhJ7UiXFjPA6b1GNXp0-
〰️〰️〰️〰️〰️
© @microfrontend_ir | 153 |
| 18 | چگونه Vue.js را یاد بگیریم؟
در این ویدیو شیوه فکر کردن و حل مساله در Vue.js و اساسا چگونه Vue.js را یاد بگیریم را بررسی میکنیم. برای این کار مثالی را که در این پلی لیست مطرح کردیم را با Vue پیاده سازی میکنیم. سپس در ویدیوهای بعدی با Angular و React هم پیاده میکنیم و در نهایت آنهارا با هم مقایسه میکنیم.
Link: https://youtu.be/J0mIsMnVYdo
PlayList: https://youtube.com/playlist?list=PLJ9zDGwhhsBwrYhJ7UiXFjPA6b1GNXp0-
〰️〰️〰️〰️〰️
© @microfrontend_ir | 152 |
| 19 | Tailwind CSS چیست؟
در این ویدیو به این سوال پاسخ میدهیم که Tailwind CSS چیست؟ ابتدا ابزارهای مرتبط با CSS را در سه گروه preprocessors مانند Less و Sass و فریمورک های مبتنی کامپوننت مانند bootstrap و Utility first ها مانند Tailwind دسته بندی کردیم و گفتیم هرکدام چگونه کار میکنند و مقایسه کردیم. سپس دلایل استفاده ابزارهایی Tailwind CSS را مخصوصا در پروژه های جاوا اسکریپتی مطرح کردیم
Link: https://youtu.be/QDOVogmZjws
PlayList: https://youtube.com/playlist?list=PLJ9zDGwhhsBzNRzQmVENfCPU1umUYm1pk | 101 |
| 20 | آموزش Tailwind CSS - PostCSS چیست؟
در اولین ویدیو از پلی لیست آموزش Tailwind CSS به معرفی ابزار بسیار مهم PostCSS پرداختیم و گفتیم که PostCSS چیست و چگونه کار میکند.ابتدا گفتیم که PostCSS چگونه یک API جاوا اسکریپتی برای ترانسفورم کدهای CSS به ما ارایه می دهد و چگونه با بهره گیری از پلاگین ها میتوانیم منطق خود را بر روی آنها اجرا کنیم.
Link: https://youtu.be/mcVz-qwPvvA
〰️〰️〰️〰️〰️
© @microfrontend_ir | 140 |
