PDA

View Full Version : اختلاف سرعت توسعه دات نت و MFC و...



flamingo
پنج شنبه 25 شهریور 1389, 14:20 عصر
سلام بچه ها؛
يك سوال داشتم كه كل وب رو گشتم ولي به جواب نرسيدم:افسرده:
فرض كنيد يك نرم افزار حسابداري رو با دات نت بنويسيم، مثلا 40 روز طول بكشه. حالا اگر همون نرم افزار رو با MFC يا Qt‌بنويسيم " چند برابر" زمان ميبره؟؟ 2 برابر؟؟ 3 برابر؟
هدفم اينه كه ببينم سرعت توسعه اونا چقدر متفاوته.
ممنون

eshpilen
پنج شنبه 25 شهریور 1389, 22:54 عصر
لازم نیست 2 و 3 برابر باشه تا اهمیت داشته باشه؛ حتی 50% افزایش در سرعت توسعه، در خیلی موارد میتونه یک فاکتور تعیین کننده باشه. البته شاید واقعا مزیت سرعت توسعه در دات نت در همین حدود یا حتی در مواردی بیشتر هم برسه. اگر برنامه با مشکل پرفورمنس برخورد نکنه (بخاطر کندتر بودن دات نت و مصرف منابع بالاترش)، توسعه با دات نت بقیهء رقبا رو از میدون بدر میکنه.
تازه شما درنظر بگیر مثلا اگر یه برنامه یا درواقع سیستم باشه که مجموعه ای از برنامه ها و پروژه های مختلفی هست که بعضا هم در حیطهء وب هستن و هم در حیطهء دسکتاپ، در چنین کاربردهایی دیگه راحتی و سرعت توسعهء دات نت بنظرم جای تردیدی باقی نمیذاره. یعنی اساسا در این کاربردها شما دارید از تمام طراحی و مزایای دات نت و آینده نگری ای که داشته استفاده میکنید (نه فقط از یک بخش محدودش مثل دسکتاپ). همهء بخشها رو با یک زبان، در کل تقریبا با یک روش، با اجزای از پیش آماده و هماهنگ شده و استاندارد که کارکردن بدون مشکل اونا با هم تضمین شده، با حداقل نیاز به کدنویسی و یادگیری و دقت و تمرکز، بدون نیاز به درگیری با جزییات گسترده و پیچیدهء ارتباطها و تبدیل ها و سازگار کردن ها که به شما این امکان رو میده روی حل مسئله و الگوریتم اصلی و بقول معروف لایهء تجاری برنامه تمرکز کنید (بقیه هم که رابطهای کاربری و دیتابیس و اینهاست که بازم هرچه راحتتر و سریعتر بوسیلهء دات نت و ویژوال استودیو انجام میشن)، و در یک محیط هوشمند و مجهز ویژوال بصورت یکپارچه و متمرکز که خیلی کارها رو بصورت خودکار انجام میده (مثلا پروژه های مرتبط رو درصورت نیاز بصورت خودکار ذخیره و کامپایل میکنه بدون اینکه شما بارها دچار خطای انسانی و فراموشی یا صرفا صرف وقت و انرژی بیشتر در این زمینه بشید) انجام میدید که تمام این مزایا درواقع یکی از اهداف عمده و علت بوجود آمدن دات نت بوده (اصلا اسم .NET خودش به ماهیت توزیع شده و شبکه ای اون اشاره داره).
درواقع دات نت از نیاز و آینده نگری در این زمینه حاصل شده. چون برنامه ها روز به روز پیچیده تر و توزیع شده تر و بزرگتر شدن و خیلی سیستمهای حتی نسبتا ساده و محدود، هم بخش دسکتاپ دارن و هم بخش وب و هم میتونن بصورت توزیع شده باشن، که اینا با توجه به نبود یک زبان و استاندارد و ابزار و محیط واحد و متمرکز برای برنامه نویسی، کار توسعهء این سیستمها رو سخت و پیچیده میکرد.

flamingo
شنبه 27 شهریور 1389, 17:00 عصر
لازم نیست 2 و 3 برابر باشه تا اهمیت داشته باشه؛ حتی 50% افزایش در سرعت توسعه، در خیلی موارد میتونه یک فاکتور تعیین کننده باشه. البته شاید واقعا مزیت سرعت توسعه در دات نت در همین حدود یا حتی در مواردی بیشتر هم برسه. اگر برنامه با مشکل پرفورمنس برخورد نکنه (بخاطر کندتر بودن دات نت و مصرف منابع بالاترش)، توسعه با دات نت بقیهء رقبا رو از میدون بدر میکنه.
سلام
منظور من نكات فلسفي و علل كاربرد دات نت نيست!!
فقط ميخوام اختلاف سرعت توسعه رو به صورت عددي ببينم همين!
ممنون از همه

salehbagheri
شنبه 27 شهریور 1389, 19:55 عصر
فقط ميخوام اختلاف سرعت توسعه رو به صورت عددي ببينم همين!

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

eshpilen
شنبه 27 شهریور 1389, 20:47 عصر
بنظر من اینطور مسائل کاملا قابل تحقیق و آزمایش است.
مثلا دو تیم رو بذارن یکی با سی++ و دیگری با سی شارپ/دات نت روی یک پروژه و ببینن چند نفر ساعت صرف میشه. کیفیت و کامل بودن خروجی پروژه ها رو هم بررسی کنن. میشه اینکار رو چند بار با چند تیم و چند پروژه تکرار کرد تا میانگین مطمئن تری بدست آورد. البته این فقط یک تست محدود در یک زمینه میشه، اما بازم خوبه و برآوردی بدست میده. بخصوص که پروژه ها هوشمندانه انتخاب بشه. و تیم ها حق دارن از هر ابزار و محیط ویژوالی هم که میخوان استفاده کنن. (البته میتونیم یه حالت دیگر رو هم برای کدنویسی دستی درنظر بگیریم)
ممکنه چنین تحقیقات یا حتی آزمایشهایی نظیر این تاحالا انجام شده باشن یا بعدا بشن.
از استارتر محترم تقاضا میکنم اگر به جواب این سوال رسیدن در این تاپیک برای دسترسی همگان هم درج کنن.