قدرت دکوراتورها
در هسته خود، دکوراتورهای پایتون به شما این امکان را می دهند که بسط و تغییر دهید
رفتار یک فراخوانی (توابع، روشها و کلاسها) بدون تغییر دائمی خود فراخوانی.
هر عملکرد به اندازه کافی عمومی که می توانید به یک موجود متصل کنید
رفتار کلاس یا عملکرد یک مورد استفاده عالی برای دکوراسیون است.
این شامل موارد زیر است:
• ورود به سیستم
• اجرای کنترل دسترسی و احراز هویت
• توابع ابزار دقیق و زمان بندی
• محدود کننده نرخ
• ذخیره سازی، و بیشتر
حال، چرا باید در استفاده از دکوراتورها در پایتون تسلط داشته باشید؟ بعد از
همه، آنچه که من ذکر کردم کاملاً انتزاعی به نظر می رسد، و ممکن است دشوار باشد که ببینیم چگونه دکوراتورها می توانند در کارهای روزمره شما به نفع شما باشند.
یک توسعه دهنده پایتون اجازه دهید سعی کنم این سوال را روشن کنم
با ارائه یک مثال تا حدی در دنیای واقعی:
تصور کنید 30 عملکرد با منطق تجاری در برنامه تولید گزارش خود دارید. یک صبح دوشنبه بارانی، رئیس شما پیاده روی می کند
به سمت میز شما می آید و می گوید: «دوشنبه مبارک! آن TPS را به خاطر بسپار
گزارش ها؟ من به شما نیاز دارم که ثبت ورودی/خروجی را به هر مرحله از آن اضافه کنید
تولید کننده گزارش XYZ Corp برای اهداف حسابرسی به آن نیاز دارد. اوه و من
به آنها گفت که می توانیم این را تا چهارشنبه ارسال کنیم.”
بسته به اینکه درک کاملی از سخنرانان پایتون دارید یا نه، این درخواست فشار خون شما را افزایش میدهد یا
شما را نسبتاً آرام بگذارد
بدون دکوراتورها ممکن است سه روز آینده را برای اصلاح هر یک از آن 30 عملکرد و درهم ریختن آنها صرف کنید.
تماس های ثبت دستی اوقات سرگرم کننده، درست است؟
اما اگر دکوراتورهای خود را بشناسید، با آرامش به خود لبخند خواهید زد
رئیس و بگویید: “نگران نباش جیم، امروز تا ساعت 2 بعدازظهر تمامش می کنم.”
درست پس از آن، کد یک @audit_log decora tor عمومی را تایپ میکنید (که فقط حدود 10 خط طول دارد) و به سرعت آن را در جلوی هر یک قرار میدهید.
تعریف تابع سپس کد خود را متعهد می کنید و کد دیگری را می گیرید
فنجان قهوه…
من در اینجا دراماتیزه می کنم، اما فقط کمی. دکوراتورها می توانند آنقدر قدرتمند باشند. من تا آنجا پیش می روم که بگویم درک دکوراتورها یک نقطه عطف است
برای هر برنامه نویس جدی پایتون آنها به درک کاملی از چندین مفهوم پیشرفته در زبان، از جمله ویژگی های زبان نیاز دارند.
من بر این باورم که بازده برای درک چگونگی تزئینات
کار در پایتون می تواند بسیار زیاد باشد.
مطمئناً، دکوراتورها برای پیچیدن سرتان نسبتاً پیچیده هستند
برای اولین بار، اما آنها یک ویژگی بسیار مفید هستند که اغلب از آنها استفاده می کنید
در چارچوب های شخص ثالث و کتابخانه استاندارد پایتون.
توضیح دادن به دکوراتورها نیز یک لحظه ساخت یا شکست برای هر خیری است
آموزش پایتون. من در اینجا تمام تلاشم را می کنم تا قدم به قدم آنها را به شما معرفی کنم.
قوانین ارسال دیدگاه در سایت