PDA

View Full Version : سوال: انواع ایجاد پروژه در C++



NASA's Spaceman
شنبه 27 دی 1393, 17:33 عصر
سلام
دوستان لطفا اگه میشه یکی که بلد هست این سوال رو جوا بده
هر کدوم از انواع پروژه ها ی زیر در C++ چکاری میکنن و تفاوت هاشون چیه(توی Microsoft Visual C++.Net)؟
Win32 Console Application
MFC Application
Win32 Project
Empty Project
ATL Project
MFC DLL
Windows Forms Application این یکی با ویندوز فرم سی شارپ چه تفاوتی داره؟
CLR Console Application
CLR Empty Project
Class Library اینو میدونم
Custom Wizard
Makefile Project
MFC ActivX Control این رو هم ففقط میدونم ActivX Control چیه ولی MFC رو نمیدونم
Test Project
Windows Forms Control Library
ممنون میشم اگه کسی جواب اینا رو بهم بده و یه سوال جدا دیگه و اونم اینکه توی سی پلاس پلاس برا سیستم های 64 بیتی هم میشه برنامه نوشت یا نه؟
با سپاس Spaceman

کامبیز اسدزاده
یک شنبه 28 دی 1393, 08:40 صبح
سلام
دوستان لطفا اگه میشه یکی که بلد هست این سوال رو جوا بده
هر کدوم از انواع پروژه ها ی زیر در C++‎‎‎‎‎‎‎ چکاری میکنن و تفاوت هاشون چیه(توی Microsoft Visual C++‎‎‎‎‎‎‎.Net)؟
Win32 Console Application
MFC Application
Win32 Project
Empty Project
ATL Project
MFC DLL
Windows Forms Application این یکی با ویندوز فرم سی شارپ چه تفاوتی داره؟
CLR Console Application
CLR Empty Project
Class Library اینو میدونم
Custom Wizard
Makefile Project
MFC ActivX Control این رو هم ففقط میدونم ActivX Control چیه ولی MFC رو نمیدونم
Test Project
Windows Forms Control Library
ممنون میشم اگه کسی جواب اینا رو بهم بده و یه سوال جدا دیگه و اونم اینکه توی سی پلاس پلاس برا سیستم های 64 بیتی هم میشه برنامه نوشت یا نه؟
با سپاس Spaceman

خب طور خلاصه بخوام توضیح بدم به صورت زیر خواهد بود...

Win32 Console Application
برنامه نویسی کنسولی که به شما اجازه برنامه نویسی در محیط کنسول رو میده (برای کد نویسی های جزئی مثل ورود و خروج یک سری اطلاعات به کار میاد)

MFC Application
در این محیط شما میتونید برنامه نویسی برای ساخت نرم افزار رو انجام بدین ولی باید دقت کنید که این محیط کاملا از کتابخانه های انحصاری و بنیادی مایکروسافت استفاده میکنه.


Win32 Project
این محیط هم مثل محیط MFC اجازه میده تا توسط کتابخانه های مایکروسافتی با کمی تفاوت برنامه نویسی کنید که معمولا یک چیزی مثل محیط کنسولی به حساب میاد.


ATL Project
این هم مثل دو محیط بالا هستش ولی با کمی تفاوت که در این محیط از کتابخانه های منتخب مایکروسافتی (کتابخانه های خاص و الگو) استفاده میشه.

MFC DLL
همون محیط MFC هستش با تفاوت اینکه اجازه DLL نویسی رو به صورت Wizard میده.


Windows Forms Application
بر گرفته شده از کلاس رابط GUI کلاس رابط در مایکروسافت هستش که اجازه تولید محیط گرافیکی و ساخت نرم افزار رو میدهد و همچنین شامل کلاس های انحصاری و منتخب مایکروسافت هستش. در رابطه با فرقش با C#‎‎‎‎‎‎ اینه که اونجا کد نویسی با زبان C#‎‎‎‎‎‎ هست اینجا با C++‎‎‎‎‎‎ هر دو Managed هستند بر پایه .NET مدیریت شده هستند و به هیچ عنوان کیفیت و قدرت واقعی C++‎‎‎‎‎‎ رو در این محیط نخواهید دید.


CLR Console Application
محیط برنامه نویسی کنسول مثل گزینه اول هستش با تفاوت این که این محیط هم مدیریت شده هست بر پایه .NET برنامه نویسی میشه.

CLR Empty Project
محیط برنامه نویسی بر پایه .NET که از صفر خودتون فایل های مورد نیاز رو باید ایجاد کنید.

Custom Wizard
مشخصه...یک سری مراحل الگو در اختیار شما قرار میده و میتونید توسط این نوع پروژه خودتون رو مشخص کنید.

Makefile Project
یک سری مراحل الگو در اختیار شما قرار میده تا در محیط VS پروژه رو برای بیلد شدن پیکربندی کنید.


MFC ActivX Control
این محیط رو باهاش کار نکردم ولی فکر میکنم همون نوع Active x هستش ولی برای محیط MFC چون با توجه با اینکه کلاس های مایکروسافتی انحصاری هستند برای همین هم به عنوان تولید Active x نوع انحصاری اون رو فراهم کرده اند.


Test Project
اینم که مشخصه یک محیط برای تست و آزمایش پروژه های نوشته شده توسط VS آماده سازی میکنه.


