PDA

View Full Version : سوال: آینده‌ی MFC



Mohammad_Mnt
یک شنبه 24 آذر 1387, 15:06 عصر
من پس از چندین سال دوری از ++C (دلیل: دلفی :قلب:) دوباره می‌خوام به سراغش بیام. یک سری جست‌وجو توی اینترنت کردم و چند مورد دیدم که MFC توی لیست Deprecated ها قرار گرفته!!! آیا برای یک عنصر بازگشتی مثل من (:لبخند:) در کنار تمرکز اصلی روی DirectX ،بهتره که چه چیزی را در نظر داشته باشم: MFC ؟ ATL ؟ ..... ؟

Nima_NF
یک شنبه 24 آذر 1387, 15:32 عصر
تا 4 سال قبل این حرف شایعه شده بود اما با توجه به سیاستی که مایکروسافت صراحتا اعلام کرده است به هیچ عنوان MFC و یا کلا برنامه نویسی native از دور خارج نخواهد شد. امسال نیز قابلیت های زیادی به MFC اضافه کرده است.

توضیحاتی لازم در مقاله زیر به طور کامل داده شده است، مخصوصا سوالی شما در تاپیک آخر از زبان تیم فنی آورده شده است:
برنامه نویسی ++C/C از نوع Native یا managed ؟ (http://barnamenevis.org/forum/showthread.php?t=94381)

من بیشتر ترجیح می دهم به سراغ کتابخانه های cross-platform بروم تا به سراغ MFC . البته باز هم این موضوع به کار مورد نظر شما بستگی دارد.

تمرکز شما بر روی DirectX خواهد بود؟ برنامه نویسی نرم افزارهای گرافیکی یا بازی ؟
در بازی بیشتر باید به فکر برنامه نویسی مستقیم با win32 API باشید

Mohammad_Mnt
دوشنبه 25 آذر 1387, 00:26 صبح
We are certainly looking at where we should head long-term in terms of a UI and application framework. The answer may not be MFC in the long-term. But until a clear new framework is identified along with a clear transition path, we will continue to evolve MFC for the foreseeable future.

تمرکز اصلی من DirectX برای GameProgramming خواهد بود، ولی در کنار این مورد، می‌خوام مقداری انرژی هم برای تخصصی کار کردن روی بخش دیگری بگذارم.

از بین کتابخانه‌های CrossPlatform من شخصا" Qt را بهتر می‌پسندم. نظر شخصی شما چیه نیما جان؟

Nima_NF
دوشنبه 25 آذر 1387, 01:54 صبح
اگر نمی خواهید نسخه تجاری Qt را خریداری کنید گزینه خوبی نیست، دردسر نوشتن با Qt (نسخه کدباز) بدون امکانات تجاری آن زیاد هست و حتی در ویندوز نمی توان از VC استفاده کرد. به تمامی سورس کدها نیز دسترسی نخواهید داشت.

در هر حال Qt را بیشتر برای نوشتن Application های عمومی پیشنهاد می کنم یا مواردی که در بخش گرافیک مبتنی بر openGl هستند نه DirectX (تا جایی که اطلاع دارم از DirectX پشتیبانی رسمی نمی کند) و حتی یک نرم افزار تجاری نیز با Qt ندیده ام که در نسخه ویندوز از DirectX بهره ببرد.

بسیاری از نرم افزارهای بزرگ و game engine ها برای طراحی Level editor های خود از wxwidgets استفاده کرده اند، تا از همه لحاظ دستشان باز باشد و سورس کدها را نیز بتوانند به راحتی به فروش برسانند یا لایسنس بدهند. پیشنهاد من نیز wxwidgets است.

در مورد long-term نبودن هم برای MFC منظور حالا حالا ها نیست، یعنی زمانی که مایکروسافت تصمیم گرفت پشتیبانی از توسعه هزاران نرم افزاری را که هر روز در منازل استفاده می کنیم متوقف کند، از Nero گرفته تا ... تا آن زمان سال ها باقیست.
اما همان طوری هم که گفتم فعلا برنامه نویسی به سمت cross-platform شدن رفته است و ما هم اگر به آن سمت بروید در آینده هرگز ضرر نخواهیم کرد.

C++Lover
دوشنبه 16 دی 1387, 13:12 عصر
من هم با نظر نیما جان درمورد برنامه نویسی cross-platform موافقم.
خود من الان یک سالی میشه تمام پروژه های جدیدم رو با Qt انجام میدم (قبلا با MFC انجام میدادم). البته میدونید که ما اینجا مشکل License داریم ولی برای کارهای متوسط داخلی...