tgoop.com/pyHints/904
Last Update:
پرسیدید چرا نویسنده میگه این مورد appalling
هست؟ با اینکه بنظر رفتار خیلی خوبی میاد.
من یک نمونه کد زدم که نشون بدم چرا بد هست این رفتار؛ توی این حالت من بیش از حد سخت گرفتم و همه چیز NewType
هست (یا یک رفتاری رو نباید دنبال کنید یا کل کد باید یک استاندارد رو رعایت کنه)
اولین و مهمترین نکته :
توجه کنید نویسنده همین رفتار یعنی تعریف مداوم تایپ جدید برای نوع دادههای اصلی رو بد میدونه!
اینکه بجای str, bool, int تایپ جدید تعریف کنید که پارامتر ورودی شما بهتر بنظر برسه!
حالا بررسی کنیم خود ایرادات وارده رو:
۱- تعریف نوع دادهای جدید هیچ عملکرد بهتری برای runtime
بهم نمیده!
خیلی از افرادی که اینکار رو میکنند برای فرار از تست کردن کدها؛ فرار از نوشتن ولیدیشن؛ فرار از چک کردن پارامترهای ورودی و ... اینکار رو میکنند! این چیزی هست که شخصا بسیار توی این مدل کد زدن دیدم (قطعا هستند افرادی که اینطوری عمل نمیکنند ولی خب من ندیدم)
۲- خط ۹۱ کد رو ببینید؛ هرجایی از کدم که بخوام یک str
یا ... رو برای این توابع استفاده کنم حتما باید توی NewType
ایی که تعریف کردم بذارمش!
ادامه پست بعدی:
BY Python Hints


Share with your friend now:
tgoop.com/pyHints/904