PYHINTS Telegram 330
Python Hints
خوانش گروهی کتاب Fluent Python به فصل ۱۳ رسید (عضو جدید نمی‌گیره گروه) Interfaces, Protocol and ABCs داشتم راجب همین موضوع پیش گروهی دیگر از دوستان صحبت می‌کردم که متوجه شدم خیلی از بچه‌ها با این مفاهیم آشنا هستند، اما کاربرد درستش رو نمی‌دونند حتی بچه‌هایی…
Goose Typing

رو بعنوان runtime type check بهش اشاره می‌کنند؛ دلیلش هم توی عکس واضح هست.

اما دقت کنید که من برای isinstance از
from collection.abc import Sequence


چرا این مورد وجود داره؛ برطرف کردن مشکلاتی که Duck typing بوجود میاره همونطور که دیدیم برای duck typing تکمیل بودن تمام متدها اهمیتی نداره.
همینجا یک نکته‌ای رو بگم؛ توی پایتون استفاده بیش از اندازه از isinstance , issubclass, hasattr اصلا چیز خوبی نیست و به قول معروف code smell هست (برای دلیلش می‌تونید راجب __subclasshook__ بخونید.)

با این همه؛ goose typing جایگاهی مطمئن‌تر از duck typing برای تست پیاده‌سازی کامل یک Interface بهمون میده و همیشه هم باید به یک ABC برسه (پیاده‌سازی درست و اصولی)
👍2652



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

Goose Typing

رو بعنوان runtime type check بهش اشاره می‌کنند؛ دلیلش هم توی عکس واضح هست.

اما دقت کنید که من برای isinstance از
from collection.abc import Sequence


چرا این مورد وجود داره؛ برطرف کردن مشکلاتی که Duck typing بوجود میاره همونطور که دیدیم برای duck typing تکمیل بودن تمام متدها اهمیتی نداره.
همینجا یک نکته‌ای رو بگم؛ توی پایتون استفاده بیش از اندازه از isinstance , issubclass, hasattr اصلا چیز خوبی نیست و به قول معروف code smell هست (برای دلیلش می‌تونید راجب __subclasshook__ بخونید.)

با این همه؛ goose typing جایگاهی مطمئن‌تر از duck typing برای تست پیاده‌سازی کامل یک Interface بهمون میده و همیشه هم باید به یک ABC برسه (پیاده‌سازی درست و اصولی)

BY Python Hints




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

View MORE
Open in Telegram


Telegram News

Date: |

‘Ban’ on Telegram Those being doxxed include outgoing Chief Executive Carrie Lam Cheng Yuet-ngor, Chung and police assistant commissioner Joe Chan Tung, who heads police's cyber security and technology crime bureau. Other crimes that the SUCK Channel incited under Ng’s watch included using corrosive chemicals to make explosives and causing grievous bodily harm with intent. The court also found Ng responsible for calling on people to assist protesters who clashed violently with police at several universities in November 2019. How to Create a Private or Public Channel on Telegram? The group also hosted discussions on committing arson, Judge Hui said, including setting roadblocks on fire, hurling petrol bombs at police stations and teaching people to make such weapons. The conversation linked to arson went on for two to three months, Hui said.
from us


Telegram Python Hints
FROM American