در این مطلب میخوام به زبان خیلی ساده بگم نرم افزار چیه و کاربردش توی دنیای کامپیوتری چیست و همچنین مفهموم شی گرایی
نرم افزار کامپیوتر یا به سادگی نرم افزار(Software)، مجموعه ای از داده ها یا دستورالعمل هایی است که در حافظه ی کامپیوتر ذخیره می شود و برای اجرا، این دستورات توسط پردازنده باید واکشی (خوانده) شود. به زبان ساده تر این دستورات هستند که به قسمت سخت افزاری کامپیوتر می گویند چه کاری باید انجام شود.
نرم افزار رابط بین کاربر و سخت افزار است. در حقیقت روح و جان یک کامپیوتر است که به سخت افزار هویت می بخشد.
هر نرم افزاری می تواند با توجه به پلتفرم اجرایی به یک زبان برنامه نویسی نوشته شود:
- نرم افزارهای تحت ویندوز: برنامه هایی که فقط تحت ویندوز قابل اجرا هستند این نرمافزارها باید روی کامپیوتر کاربر نصب شود، (برای مثال بازی های کامیپوتر، نرم افزار فتوشاپ، نرم افزارهای بخش موزیک و غیره)
سیستم عامل(operating system) مشهورترین نوع نرم افزارهای سیستمی می باشد. که مدیریت منابع سیستمی را بر عهده دارد. سیستم عامل همچنین ارتباط بین کاربر و اجزاء سخت افزاری و نرم افزاری دیگر(نرم افزارهای کاربردی که روی سیستم نصب میکنیم مثل برنامه ی Microsoft office) را برقرار میکند.
بعد از روشن شدن کامپیوتر سیستم عامل اولین نرم افزاری است که در حافظه رم (Ram) لود می شود و بدون آن نمی توان از سایر نرم افزارهای کاربردی که روی کامپیوتر نصب شده است، استفاده کرد.
سیستم عامل های مختلفی وجود دارند، که هرکدام از آنها محصول شرکت های کامپیوتری معتبر می باشد. از متداولترین آنها می توان به:
1 – Windows
2- Linux
3 – Unix
و غیره اشاره کرد.
- نرمافزارهای تحت وب: نوع خاصی از نرمافزارهای «کلاینت و سرور» هستند که روش طراحی و توسعه آنها نسبت به نرم افزارهای ویندوز مدرن و قویتر است، این نرم افزارها فقط با استفاده از مرورگرهای مختلف مانند (گوگل کروم، فایرفاکس و…) و اینترنت قابل دسترس هستند. برای مثال (سیستم های مدیریت محتوای وردپرس، جوملا، اپلیکیشن های مثل تلگرام، واتساپ و هر چیزی که با استفاده از مرورگر و اینترنت قابل اجرا هستند)
برنامه های تحت وب از یک هسته پایدار بهره میبرند و با تغییر در عملکرد یا به روزرسانی هسته اصلی( فایل های آپلود شده روی هاست) این تغییرات برای تمام کاربران در سطح شبکه جهانی اینترنت اعمال میشود. سرعت دسترسی به نرم افزار تحت وب از سرعت و عملکرد بسیار بهتر و مطلوب تری برخوردار است و میتوان با استفاده از تلفن همراه، تبلت و لپتاپ و یا هر دستگاهی که اجازه باز کردن صفحات اینترنتی را میدهند از قابلیتهای آن بهرمند شد.
برنامه نویسی شی گرایی
امروزه اکثریت نرم افزارها در زبان برنامه نویسی سطح بالا ( استفاده از شیوه ی شی گرایی Object-Oriented Programmin مخفف OOP ) نوشته شده است.شما وقتی از این شیوه استفاده میکنید اول باید تمام ویژگی ها و متدهایی که قرار هست یک شی داشته باشد را داخل یک کلاس (یک تعریف ضمنی از یک چیز یا مفهوم در دنیای واقعی به زبان ساده بهش طرح کلی هم گفته میشه) کدنویسی می کنید و حالا برای استفاده از این کلاس طراحی شده و استفاده از ویژگی ها و متدهای تعریف شده باید نمونه سازی کنید نمونه سازی ینی(پیاده سازی طرح طراحی شده).برای مثال شما یک معمار ساختمان را در نظر بگیرید قبل از ساخت یک ساختمان، با استفاده از نرم افزارهای طراحی معماری طرح رو می کشد و بعد از تکمیل طرح، برای استفاده از هر یک از قسمت های ساختمان طراحی شده باید آن را در دنیای واقعی بسازد دقیقا همین روند در زبان برنامه نویسی شی گرایی پیاده سازی شده است.
در دنیای شی گرایی پیاده سازی کلاس را نمونه سازی (Instantiate) گفته می شود که syntax آن هم به صورت زیر است
House obj = new House();
شی وجود فیزیکی دارد و می تواند چند نمونه از روی کلاس (طرح کلی) باشد که فقط می تواند از نظر خصوصیات با هم متفاوت باشد مثلاً نمای یکی از ساختمان ها می تواند آجری باشد و دیگری سنگی یا شیشه ای باشد یا اینکه تعداد طبقات یکی 4 باشد و دیگری 5 باشد. اما طرح پایه ای هر یک در قالب کلاس(طرح پیاده سازی) طراحی شده است.
دلایل برتری برنامهنویسی شی گرا:
- قابلیت سازمان دهی بهینه تر کدها
- قابلیت تقسیم برنامه به برنامههای کوچک تر اما مستقل. برنامه
- عدم نیاز به نوشتن کدهای تکراری و قابلیتهایی که قبلا پیادهسازی شدهاند و صرف جویی در استفاده از منابع.
با ما همراه باشید