حداقل‌ها و نیازمندی‌های نرم‌افزاری
آیا در مورد سخت افزار مشتریان یا کاربران خود اطلاعاتی دارید؟
در اغلب موارد مشتریان شامل شرکت ها اداره‌جات دولتی یا شرکتهای دیگر هستند تا کاربران خانگی.
فرض کنید با یک قرار داد وارد مجموعه‌ای میشوید که تعداد کاربران آنها از ۲۰ کلاینت بیشتر باشد، در این صورت اگر سخت‌افزار های آنها قابلیت اجرای نرم‌افزار شما را نداشته باشد یا مثلا اجرای نرم‌افزار به شکل خسته‌کننده و ملال آوری کند باشد!!! نمیتوان مشتری را وادار به پرداخت هزینه‌ای چنین بالا جهت استفاده از نرم‌افزار کرد، بعلاوه در برخی موارد مشتری یا کاربر نیازمند استقرار و استمرار این سیستم‌ها برای کار با نرم‌افزاری‌هایی است که از پیش تهیه شده‌اند.
در چنین مواردی پشتیبانی و قابلیت اجرای محصولات روی سخت‌افزار‌هایی با قابلیت‌های پایین باید دیده شود!
لذا پیشاپیش از میزان نیاز سخت‌افزاری ابزاری که با آن اقدام به تولید محصول یا نرم‌افزار میکنید اطلاعات کسب کنید!

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

در این مورد ابزار هایی که برای شما کد ماشین تولید میکنند مناسب تر هستند تا نرم افزار هایی که نیاز به ماشین مجازی دارند در اغلب موارد منابع سیستم توسط سیستم عامل یا همان سکو به شکل غیر قابل باوری تصرف شده اند(در مورد سیستم‌های قدیمی) و یک ماشین مجازی مثل Java یا .Net میتواند کابوسی را به بار آورد.

تفاوت در آنجاست که نرم‌افزار‌هایی که با .Net یا Java فراهم میشوند نیاز به یک ماشین مجازی دارند که باید از قبل روی سیستم مشتری نصب باشد، که البته باز هم شرایط دیگری پیش می آید مثلا تصور کنید ویندوز Xp با نسخه‌های قدیمی که سازمان برای اجرای نرم‌افزار های قدیمی خود وابسته به آن است و نسخه‌ای از .Net که روی آن نصب نمی‌شود. البته در این میان(نرم‌افزارهای نیازمند به ماشین مجازی VM) گوی سبقت در دست Java است چون معمولا بدون درنظر گرفتن نسخه سیستم عامل و قابلیت‌ها یا محدودیت‌های آن به صورت موفق نصب و اجرا میشود(صرف نظر از سرعت و سهولت کار با محصول حین اجرای آن روی ماشین کاربر)

اما در صورتی که محیط توسعه، زبان برنامه نویسی، ابزار (یا هر عنوانی که مطبوع شماست) شما کد ماشین تولید کند که بدون واسطه روی سکو(سیستم عامل) و مستقیم بر روی CPU اجرا شود بسیاری از این چالش ها پیش روی شما نیست! مانند :

C/C++/Qt/GTK/Freepascal+Lazarus

در مورد زبان‌ها و محیط‌های ذکر شده بالا غیر از فری‌پاسکال و لازاروس مابقی از زبان‌های سی و سی‌پلاس‌پلاس استفاده میکنند بعلاوه ویجت‌ست های فراهم شده توسط لازاروس امکان انتخاب سکوی اجرا و همچنین ویجت‌ست مطبوع شما را فراهم کرده شما یکبار نرم‌افزار خود را نوشته و تهیه کرده‌اید، میتوانید نرم‌افزار را برای ویندوز با ویجت‌ست Win32 / GTK /Qt در لینوکس با ویجت‌ست GTK/Qt و در مک‌او‌اس با ویجت‌ست های GTK/Cacao همگردانی مجدد کنید بدون آنکه تغییری در ساختار نرم‌افزار ایجاد کنید.

 

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

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

آموزش لینوکس به صورت خصوصی

لایسنز(License) ابزار‌ها و نرم‌افزار‌های توسعه

سرور ها و سرویس‌های مقیم در شرکت

نرم‌افزار ,روی ,ماشین ,ویجت‌ست ,سیستم ,های ,در مورد ,ماشین مجازی ,سیستم عامل ,اجرای نرم‌افزار ,در این ,ماشین مجازی دارند

مشخصات

تبلیغات

آخرین ارسال ها

برترین جستجو ها

آخرین جستجو ها

تاثیر افکار و عادتها بر زندگی واقعی فروش اقساطی موبایل ،لپ تاپ،تبلت در استان قم آشپزی آسان با سحرناز پردیس مارک قهوه گانودرما آموزش کسب و کار اینترنتی و بازاریابی آنلاین رایت می - ترجمه تخصصی و ویرایش تخصصی انواع متن و مقاله تاسیسات مکانیکی گاه نوشته های حقوقی من بازی های رایانه ای