آنچه یاد خواهید گرفت:
چگونه با درک بهتر پیامهای خطای رانتایم، باگها را سریعتر فیکس کنیم؟
چگونه با بهترین شیوههای سیستم نوع، از مشکلات رایج نوع جلوگیری کنیم؟
چگونه با type hints و بررسیکنندههای نوع استاتیک، کیفیت کد را بهبود دهیم؟
چگونه با کلاسهای پروتکل همراه با type hints، مشکلات معماری را زودتر تشخیص دهیم؟
اصطلاحات درست ویژگیهای نوع که همین حالا هم از آنها استفاده میکنید.
چگونه attribute lookup و نوعدهی پویا، کلید duck typing در پایتون هستند؟
چگونه با یادگیری ویژگیهای منحصربهفرد زبان پایتون و سیستم نوع آن، انتقال از زبان دیگری را مؤثرتر کنیم؟
چگونه متغیرها با type inference کار میکنند و تگهای نوع آنها را بررسی میکنند؟
پیشنیازهای دوره
تجربه پایتون در سطح مبتدی یا یک زبان برنامهنویسی دیگر
نصب بودن پایتون 3.12 یا جدیدتر
توضیحات دوره
در پایتون، نادیده گرفتن انواع کار آسانی است. میتوانید بهسادگی بنویسید a = 10 و بدون اینکه لازم باشد نوع آن را مشخص کنید، همهچیز کار میکند. با این حال، پشت سینتکس ساده و شهودی پایتون، یک سیستم نوع بهطرز شگفتانگیزی پیچیده قرار دارد. در واقع، همانطور که در این دوره خواهید دید، پایتون چندین سیستم نوع را با هم یکپارچه میکند تا داده و رفتار را بهطور مؤثر مدیریت کند.
شاید بپرسید چرا اصلاً باید انواع را مطالعه کنیم؟ در نهایت، احتمالاً هر روز در پایتون از آنها استفاده میکنید، بدون اینکه خیلی به آن فکر کنید. درست است که میتوانید کاملاً بدون درک جزئیات عملکرد سیستم نوع، کد قابلاجرا بنویسید. اما مانند بسیاری از جنبههای مهندسی نرمافزار، درک عمیقتر «چگونگی» و «چرایی» به شما کمک میکند تصمیمهای طراحی هوشمندانهتر و آگاهانهتری برای کد و سیستمهای خود بگیرید.
چالشها:
پایتون زبانی آسان برای یادگیری است. این زبان بسیاری از ظرافتهای مربوط به انواع داده را پنهان میکند. اما وقتی توسعهدهندگان باتجربهتر میشوند، بیشتر با شیوه منحصربهفرد پایتون برای ایجاد، نمونهسازی و کار با انواع داده روبرو میشوند. در همین مرحله است که بررسی عمیق انواع و سیستمهای نوع بسیار مفید میشود.
موضوعات
آشنایی با سیستمهای نوع: دستهبندیهای سیستم نوع و بلوکهای سازنده اولیه آنها (انواع)
نوعدهی ضمنی در مقابل صریح: لیترالها، متغیرها و attributeها
نوعدهی پویا در مقابل استاتیک: duck typing، پروتکلهای پایتون و Datamodel در پایتون، کامپایلرها و مفسرها
Type Hints: حاشیهنویسیها، بررسیکنندههای نوع استاتیک، انواع مختلف و constructهای ویژه نوعدهی
انعطافپذیری نوع: ایمن، و کامل - پروموشن، تبدیل و مقایسه
نوعدهی اسمی در مقابل ساختاری: استفاده از پروتکلها و کلاسهای کامپوزیت به منظور طراحی رابطها برای سیستمهای ماژولار
مدت زمان
3 ساعت محتوای ویدئویی
این دوره برای چه کسانی مناسب است؟
افراد مبتدی و سطح متوسط که میخواهند سازوکار و هدف انواع و سیستمهای نوع در پایتون را بشناسند.
مهندسان نرمافزار که میخواهند با افزودن type hints از سیستم نوع بهعنوان یک ابزار توسعه اضافی برای بهبود کیفیت کد خود استفاده کنند.
توسعهدهندگانی که میخواهند اصطلاحات درست را یاد بگیرند تا بحث درباره کد در تیم و جستجوی اطلاعات در اینترنت برایشان کارآمدتر شود.