قطعا شما هم روی کامپیوتر و گوشی همراه تان تعدادی نرم افزار کاربردی دارید اما آیا می دانید که
نرم افزار چیست و اولین بار چه زمانی استفاده شده؟

شاید شما ندانید؛ اما نرم افزارها در بسیاری از دستگاه هایی که امروزه استفاده می کنیم جاسازی شده اند.

در بسیاری از موارد ما به دلیل قابل مشاهده نبودن نرم افزار ها، متوجه حضور و اهمیت آن ها در دنیای مدرن امروز نمی شویم؛ مثل ماشین های لباسشویی.

به همین دلیل این مقاله دنیای نرم افزار ها را مورد بررسی قرار داده است. برای کسب اطلاع بیشتر با ما همراه باشید.

1# نرم افزار چیست؟ (software)

یک نرم افزار اساسا نوعی برنامه است که کاربران را قادر می سازد کار خاصی را انجام دهند.

نرم افزار تعیین می کند که همه دستگاه های جانبی دقیقا چگونه یک کار را انجام دهند.

نرم افزار در واقع نقش یک واسطه بین کاربر و سخت افزار کامپیوتر را بازی می کند.

در صورت عدم وجود نرم افزار، کاربر نمی تواند هیچ کاری را در رایانه یا دستگاه انجام دهد.

روش کار نرم افزار چیست؟

نرم افزار با استفاده از مجموعه ای از دستورالعمل ها که در کد رایانه نوشته شده است،
به کامپیوتر می گوید چگونه رفتار کند یا چگونه یک کار خاص را انجام دهد.

نرم افزار ها به گونه های مختلفی روی سیستم رایانه ای اجرا می شوند. به عنوان مثال:

  • برنامه های تجاری (مانند Microsoft Word و Adobe Photoshop)
  • بازی ها
  • سیستم عامل رایانه
  • یا حتی بد افزار مانند ویروس ها
    و غیره

نرم افزار

2# تاریخچه نرم افزار چیست؟

اصطلاح نرم افزار تا اواخر دهه 1950 مورد استفاده قرار نگرفت.

در این مدت، اگرچه انواعی از نرم افزار های برنامه نویسی در حال ایجاد بودند،
اما به طور معمول از نظر تجاری در دسترس نبودند.

در نتیجه، دانشمندان، شرکت های بزرگ و برخی از کاربران علاقمند، اغلب مجبور به نوشتن نرم افزار خود بودند.

برای اولین بار در 21 ژوئن 1948 بود که تام کیلبورن (Tom Kilburn)، دانشمند کامپیوتر، اولین نرم افزار جهان را برای کامپیوتر منچستر بیبی در دانشگاه منچستر انگلیس نوشت.

تاریخچه نرم افزار چیست

همچنین در اوایل دهه 1950 جنرال موتورز اولین سیستم عامل را برای دستگاه پردازش الکترونیکی داده IBM 701 ایجاد کرد که
به آن General Motors Operating System یا GM OS گفته می شود.

در نهایت در 3 نوامبر 1971، AT&T با انتشار اولین نسخه سیستم عامل Unix تحول بزرگی در دنیای نرم افزار ایجاد کرد.

3# انواع نرم افزار

به طورکلی 3 طبقه بندی اصلی برای نرم افزار وجود دارد:

انواع نرم افزار

1-3# نرم افزار های سیستمی (System Software)

نرم افزار سیستمی در واقع یک دسته عمومی از نرم افزار است که
به سخت افزار رایانه امکان عملکرد می دهد و به عنوان بستر اصلی اجرای برنامه ها عمل می کند.

نرم افزار سیستمی بسیار پیچیده است و در چندین لایه با دستگاه های محاسباتی در ارتباط است.

اما زیرمجموعه این نوع از نرم افزار چیست؟

نرم افزار سیستمی

1) سیستم عامل (OS)

بدون سیستم عامل یا OS (مخفف Operating System) رایانه فقط مجموعه ای از اجزای سخت افزاری است که
قادر به انجام هیچ عملکردی نیست.

