PYHINTS Telegram 904
Python Hints
4: It is appalling. Please, please don't do this. source: Architecture Patterns with Python page 14
پرسیدید چرا نویسنده می‌گه این مورد appalling هست؟ با اینکه بنظر رفتار خیلی خوبی میاد.

من یک نمونه کد زدم که نشون بدم چرا بد هست این رفتار؛ توی این حالت من بیش از حد سخت گرفتم و همه چیز NewType هست (یا یک رفتاری رو نباید دنبال کنید یا کل کد باید یک استاندارد رو رعایت کنه)

اولین و مهمترین نکته :
توجه کنید نویسنده همین رفتار یعنی تعریف مداوم تایپ جدید برای نوع داده‌های اصلی رو بد می‌دونه!
اینکه بجای str, bool, int تایپ جدید تعریف کنید که پارامتر ورودی شما بهتر بنظر برسه!


حالا بررسی کنیم خود ایرادات وارده رو:

۱- تعریف نوع داده‌ای جدید هیچ عملکرد بهتری برای runtime بهم نمیده!
خیلی از افرادی که اینکار رو می‌کنند برای فرار از تست کردن کدها؛ فرار از نوشتن ولیدیشن؛ فرار از چک کردن پارامتر‌های ورودی و ... اینکار رو می‌کنند! این چیزی هست که شخصا بسیار توی این مدل کد زدن دیدم (قطعا هستند افرادی که اینطوری عمل نمی‌کنند ولی خب من ندیدم)

۲- خط ۹۱ کد رو ببینید؛ هرجایی از کدم که بخوام یک str یا ... رو برای این توابع استفاده کنم حتما باید توی NewType ایی که تعریف کردم بذارمش!

ادامه پست بعدی:
👍207🔥1



tgoop.com/pyHints/904
Create:
Last Update:

پرسیدید چرا نویسنده می‌گه این مورد appalling هست؟ با اینکه بنظر رفتار خیلی خوبی میاد.

من یک نمونه کد زدم که نشون بدم چرا بد هست این رفتار؛ توی این حالت من بیش از حد سخت گرفتم و همه چیز NewType هست (یا یک رفتاری رو نباید دنبال کنید یا کل کد باید یک استاندارد رو رعایت کنه)

اولین و مهمترین نکته :
توجه کنید نویسنده همین رفتار یعنی تعریف مداوم تایپ جدید برای نوع داده‌های اصلی رو بد می‌دونه!
اینکه بجای str, bool, int تایپ جدید تعریف کنید که پارامتر ورودی شما بهتر بنظر برسه!


حالا بررسی کنیم خود ایرادات وارده رو:

۱- تعریف نوع داده‌ای جدید هیچ عملکرد بهتری برای runtime بهم نمیده!
خیلی از افرادی که اینکار رو می‌کنند برای فرار از تست کردن کدها؛ فرار از نوشتن ولیدیشن؛ فرار از چک کردن پارامتر‌های ورودی و ... اینکار رو می‌کنند! این چیزی هست که شخصا بسیار توی این مدل کد زدن دیدم (قطعا هستند افرادی که اینطوری عمل نمی‌کنند ولی خب من ندیدم)

۲- خط ۹۱ کد رو ببینید؛ هرجایی از کدم که بخوام یک str یا ... رو برای این توابع استفاده کنم حتما باید توی NewType ایی که تعریف کردم بذارمش!

ادامه پست بعدی:

BY Python Hints





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

View MORE
Open in Telegram


Telegram News

Date: |

On June 7, Perekopsky met with Brazilian President Jair Bolsonaro, an avid user of the platform. According to the firm's VP, the main subject of the meeting was "freedom of expression." More>> Clear Step-by-step tutorial on desktop: Developing social channels based on exchanging a single message isn’t exactly new, of course. Back in 2014, the “Yo” app was launched with the sole purpose of enabling users to send each other the greeting “Yo.”
from us


Telegram Python Hints
FROM American