Windows Forms Control Library
یک سری کتابخانه و قالب های تخصصی برای طراحی کنترل در محیط Windows Forms رو در اختیار شما قرار میدهد.

ممنون میشم اگه کسی جواب اینا رو بهم بده و یه سوال جدا دیگه و اونم اینکه توی سی پلاس پلاس برا سیستم های 64 بیتی هم میشه برنامه نوشت یا نه؟


بله میتوانید...

ولی تا جایی که به خاطرم میاد جناب عالی بارها در رابطه با قابلیت های C++‎‎‎‎‎‎ سوال کردید و بسیار شفاف راهنمایی کردیم و در نهایت رفتین دنبال C#‎‎‎‎‎‎ و کلا دات نت نویسی.... الآن هم با این سوال ها فکر میکنم مایلید با C++‎‎‎‎‎‎ کارهایی انجام بدین.
برای اینکه ساده و شفاف توضیح بدم اینطور میتونم بگم....

برای اینکه از قابلیت های واقعی و استاندارد C++‎‎‎‎‎‎ استفاده کنید همه این گزینه هارو بزارید کنار کلا این MFC بگیر برو تا Win32 همشون در انحصار مایکروسافت هست و تمام کلاس ها و سبک کد نویسی رو طوری تغییر داده که هیچ طعمی از سبک و شیوه خود C++‎‎‎‎‎‎ مشخص نیست و این کار یعنی سلام C++‎‎‎‎‎‎ :چشمک:

پیشنهاد من اینه برای کد نویسی و استفاده از قدرت واقعی C++‎‎‎‎‎‎ برید سراغ کتابخانه های اصلی و عمومی این زبان مثل : Boost , Qt , wxWidget , Poco و ....
محیط قدرتمند طراحی نرم افزار در C++‎‎‎‎‎‎ هم Qt Creator هستش دنگو فنگ برنامه نویسی در سبک MS رو نداره و کاملا میتونید برنامه نویسی Native رو بدون هیچ کمو کاستی انجام بدین ! یکی از دلایل اینکه میگم دنبال MS نروید همین محدودیت و سیاست پنهانش هست... برای مثال شما این محیط ها رو یاد بگیرید در نهایت فقط میتونید در محیط ویندوز برنامه نویسی کنید هرچقدر هم سعی و تلاش کنید هیچوقت نمونه ای مثل برنامه های جذاب و قدرتمندی که به زبان C++‎‎‎‎‎‎ نوشته شده اند رو نمیتونید پیاده کنید و همیشه وابسته کتابخانه های مایکروسافتی خواهید بود نه کتابخانه های آزاد و عمومی C++‎‎‎‎‎‎ که در تمامی پلتفرم ها موجود هست.

خلاصه... اگه هدفتون پی بردن به تمامی قابلیت های C++‎‎‎‎‎‎ هستش پیشنهاد من استفاده از کتابخانه های اصلی C++‎‎‎‎‎‎ هستش که انحصاری نیستند و همه اونها Cross Platform هستند.

موفق باشید.

NASA's Spaceman
سه شنبه 30 دی 1393, 21:26 عصر
ممنون فقط یکمی گیج شدم
کدوم یکی محیط Qt Creator هست؟
و بابت اینکه چند بار تا الان سوال کردم ولی بازم سی شارپ رو ادامه دادم بخاطر یه سری کارایی بود که خیلی زمان بر و سخت بودند ولی الان دیگه کمتر کار دارم و میخوام C++ رو جدی شروع کنم و با سی پلاس پلاس میخوام برنامه نویسی سخت افزار رو انجام بدم و سی شارپ هم برنامه نویسی ویندوز
با سپاس Spaceman

کامبیز اسدزاده
سه شنبه 30 دی 1393, 21:49 عصر
ممنون فقط یکمی گیج شدم
کدوم یکی محیط Qt Creator هست؟
و بابت اینکه چند بار تا الان سوال کردم ولی بازم سی شارپ رو ادامه دادم بخاطر یه سری کارایی بود که خیلی زمان بر و سخت بودند ولی الان دیگه کمتر کار دارم و میخوام C++‎ رو جدی شروع کنم و با سی پلاس پلاس میخوام برنامه نویسی سخت افزار رو انجام بدم و سی شارپ هم برنامه نویسی ویندوز
با سپاس Spaceman

سلام

برای شروع با محیط Qt Creator یک سری آموزش ها قبلا دادم بهتون کمک میکنه : http://barnamenevis.org/showthread.php?436304-%D9%85%D8%B9%D8%B1%D9%81%DB%8C-%D9%88-%D8%A2%D9%85%D9%88%D8%B2%D8%B4-C-%E2%80%8E%E2%80%8E-Qt-%D8%A8%D9%87-%D8%B5%D9%88%D8%B1%D8%AA-%DA%AF%D8%A7%D9%85-%D8%A8%D9%87-%DA%AF%D8%A7%D9%85

سعی کنید توضیحات رو برای اشنا شدن با محیط این IDE مطالعه فرمایید.
البته لینک مربوط به جدیدترین نسخه Qt رو هم به روز رسانی کردم به 5.4 که آخرین نسخه ریلیز شده هستش که از C++ 11 به خوبی پشتیبانی میکنه.