سیستم عامل به کامپیوتر امکان انجام عملکردهای اساسی را می دهد و
رابطی را فراهم می کند تا کاربران بتوانند با کامپیوتر ارتباط برقرار کنند.

سیستم عامل در واقع بستری است که برنامه ها می توانند روی آن اجرا شوند.

2) میان افزار (Firmware)

بسیاری از دستگاه ها و مولفه ها دارای میان افزار هستند.

میان افزار در واقع یک نرم افزار نیمه دائمی است که به دستگاه می گوید چگونه رفتار کند و
چگونه با سایر دستگاه ها تعامل کند.

برخی از دستگاه های حاوی میان افزار عبارتند از:

  • سیستم های جاسازی شده (مانند چراغ راهنمایی، وسایل مصرفی و ساعت های دیجیتال)
  • رایانه ها
  • تلفن های همراه
  • دوربین های دیجیتال

3) درایورهای سخت افزار (Device drivers)

درایورهای سخت افزار، برنامه های کوچکی هستند که به سیستم عامل و اجزای رایانه امکان ارتباط می دهند.

هر جزء سخت افزاری در سیستم به یک درایور نیاز دارد تا
سیستم عامل از نحوه استفاده از آن دستگاه مطلع شود که هر کدام از آن ها درایورهای خاص خود را دارند؛ از جمله:

4) برنامه های کمکی (Utilities)

عملکرد این نوع از نرم افزار چیست؟

یوتیلیتی ها برنامه های کوچکی هستند که غالبا برای اجرای وظایف خاص در سیستم عامل مورد استفاده قرار می گیرند.

به عنوان مثال موارد زیر نمونه هایی از برنامه های کمکی هستند:

2-3# نرم افزار کاربردی (Application software)

نرم افزار کاربردی

نرم افزارهای کاربردی با نام برنامه نیز شناخته می شوند.

شما احتمالا با این نوع از نرم افزار بیشتر آشنا هستید.

این نرم افزارها بسته هایی هستند که شما برای تحقق هدف خاصی از آن ها استفاده می کنید.

انواع گسترده ای از نرم افزارهای کاربردی وجود دارد.

برخی از رایج ترین آن ها عبارتند از:

  • سرویس های ایمیل مانند Outlook
  • نرم افزار پایگاه داده مانند Microsoft Access که برای سازماندهی و مدیریت حجم زیادی از داده استفاده می شود
  • نرم افزارهای چندرسانه ای
  • Adobe Photoshop که برای ویرایش گرافیک و عکس استفاده می شود
  • مرورگرهای وب

3-3# نرم افزار برنامه نویسی (Programming software)

software برنامه نویسی

احتمالا تعجب آور نیست که یک نرم افزار با نرم افزار های دیگری با نام نرم افزار های برنامه نویسی ایجاد شود.

برنامه نویسان و تولید کنندگان نرم افزار برای ایجاد برنامه ها به تعدادی از ابزارهای مختلف نرم افزاری اعتماد می کنند. به عنوان مثال:

کامپایلرها: کامپایلر ها برنامه هایی هستند که
کدهای نوشته شده توسط انسان را به فرم سطح پایین تری از کد ماشین تبدیل می کنند تا
مستقیما توسط سخت افزار رایانه قابل تفسیر باشند.
وجود کامپایلرها ایجاد نرم افزار های فوق العاده پیچیده را امکان پذیر می کند.

این را هم ببینید
نقش کامپایلر در برنامه نویسی

4# منظور از ابعاد کیفیت نرم افزار چیست؟

نرم افزار ها تحت تست های مختلفی قرار می گیرند تا کارایی و کیفیت آن ها مورد بررسی قرار گیرد.

اما منظور از ابعاد کیفیت نرم افزار چیست و یک نرم افزار خوب شامل چه مشخصاتی است؟

کیفیت software

1-4# Accessibility یا دسترسی

