مهاجرت تدریجی با Strangler Fig
این پست درباره برای مهاجرت از سیستمهای Legacy به سیستم جدیده. Strangler Fig pattern کمک میکنه بخش به بخش سیستم رو جایگزین کنیم و همزمان سیستم قدیمی هم کار کنه.
@techstuff100
این پست درباره برای مهاجرت از سیستمهای Legacy به سیستم جدیده. Strangler Fig pattern کمک میکنه بخش به بخش سیستم رو جایگزین کنیم و همزمان سیستم قدیمی هم کار کنه.
@techstuff100
❤9👍4🔥1
توی فرایند توسعه نرمافزار، به ابزارهایی نیاز داریم که باهاش بتونیم بر اساس دیتا تصمیمگیری کنیم. مثلا ببینیم کدوم رنگ دکمه بیشتر کلیک میخوره، کدوم layout فروش بیشتری داره، یا کدوم نسخه از اپلیکیشن engagement بهتری ایجاد میکنه. Statsig یکی از پلتفرمهایی است که این فرایند رو خیلی آسون کرده. علاوه بر A/B Testing، قابلیتهای دیگهای مثل Analytics، Feature Gates، Session Replays و خیلی چیزهای دیگه بهمون میده که سرعت توسعه رو بالا میبره.
توی این ویدیو بطور کامل این موارد به همراه قابلیتهای دیگه Statsig مثل Dynamic Configs، Layers و Holdouts رو بررسی میکنم.
ویدئوی یوتوب:
https://www.youtube.com/watch?v=kVd4OP6hgAw&list=PL1bBcWODwsLOgA1PLZ8tNca7VMFNPPdm-
@techstuff100
توی این ویدیو بطور کامل این موارد به همراه قابلیتهای دیگه Statsig مثل Dynamic Configs، Layers و Holdouts رو بررسی میکنم.
ویدئوی یوتوب:
https://www.youtube.com/watch?v=kVd4OP6hgAw&list=PL1bBcWODwsLOgA1PLZ8tNca7VMFNPPdm-
@techstuff100
❤9🔥3
Tech Stuff
Building Micro-Frontends Chapter 9.pdf
Building Micro-Frontends Chapter 10.pdf
2.5 MB
کتاب Building Micro-Frontends فصل ۱۰ (فصل آخر): معرفی میکروفرانتاند در سازمان شما
مطالبی که توی فصل دهم صحبت شده:
- چرا باید از میکروفرانتاند استفاده کنیم؟
- ارتباط بین سازمانها و معماری نرمافزار
- پیادهسازی حاکمیت (Governance) برای روانتر شدن ارتباطات
- تکنیکهایی برای بهتر کردن جریان ارتباطات
- سازمان غیرمتمرکز (Decentralized)
پ.ن: خلاصه فصلهای قبل رو با این هشتگ میتونین پیدا کنین:
#Building_Micro_Frontends
@techstuff100
مطالبی که توی فصل دهم صحبت شده:
- چرا باید از میکروفرانتاند استفاده کنیم؟
- ارتباط بین سازمانها و معماری نرمافزار
- پیادهسازی حاکمیت (Governance) برای روانتر شدن ارتباطات
- تکنیکهایی برای بهتر کردن جریان ارتباطات
- سازمان غیرمتمرکز (Decentralized)
پ.ن: خلاصه فصلهای قبل رو با این هشتگ میتونین پیدا کنین:
#Building_Micro_Frontends
@techstuff100
❤9🤔2
Tech Stuff
Building Micro-Frontends Chapter 10.pdf
Building Micro-Frontends.pdf
25.2 MB
خلاصه همه فصلهای کتاب رو توی این فایل گذاشتم. اگه خواستین نسخه اصلیشو بخونین، تا چند وقت دیگه ویرایش دومش میاد که خیلی کاملتر از این نسخهست.
#Building_Micro_Frontends
@techstuff100
#Building_Micro_Frontends
@techstuff100
❤9👍2🤷♂1🤔1
سوال مصاحبه React: پیادهسازی useEffect از صفر
توی این چالش از شما خواسته میشه useEffect رو از صفر پیادهسازی کنید. تمرکز اصلی روی مدیریت dependencyهاست؛ اینکه بر اساس آرایه dependencyها چه زمانی افکت اجرا بشه و چه زمانی تابع cleanup فراخوانی بشه. مصاحبهکننده برای روشنتر شدن سوال، به چندتا نکته اشاره کرده: پیادهسازی باید رایجترین موارد رو پوشش بده، زمان مصاحبه یک ساعته، تاکید روی dependency handling هست (نه روی جزئیات زمانبندی اجرای افکت) و ترجیح داده شده که کد با TypeScript نوشته بشه.
بهجای پریدن مستقیم به کدنویسی، توصیه میشه اول مسئله رو تحلیل کنید: روی وایتبورد یا با یک دیاگرام جریان وابستگیها و lifecycle افکتها رو رسم کنید، edge caseها (مثل آرایه dependency خالی یا undefined، نیاز به cleanup و ...) رو مشخص کنید و بعد وارد پیادهسازی بشید.
مقاله:
https://freedium.cfd/https://levelup.gitconnected.com/interview-challenge-could-you-write-useeffect-from-scratch-e2fe0f12b7e7
@techstuff100
توی این چالش از شما خواسته میشه useEffect رو از صفر پیادهسازی کنید. تمرکز اصلی روی مدیریت dependencyهاست؛ اینکه بر اساس آرایه dependencyها چه زمانی افکت اجرا بشه و چه زمانی تابع cleanup فراخوانی بشه. مصاحبهکننده برای روشنتر شدن سوال، به چندتا نکته اشاره کرده: پیادهسازی باید رایجترین موارد رو پوشش بده، زمان مصاحبه یک ساعته، تاکید روی dependency handling هست (نه روی جزئیات زمانبندی اجرای افکت) و ترجیح داده شده که کد با TypeScript نوشته بشه.
بهجای پریدن مستقیم به کدنویسی، توصیه میشه اول مسئله رو تحلیل کنید: روی وایتبورد یا با یک دیاگرام جریان وابستگیها و lifecycle افکتها رو رسم کنید، edge caseها (مثل آرایه dependency خالی یا undefined، نیاز به cleanup و ...) رو مشخص کنید و بعد وارد پیادهسازی بشید.
مقاله:
https://freedium.cfd/https://levelup.gitconnected.com/interview-challenge-could-you-write-useeffect-from-scratch-e2fe0f12b7e7
@techstuff100
❤8🤔2
استفاده از act API در تستهای React
توی React، تابع act برای شبیهسازی رفتار واقعی مرورگر توی تست استفاده میشه. جزئیاتش رو توی این پست بخونید.
@techstuff100
توی React، تابع act برای شبیهسازی رفتار واقعی مرورگر توی تست استفاده میشه. جزئیاتش رو توی این پست بخونید.
@techstuff100
❤12👏1
ریفکتور پروژههای چندزبانه با i18n-check
پروژههای چندزبانه بعد از مدتی شلوغ و نامرتب میشن. کلیدهای استفاده نشده، ترجمههای گمشده و کلیدهای اضافی باعث میشن نگهداری پروژه سختتر بشه. توی این پست راهحل کاملی برای ریفکتور کردنشون ارائه دادم.
اسکریپتهایی که استفاده کردم: لینک
@techstuff100
پروژههای چندزبانه بعد از مدتی شلوغ و نامرتب میشن. کلیدهای استفاده نشده، ترجمههای گمشده و کلیدهای اضافی باعث میشن نگهداری پروژه سختتر بشه. توی این پست راهحل کاملی برای ریفکتور کردنشون ارائه دادم.
اسکریپتهایی که استفاده کردم: لینک
@techstuff100
❤9👍6
بهینهسازی performance در Twitter Lite
توی این مقاله از چالشهای performance توی Twitter Lite گفته میشه؛ مثل کند بودن لود اول، اجرای کند کامپوننتها، تصاویر حجیم، re-renderهای غیرضروری و حتی مشکلات Service Worker. تیم توییتر با کارهایی مثل code splitting، بهینهسازی تصاویر، کنترل re-render و تعویق رجیستر Service Worker، قدمبهقدم این bottleneckها رو رفع کردن و نتیجهش یه PWA سریع و scalable روی React شده.
مقاله با اینکه برای چند سال پیشه ولی نکات خیلی خوبی توش هست. لینک مقاله.
@techstuff100
توی این مقاله از چالشهای performance توی Twitter Lite گفته میشه؛ مثل کند بودن لود اول، اجرای کند کامپوننتها، تصاویر حجیم، re-renderهای غیرضروری و حتی مشکلات Service Worker. تیم توییتر با کارهایی مثل code splitting، بهینهسازی تصاویر، کنترل re-render و تعویق رجیستر Service Worker، قدمبهقدم این bottleneckها رو رفع کردن و نتیجهش یه PWA سریع و scalable روی React شده.
مقاله با اینکه برای چند سال پیشه ولی نکات خیلی خوبی توش هست. لینک مقاله.
@techstuff100
❤9👍3
آشنایی با Dynamic Remotes در پروژههای میکروفرانتاند
توی این ویدیو Dynamic Remotes در Module Federation رو بررسی کردم که چطور میشه ریموتها رو در زمان اجرا (runtime) لود کرد، نه موقع build. میبینیم که Host چطور بدون تعریف remotes در کانفیگ، میتونه هر ریموتی رو فقط موقع نیاز لود کنه.
ویدئوی یوتوب:
https://www.youtube.com/watch?v=W1cvFRd1nRk&list=PL1bBcWODwsLMYe8Gor4PDwT5U5CK_S36x
@techstuff100
توی این ویدیو Dynamic Remotes در Module Federation رو بررسی کردم که چطور میشه ریموتها رو در زمان اجرا (runtime) لود کرد، نه موقع build. میبینیم که Host چطور بدون تعریف remotes در کانفیگ، میتونه هر ریموتی رو فقط موقع نیاز لود کنه.
ویدئوی یوتوب:
https://www.youtube.com/watch?v=W1cvFRd1nRk&list=PL1bBcWODwsLMYe8Gor4PDwT5U5CK_S36x
@techstuff100
❤10👍3👏1
دیروز بعد ۲ ماه، آموزشی سربازیم توی نیروی دریایی ارتش تموم شد. توی این ۲ ماه مثل قبل نتونستم فعالیت کنم و یسری از کارهام عقب افتادن یا با تاخیر تونستم انجامشون بدم.
توی مدتی که پادگان بودم، به امریه دانشبنیان و پروژه جایگزین خدمتم فکر میکردم که هر کدوم به یه دلیلی رد شدن. به وقت و انرژی که صرفشون کردم و تهش هم به نتیجه نرسیدن. با این حال از هر کدومشون چیزایی یاد گرفتم، تجربه شدن و قطعا بیفایده نبودن و نکات مثبت خودشون رو داشتن.
ماه اول آموزشی رو توی سلف پادگان بودم. با اینکه سختیها و فشار کاری خودش رو داشت، برام تجربه جدیدی بود: شستن روزانه چندصد تا یغلوی، تمیز کردن میزها، جارو و طی زدن سلف، تحویل غذا از آشپزخونه، گرفتن نون از خبازخونه، کفپارتی و ... .
توی آموزشی با آدمهای خفنی آشنا شدم؛ هر کسی بیرون پادگان توی حوزه خودش کار میکرد و برای خودش کسی بود. چیزی که شاید وقتی لباس سربازی میپوشیم کمتر بهش توجه میشه اینه که هر کدوم از این سربازها بیرون از پادگان شخصیت و هویت خودشون رو دارن.
توی زمان بیکاریم توی پادگان تونستم وقت بیشتری رو به مطالعه اختصاص بدم و کتاب Leaders Eat Last و همینطور نصف کتاب A Philosophy of Software Design رو بخونم (که کمکم پستشون رو میذارم).
از این به بعد اگه شرایط درست پیش بره، سعی میکنم مثل قبل خدمت فعالیتم رو ادامه بدم و مرتب پست بذارم.
#سربازی
توی مدتی که پادگان بودم، به امریه دانشبنیان و پروژه جایگزین خدمتم فکر میکردم که هر کدوم به یه دلیلی رد شدن. به وقت و انرژی که صرفشون کردم و تهش هم به نتیجه نرسیدن. با این حال از هر کدومشون چیزایی یاد گرفتم، تجربه شدن و قطعا بیفایده نبودن و نکات مثبت خودشون رو داشتن.
ماه اول آموزشی رو توی سلف پادگان بودم. با اینکه سختیها و فشار کاری خودش رو داشت، برام تجربه جدیدی بود: شستن روزانه چندصد تا یغلوی، تمیز کردن میزها، جارو و طی زدن سلف، تحویل غذا از آشپزخونه، گرفتن نون از خبازخونه، کفپارتی و ... .
توی آموزشی با آدمهای خفنی آشنا شدم؛ هر کسی بیرون پادگان توی حوزه خودش کار میکرد و برای خودش کسی بود. چیزی که شاید وقتی لباس سربازی میپوشیم کمتر بهش توجه میشه اینه که هر کدوم از این سربازها بیرون از پادگان شخصیت و هویت خودشون رو دارن.
توی زمان بیکاریم توی پادگان تونستم وقت بیشتری رو به مطالعه اختصاص بدم و کتاب Leaders Eat Last و همینطور نصف کتاب A Philosophy of Software Design رو بخونم (که کمکم پستشون رو میذارم).
از این به بعد اگه شرایط درست پیش بره، سعی میکنم مثل قبل خدمت فعالیتم رو ادامه بدم و مرتب پست بذارم.
#سربازی
❤54👏8👍1🔥1