سلام به تمامی دوستان عزیزم ؛ توی این مقاله قراره در رابطه با یکی از مهم ترین مفاهیم برنامه نویسی یعنی شی گرایی در پایتون صحبت کنیم .
قبل از ورود به دنیای شی گرایی در پایتون اگر هنوز مقاله ی قبلی که در رابطه با کار با تاریخ و زمان در پایتون بود رو مطالعه نکردید بهتون پیشنهاد می کنم یه سری به این مقاله بزنین .
خب اول از همه بریم ببینیم که شی گرایی در برنامه نویسی یعنی چی و چه کاربردی در نوشتن برنامه ها داره .
شی گرایی در پایتون (Object Oriented Programming – OOP) :
اگر بخوام خیلی ساده و کلی شی گرایی در برنامه نویسی رو تعریف کنم میگم شی گرایی به این معناست که سعی کنیم اجزایی از برنامه که می توانیم را به عنوان شی در نظر بگریم که این شی دارای دو ویژگی اصلی خصیصه (attributes) و رفتار (method) می باشد . بریم با بررسی یک مثال مفهوم این جمله رو درک کنیم.
فرض کنید ما در برنامه ی خود انسان را به عنوان یک شی در نظر می گیریم . همونطور که قبلا گفتم شی ای که داریم باید شامل یک سری خصیصه و رفتار باشد .
حال به بررسی خصیصه ها و رفتار های شی مورد نظر می پردازیم .
برای انسان مواردی مانند : قد ، وزن ، سن ، سرگرمی ها و … را می توان به عنوان خصیصه در نظر گرفت که این موارد از یک انسان به انسان دیگر تغییر می کند .
و ویژگی دیگر برای شی مورد نظر رفتار شی بود که در اینجا برای انسان ، خوردن ، خوابیدن ، راه رفتن ، پریدن و … را می توان به عنوان رفتار انسان در نظر گرفت .
خب حالا که تا حدی با مفهوم شی گرایی در پایتون آشنا شدیم بریم به بررسی فواید و اصول شی گرایی در پایتون بپردازیم .
فواید استفاده از شی گرایی در پایتون :
یکی از مهم ترین فواید استفاده از شی گرایی در پایتون استفاده از قطعه کدهایی است که قبلا نوشته ایم و برای اینکه دیگر کد خود را تکرار نکنیم و مجددا آن ها را ننویسیم از شی گرایی استفاده می کنیم .
این ویژگی را به اختصار “DRY” (Don’t Repeat Yourself) می گویند .
یعنی کاری که یک بار در برنامه انجام می دهیم را مجدد در جای دیگر تکرار نکنیم . خلاصه یک بار یک کاری را انجام دهیم و در جاهای مختلف از آن استفاده کنیم .
مفهوم شی گرایی در پایتون از چند اصل مهم و پایه ای پیروی می کند که در ادامه به معرفی این اصول خواهیم پرداخت .
این اصول شامل موارد زیر هستند :
ارث بری (Inheritance) :
در برخی موارد شی ای که تعریف کرده ایم می تواند از یک کلاس ویژگی ها و رفتارهایی را به ارث ببرد که در مقالات بعدی به چگونگی آن خواهیم پرداخت .
کپسوله سازی (Encapsulation) :
در برخی موارد لازم است که جزئیات یک کلاس را از اشیای دیگر پنهان کنیم که به این فرآیند کپسوله سازی می گویند . در مقالات بعدی کپسوله سازی را با جزئیات بیشتری بررسی خواهیم کرد .
چندریختی (Polymorphism) :
فرض کنید که دو کلاس متفاوت داریم که این دو کلاس یک تابع با نام یکسان اما با کارکردی متفاوت هستند . می توان تابعی تعریف کرد و در صورت لزوم از آن تابع که نام یکسانی در کلاس های مختلف داشت برای شی های مختلف از کلاس های متفاوت استفاده کرد .
توی این مقاله به بررسی کلی مفهوم شی گرایی در پایتون به همراه بررسی اصول شی گرایی پرداختم .
در مقالات بعدی به بررسی مفاهیم شی ، کلاس ، متد و اصول شی گرایی به همراه مثال خواهیم پرداخت .
خب این مقاله هم اینجا به پایان می رسه ؛ ممنونم که تا انتهای مقاله من رو همراهی کردین . امیدوارم بعد از مطالعه ی این مقاله به راحتی مفهوم شی گرایی رو درک کرده باشین .
برای درک عمیق تر مفاهیم و اصول شی گرایی در پایتون مقالات بعدی رو از دست ندین . همچنین برای مطالعه ی بیشتر هم می تونین به اینجا سر بزنین .
تا مقاله ی بعدی خداوند یار و نگهدارتون .