طراحی نرم افزار
طراحی نرمافزار فرایند حل مسئله و برنامهریزی در راستای ساختن یک نرمافزار است. طراحی نرمافزار فرایندی است که توسط آن یک عامل، مشخصهای از نرمافزار را طراحی میکند که هدف آن، به انجام رساندن اهداف از پیش تعیین شده با استفاده از مجموعهای از اجزای اولیه و با توجه به محدودیتها است. طراحی نرمافزار میتواند به عنوان «تمام فعالیتهای مربوط به مفهوم سازی، طراحی، اجرا، راهاندازی و در نهایت اصلاح سیستمهای پیچیده»یا
فعالیتهای مشخص مورد نیاز و قبل از برنامهنویسی و… باشد.
دستهبندی کلی انواع زبانهای برنامه نویسی
زبانهای برنامهنویسی درحوزه بسیار گستردهای بوده و تعداد آنها بسیار زیاد است؛ اما از یک دستهبندی کلی میتوان همه انواع زبان های برنامه نویسی را به چهار دسته تقسیمبندی نمود:
• زبانهای برنامهنویسی تحت ویندوز
• زبانهای برنامهنویسی تحت وب
• زبانهای برنامهنویسی اپلیکیشن موبایل
• زبانهای برنامهنویسی چندمنظوره
هر یک از این شاخههای زبانهای برنامه نویسی، خود شامل تعداد زیادی زبان مختلف میشود.
معرفی زبانهای برنامه نویسی تحت ویندوز
زبانهای برنامهنویسی تحت ویندوز زبانهایی هستند که برای سیستمعامل ویندوز در محیط کامپیوتر طراحی شدهاند و برای نوشتن و اجرای برنامههای مختلف در محیط ویندوز به کار میروند.
#C
این زبان که با نام C شارپ شناخته میشود، یک زبان برنامهنویسی مدرن است که از ویژگی شیءگرا بودن برخوردار بوده و توسط شرکت مایکروسافت طراحی شده است.
++C
C++
یک زبان برنامهنویسی با اهداف عمومی است
یک زبان سطح پایین و شیءگرا محسوب میشود که امکان کنترل دقیق منابع و حافظه سیستم را برای توسعهدهنده فراهم میکند. از این زبان برنامهنویسی نه تنها برای توسعه برنامههای دسکتاپ بلکه برای برنامههای تحت سیستم، مرورگرها، بازیها و موارد دیگر میتوان استفاده کرد.
پایتون
یک زبان برنامهنویسی سطح بالا و شیءگرا است که در آن نیازی به نوشتن کدهای طولانی نیست. این زبان بسیار انعطافپذیر بوده و دارای رنج وسیعی از فریمورکهای GUI است که امکان استفاده آسان و ایمن از این فریمورکها را در اختیار توسعهدهنده قرار میدهد.
Java
زبان برنامه نویسی شیءگرا و مبتنی بر کلاس است که تنها با نوشتن یکبار برنامه، میتوان آن را روی پلتفرمهای مختلف اجرا نمود. کدهای نوشته شده به این زبان برنامه نویسی، در محیط java کامپایل میشود. پس از کامپایل در این محیط یک کد کلاس یا bytecode به دست میآید که برای اجرای آن به یک مترجم نیاز است.
JavaScript
یک زبان برنامهنویسی دینامیک و مبتنی بر Prototype است که ساختاری تکرشتهای دارد و جزو دستهبندی زبانهای شیءگرا محسوب میشود. این زبان اغلب برای برنامهنویسی تحت وب شناخته شده است اما در عین حال یکی از برترین زبانهای برنامه نویسی برای برنامههای تحت ویندوز یا دسکتاپ نیز است.
PHP
یک زبان برنامه نویسی عمومی و سمت سرور در کاربردهای تحت وب است. این زبان برای مدیریت محتوای دینامیکی و پایگاههای داده استفاده میشود. همچنین هسته اصلی بزرگترین ابزار وبلاگ نویسی یعنی وردپرس براساس PHP است. علاوه بر این، PHP یکی از زبانهای مفید برای توسعه برنامههای دسکتاپ است که از قابلیت چند پلتفرمی برخوردار بوده و برای توسعه GUI های دسکتاپ، میتوان از آن
استفاده کرد.
SWIFT
توسط شرکت اپل توسعه یافته است. این یک زبان برنامهنویسی کامپایل شده و همه منظوره است که برای نسخههای مختلف سیستمهای عامل و نیز برای توسعه اپلیکیشنهای iOS نیز استفاده میشود. برای توسعهدهندگانی که برنامههای دسکتاپ را برای MacOS مینویسند، استفاده از Swift بسیار مفید خواهد بود.
Red-Lang
Red
یک زبان برنامه نویسی واکنشی و کاربردی است که با داشتن یک کامپایلر بومی برای تبدیل کدها، زمینه وسیعی را برای توسعه برنامههای دسکتاپ به وجود آورده است. این زبان از ویژگیهایی نظیر شیءگرا بودن، مبتنی بودن بر Prototype، کامپایل بومی، GUI چند پلتفرمی و افزونه Visual Studio برای توسعه برنامههای مختلف بهره میبرد. از این زبان میتوان برای نوشتن برنامههای تحت ویندوز و MacOS استفاده کرد.
Go
یک زبان برنامه نویسی متنباز، کاربردی، شیءگرا و چندمنظوره است که توسط گوگل توسعهیافته است.
اما دارای ویژگیهای پیشرفتهتر، حافظه ایمن و تایپوگرافی ساختاری است
یک برنامه افزودنی به زبان برنامه نویسی پاسکال است که ویژگیهای شیءگرا بودن مانند متدها و کلاسها را به آن اضافه میکند. از این زبان میتوان برای توسعه برنامههای تحت ویندوز، MacOS و لینوکس بهصورت همزمان استفاده کرد.
نرم افزار چیست؟
در یک تقسیم بندی کلی، نرمافزار در مقابل سختافزار قرار میگیرد. سختافزار، تمام مجموعه فیزیکی کامپیوتر یا موبایل شما است که بدون نرمافزار تقریبا به هیچ دردی نمیخورد و نرمافزار مانند روح برای بدن سختافزار شما است. در حقیقت نرمافزارها برنامهها ودادههایی هستند که به رایانه شما جان میبخشند و هر کدام برای استفادهای خاص و برای کاربران مخصوص درست شدهاند.
طراحی نرمافزار
فرایند حل مسئله و برنامهریزی در راستای ساختن یک نرمافزار است. طراحی نرمافزار فرایندی است که توسط آن یک عامل، مشخصهای از نرمافزار را طراحی میکند که هدف آن، به انجام رساندن اهداف از پیش تعیین شده با استفاده از مجموعهای از اجزای اولیه و با توجه به محدودیتها است.
فرآیند ساخت نرمافزارهای کاربردی بر عکس تصور بسیاری از کاربران، پیچیده، زمانگیر، مشتمل بر ظرافتهای خاص، بررسی کیفیت و آزمونهای مختلف است که اگر هر یک از این فرآیندها به درستی انجام نشوند خروجی کار با شکست کامل روبرو میشود.
آشنایی با نرمافزارهای سیستمی و نرمافزارهای کاربردی
نرمافزارهای سیستمی نرمافزارهای پایهای هستند که سایر نرمافزارها بر روی آنها سوار میشوند. مشهورترین نرم افزارهای سیستمی، سیستم عاملها هستند که از لحظه ای که شما رایانه خود را روشن میکنید در حال استفاده از آن هستید. ویندوز، اندروید، جاوا و…. زیربنایی ترین نرمافزارهای سیستمی هستند که هر برنامه کاربردی که متناسب باشد بر روی آنها نصب میشود. طبیعی است که بسیاری از برنامهها بر روی سیستم عاملی خاص جواب میدهند.
نرمافزارهای کاربردی نیز در این تقسیمبندی در مقابل نرمافزارهای سیستمی هستند که در واقع، بر روی نرمافزارهای سیستمی نصب میشوند. در ادبیات عمومی مردم، وقتی سخن از نرمافزار و طراحی آن به میان میآید، بیشتر، نرمافزارهای کاربردی مد نظر است. برنامههای کاربردی، بازیها، اپلیکیشن ها و برنامههای ساده و پیچیده را شامل میشود که هر کدام کاربران خاص خود را دارند.