در این بخش می بایست گروه های متنوعی از افراد با سطح دانش متفاوت، به منوها و بخش های مختلف نرم افزار به راحتی دسترسی داشته باشند.

به عنوان مثال گزینه جستجو در محل مشخصی قرار داشته باشد.

2-4# Compatibility یا سازگاری

مناسب بودن نرم افزار برای استفاده در محیط های مختلف مانند انواع سیستم عامل ها، دستگاه ها و مرورگرها.

3-4# Efficiency یا بهره وری

توانایی نرم افزار برای عملکرد خوب بدون اتلاف انرژی، منابع، تلاش، وقت و هزینه است.

4-4# Functionality یا عملکرد

معنی عملکرد در نرم افزار چیست؟

عملکرد در واقع توانایی نرم افزار برای انجام توابع مشخص شده خود است؛
یعنی توانایی انجام کارهایی که برای آن تولید شده است را داشته باشد.

5-4# Installability یا قابلیت نصب

در قابلیت نصب، نرم افزار باید معیارهای بسیاری را داشته باشد.

برخی از آن ها مستقیما به نصب مربوط می شوند؛ در حالی که برخی دیگر پیکربندی و استفاده از بسته را پس از نصب پوشش می دهند.

نرم افزاری کاملا خوب طراحی شده است که در طول مراحل نصب ویژگی های زیر را داشته باشد.

  • روش های نصب برای کاربر نهایی ساده و برای متخصصان پیچیده و قابل سفارشی سازی باشد.
  • در برابر نصب جزئی انعطاف پذیر باشد؛ یعنی نصب ناموفق در آن قابل تشخیص و پشتیبانی است.
  • حداقل تأثیر را بر پیکربندی دستگاه هایی که در آن کار می کنند می گذارد.
  • سعی در اعمال تغییر سبک یا محیط بر روی کاربران نهایی یا مدیران سیستم ندارد.
  • نشانه روشنی از نصب و محل نصب ارائه می دهد.
  • به مجوزهای دسترسی به فایل احترام می گذارد.
  • بدون تأثیر بر نصب قبلی می تواند آپدیت شده و ارتقا یابد.
  • اجازه نصب و استفاده همزمان از چندین نسخه را می دهد.
  • در صورت خرابی داخلی و خارجی پیام های خطای خوبی می دهد.
  • به امنیت نصب احترام می گذارد.
  • اسناد خوبی را برای مدیر سیستم فراهم می کند.

6-4# Maintainability یا قابلیت نگهداری در نرم افزار

یعنی به راحتی می توان نرم افزار را برای افزودن و بهبود ویژگی ها، رفع اشکالات و غیره اصلاح کرد.

7-4# Performance یا کارایی

عملکرد نرم افزار تحت یک بار خاص یا در کار با حجم زیادی از درخواست ها، مختل نشود.

8-4# Portability یا قابل حمل بودن

منظور از قابل حمل بودن در نرم افزار چیست؟

قابلیت حمل توانایی انتقال نرم افزار به راحتی از یک مکان به مکان دیگر است.

به عنوان مثال نرم افزار در یک فلش قابلیت جا به جایی با محتویات خود را داشته باشد.

دانلود pdf مقاله

مقاله بالا بخشی از مطالب گسترده مهارت های کامپیوتری است.

برای یادگیری صفر تا صد این حوزه به آموزش جامع مهارت های کامپیوتری مراجعه کنید.

برای مشاهده توضیحات کامل بسته کلیک کنید.

بسته مهارت های کامپیوتری

اگر به دنبال یاد گرفتن مهارت بیشتر و افزایش درآمد هستید،

برای دریافت آموزش های رایگان مرتبط با حوزه علاقه‌مندی خود فقط کافیه فرم رو تکمیل کنید.

لطفا موبایل خود را وارد نمایید

نظرتون درباره این مقاله چیه؟
ما رو راهنمایی کنید تا اون رو کامل تر کنیم و نواقصش رو رفع کنیم.
توی بخش دیدگاه ها منتظر پیشنهادهای فوق العاده شما هستیم.