اونقدر وضع خراب و غیر قابل پیشبینی هست که تمام سیستمهای آنلاین رو مجبوریم برای توسعه به صورت آفلاین بومی سازی کنیم تا در مواقع قطعی کامل اینترنت بتونیم کارمون رو انجام بدیم و متوقف نشیم.
امیدوارم هرجا هستید تنتون سلامت و روحتون در آرامش باشه، با این حجم از استرس و فشار و رنج، هنوز هم احتمالا یه عده فکر میکنن ما داریم زیادی غر میزنیم و اوضاع خوبه!
بعضی ها با چک و لگد هم بیدار نمیشن! اصلا مردن! فقط روی زمین راه میرن و خبر ندارن که خیلی وقته مردن و طعمی از زندگی رو نچشیدن و احتمالا اون طعم خوش زندگی رو برا فرزندانشون هم نمیخوان.
ولی خیلی از ماها چشیدیم و میدونیم که طعم خوش زندگی چیه و دوست داشتیم برای فرزندانمون هم اون حس وجود داشته باشه. امیدوارم خداوند مارو با مردگان و کسانی که چشمون کور و گوششون کر شده محشور نکنه.
شرمنده دیگه واقعا برای اینکه بتونم دوباره پست بذارم باید این حرفارو میزدم.
#اعصابمون_خورده
امیدوارم هرجا هستید تنتون سلامت و روحتون در آرامش باشه، با این حجم از استرس و فشار و رنج، هنوز هم احتمالا یه عده فکر میکنن ما داریم زیادی غر میزنیم و اوضاع خوبه!
بعضی ها با چک و لگد هم بیدار نمیشن! اصلا مردن! فقط روی زمین راه میرن و خبر ندارن که خیلی وقته مردن و طعمی از زندگی رو نچشیدن و احتمالا اون طعم خوش زندگی رو برا فرزندانشون هم نمیخوان.
ولی خیلی از ماها چشیدیم و میدونیم که طعم خوش زندگی چیه و دوست داشتیم برای فرزندانمون هم اون حس وجود داشته باشه. امیدوارم خداوند مارو با مردگان و کسانی که چشمون کور و گوششون کر شده محشور نکنه.
شرمنده دیگه واقعا برای اینکه بتونم دوباره پست بذارم باید این حرفارو میزدم.
#اعصابمون_خورده
❤3🤣1
Forwarded from Mahi in Tech
👀 Pipeline Pattern در CSharp، وقتی متد Handleت پر از if-else و مسئولیتهای مختلف میشه.
سناریوی واقعی:
داری یک عملیات ثبت سفارش مینویسی. باید اعتبارسنجی کنی، موجودی چک کنی، تخفیف حساب کنی، توی دیتابیس ذخیره کنی، نوتیفیکیشن بفرستی و لاگ بگیری.
اگر همه این کارها رو توی یه متد طولانی بنویسی، بعد از چند ماه دیگه هیچکس جرأت تغییرش رو نداره. تستش هم که دیگه کابوسه.
☑️ راهحل ساده: Pipeline Pattern
هر مرحله رو یه کلاس مستقل میکنیم. یک Context داریم که هم Request و هم Result رو داخلش نگه میداره و با پراپرتی HasError جریان رو کنترل میکنه. Stateهای مشترک رو هم میتونیم توی همین Context نگه داریم.
⚙️ پیادهسازی و استفادهش رو هم توی تصاویر بالا گذاشتم.
هر مرحله اطلاعات مورد نیازش رو از Context میخونه، Result رو پر یا بهروزرسانی میکنه و در صورت نیاز HasError رو true میکنه. اگر جایی HasError صحیح بشه، باقی مراحل اجرا نمیشن.
مزایای این روش:
- هر کلاس فقط یک کار مشخص انجام میده
- اضافه کردن مرحلهی جدید فقط یه کلاس جدید + یه AddStep
- تست هر مرحله بهصورت جداگانه راحتتره
- کد بیزینس اصلی تمیز میمونه
البته که این فقط یک پیادهسازی ساده بود و بهروشهای مختلفی میشه این پترن رو اجرایی کرد.
سناریوی واقعی:
داری یک عملیات ثبت سفارش مینویسی. باید اعتبارسنجی کنی، موجودی چک کنی، تخفیف حساب کنی، توی دیتابیس ذخیره کنی، نوتیفیکیشن بفرستی و لاگ بگیری.
اگر همه این کارها رو توی یه متد طولانی بنویسی، بعد از چند ماه دیگه هیچکس جرأت تغییرش رو نداره. تستش هم که دیگه کابوسه.
☑️ راهحل ساده: Pipeline Pattern
هر مرحله رو یه کلاس مستقل میکنیم. یک Context داریم که هم Request و هم Result رو داخلش نگه میداره و با پراپرتی HasError جریان رو کنترل میکنه. Stateهای مشترک رو هم میتونیم توی همین Context نگه داریم.
هر مرحله اطلاعات مورد نیازش رو از Context میخونه، Result رو پر یا بهروزرسانی میکنه و در صورت نیاز HasError رو true میکنه. اگر جایی HasError صحیح بشه، باقی مراحل اجرا نمیشن.
مزایای این روش:
- هر کلاس فقط یک کار مشخص انجام میده
- اضافه کردن مرحلهی جدید فقط یه کلاس جدید + یه AddStep
- تست هر مرحله بهصورت جداگانه راحتتره
- کد بیزینس اصلی تمیز میمونه
البته که این فقط یک پیادهسازی ساده بود و بهروشهای مختلفی میشه این پترن رو اجرایی کرد.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👎2🤔1
از سرورها و فایلها و هرچی که دم دست دارید بکاپ تهیه کنید، به زودی اوضاع وخیم میشه، هر چیزی که فکر میکنید باید ازش پشتیبان تهیه کنید همین امروز وقتشه.
بدونید پیش از این بهتون خبر دادم.
ان شالله که هرچی هست خیره و از این مسیر سخت عبور می کنیم.
تا درودی دیگر بدرود ❤️.
بدونید پیش از این بهتون خبر دادم.
ان شالله که هرچی هست خیره و از این مسیر سخت عبور می کنیم.
تا درودی دیگر بدرود ❤️.
❤5👍1👀1
سلام، دلم براتون تنگ شده بود، امیدوارم حال همتون خوب باشه، انشالله به زودی نت پایدار بشه و دوباره بتونیم ادامه بدیم🌹♥️
❤7👌1