شی گرا چیست
شی گرایی چیست ؟
در این مقاله قصد داریم شما را با مفهوم و ماهیت شیگرایی و کاربرد آن در برنامه نویسی پایتون آشنا کنیم.
شی گرایی یک مدل از برنامه نویسی است که در آن به جای تعریف توابع و منطق از اشیا و داده ها استفاده می شود. در این مدل از برنامه نویسی هر شی را به عنوان یک مدل داده ای در نظر گرفته می شود که دارای ویژگی های منحصر به فرد میباشد. برای مثال اگر انسانها را یک شی در برنامه نویسی شی گرا تصور کنیم دارای خصوصیات منحصر به فردی مانند نام، نام خانوادگی، شماره تلفن، آدرس و… است که هرکدام از این ها یک فیلد اطلاعاتی در برنامه نویسی محسوب می شوند.
در برنامهنویسی شیگرا، اولین گام برای برنامه نویس شناسایی اشیایی است که او می خواهد در طول برنامه آنها را دستکاری کند. هنگامی که یک شی شناخته شد کلاسی از اشیا برای آن ساخته می شود که شامل انواع داده هایی است که می تواند این توالی منطقی را دستکاری کند .
بنابراین برنامه نویسی شی گرا بر روی اشیایی که توسعه دهندگان می توانند دستکاری کنند متمرکز می شود نه بر روی منطق آنها . این رویکرد در برنامه نویسی برای برنامه های بزرگ و پیچیده بسیار کاربردی است زیرا می توانیم یک پروژه بزرگ را به بخش های کوچکتر تقسیم کرده و به صورت گروهی روی یک پروژه پیچیده و بزرگ کار کرد.
برنامه نویسی شیگرا نسبت به برنامه نویسی های دیگر به علت انعطاف و کارایی بالا بین برنامهنویسان از محبوبیت خاصی برخوردار است.
چرا از برنامهنویسی شئ گرا استفاده میکنیم؟
در حالت عادی شما کل برنامه را در قالب دستورات و توابع پشت سر هم مینویسید و برای تغییر هرچیزی از برنامه احتیاج دارید تا کل ساختار برنامه را بررسی کرده و موارد مورد نیاز را تغییر دهید.
فرض کنید در حال نوشتن برنامهای در خصوص مدیریت خودروها هستید، شما برای هر مدل خودرو چندین خط کد مینویسید، در ادامه تصمیم میگیرید ویژگی جدیدی به خودروهای خود اضافه کنید، مثلا میزان شتاب خودرو، در این صورت باید کل دستورات برنامه را جستجو کرده و در تمام خطوط این ویژگی جدید را به تمامی خودروها اضافه کنید.
اما اگر برنامهی خود را با استفاده از مفهوم شئگرایی نوشته باشید در این صورت تنها کافیست این ویژگی (Attribute) جدید را به کلاس اصلی برنامه اضافه کنید تا سایر اشیا (خودروها) نیز این ویژگی جدید را به ارث ببرند و آن را درون خود داشته باشند، در این صورت دیگر احتیاجی نیست تک به تک خطوط برنامه را دستخوش تغییر کنید.
علاوه بر آن به دلیل ویژگیهای خاصی که در برنامهنویسی شئگرا حاکم است، دسترسی به دادههای درون کلاس از بیرون امکانپذیر نیست و این مورد میتواند در حفظ امنیت برنامهها به شما کمک کند.