PDA

View Full Version : انتخاب محیط برنامه نویسی



Sharif Lotfi
سه شنبه 06 فروردین 1387, 08:31 صبح
سلام
من قبلا (زمان Dos خدا بیامرز) با ++C برنامه می نوشتم. خیلی هم محیط کامپایلر و قدرت این زبان رو دوست داشتم.
بعدنا که ویندوز اومد رفتم سراغ VB.Net , VC#.net ولی حجم برنامه هام خیلی زیاد میشه و مثلا برای ساخت setup یه برنامه ساده (یه فرم و یه دکمه) و اجرای اون توی کامپیوتر مقصد یه دفعه می بینی نیاز به دات نت فریم ورک پیدا میشه که یکم برام ثقیله.
میخوام بپرسم آیا اگه بخوام با همون زبان ++C ولی با امکانات ساخت یه پنجره و یه دکمه و ... (برنامه تحت ویندوز) کار کنم باید توی محیط MFC برنامه بنویسم یا با همون ++C هم میشه برنامه های تحت ویندوز و ساخت فرم و ... رو انجام داد .
ممنون میشم راهنماییم کنین .
ضمناً برای شروع کار و یاد گیری محیط برنامه نویسی که میگین لینک یا مرجعی رو بهم معرفی کنین.

A_Salimi
سه شنبه 06 فروردین 1387, 21:52 عصر
سلام

نظر شخصی من اینه که کار کردن با mfc و در کل محیط و اینترفیس ویژوال در کل راحتر و معقولانه تره چون در اینجا ابزارهای واقعا خوبی هست و در کل محیط توسعه یافته و قدرتمندی (مثل محیط editor و debugger قدرتمند) داره ضمن اینکه ابزارهایی مثل SDK هم میتونن به شما کمک کنن .
ضمن اینکه اگه با ویژوال سی 6 کار کنید حجم برنامه ها بعد از Bild و کامپایل نسبت به ویژوال (مثلا 2005 ( خیلی پایینتره (تجربه شخصی)
برای شروع هم کتابهای مهندس جعفر نژاد خیلی خوبن .

Nima_NF
چهارشنبه 07 فروردین 1387, 02:10 صبح
چندین راه برای این کار دارید:

Win32
MFC
VCL توسط C++Builder
و یا سایر تولکیت های cross-plaform مثل Qt و Wxwidgets و ...

در تمامی شیوه های فوق شما از همان زبان C++/C استفاده می کنید و در کنار آن از توابع گرافیکی و API های همان شیوه برای ارتباط با سیستم عامل استفاده خواهید کرد. (یعنی مثلا برای فراخوانی کلاس های MFC و نوشتن برنامه خود از همان ++C استفاده می کنید)

انتخاب هر کدام از این انواع بستگی به کار مورد نظر شما دارد و اینکه می خواهید چقدر وقت صرف یادگیری آن ها کنید. در هر حال دیگر باید برنامه نویسی گرافیک در کنسول را فراموش کنید و به یکی از این شیوه ها روی بیاورید.
به عنوان مثال برنامه های Win32 و MFC چون Native و فوق العاده کم حجم هستند در مواقع مورد نیاز فقط با کپی کردن چند dll کم حجم در فولدر برنامه یا نصب اتومات آن ها ، همراه می توانید از برخی از جدید ترین قابلیت ها نیز برخوردار شوید.
همین طور توسط تولکیت های cross-platform نیز با توجه به native بودن حجم فقط به مقدار بسیار کمی افزایش خواهد یافت ، البته بسیار کمتر از دات نت.

قبل از ادامه سوال ، حتما مقاله زیر را مطالعه کنید تا فرق این شیوه ها را فراگیرید، ضمن در انتهای مقاله نیز لینکی به منابع و کتاب ها قرار داده شده است :
http://barnamenevis.org/forum/showthread.php?p=482144#post482144

موفق باشید

.:KeihanCPU:.
پنج شنبه 30 خرداد 1387, 21:25 عصر
من با VB برنامه مینویسم,میخوام یه زبان قدرتمند دیگه کار کنم که ویژوال باشه مثل VB
یه سوال دیگه کسی مورد D اطلاعات داره؟

Nima_NF
جمعه 31 خرداد 1387, 00:20 صبح
من با VB برنامه مینویسم,میخوام یه زبان قدرتمند دیگه کار کنم که ویژوال باشه مثل VB
هر زبان برنامه نویسی در جای خاص خودش بهترین هست و همه چیز بر می گردد به اینکه برنامه نویسی شما در چه زمینه ای هست؟ و بدون آن نمی توان راهنمایی چندانی کرد.

زبان های تحت VC که MFC و win32 دو شیوه اصلی آن هستند برنامه نویسی native سیستم عامل هستند و نهایت کارآیی و قدرت را دارند ولی زمان زیادی هم برای توسعه نیاز دارند (همچنان برای توسعه نرم افزار های تجاری در سراسر دنیا استفاده می شوند) و برنامه نویسی با آن ها به سادگی VB یا #C نیست.
مثلا اگر هدف شما برنامه هایی است که به کارآیی چندانی احتیاج ندارند (مثل سیستم های اداری و پایگاه داده ای)، تحت .Net بودن هم برای شما مهم نیست و همین طور قصد برنامه نویسی برای سایر سیستم عامل ها را هم ندارید، آنگاه بهترین انتخاب یکی از زبان های تحت دات نت مثل #C هست، تا در سریع ترین زمان پروژه به انجام برسد.

mehdi.mousavi
شنبه 22 تیر 1387, 23:59 عصر
سلام
من قبلا (زمان Dos خدا بیامرز) با ++C برنامه می نوشتم. خیلی هم محیط کامپایلر و قدرت این زبان رو دوست داشتم. بعدنا که ویندوز اومد رفتم سراغ VB.Net , VC#.net ولی حجم برنامه هام خیلی زیاد میشه و مثلا برای ساخت setup یه برنامه ساده (یه فرم و یه دکمه) و اجرای اون توی کامپیوتر مقصد یه دفعه می بینی نیاز به دات نت فریم ورک پیدا میشه که یکم برام ثقیله.
میخوام بپرسم آیا اگه بخوام با همون زبان ++C ولی با امکانات ساخت یه پنجره و یه دکمه و ... (برنامه تحت ویندوز) کار کنم باید توی محیط MFC برنامه بنویسم یا با همون ++C هم میشه برنامه های تحت ویندوز و ساخت فرم و ... رو انجام داد . ممنون میشم راهنماییم کنین .
ضمناً برای شروع کار و یاد گیری محیط برنامه نویسی که میگین لینک یا مرجعی رو بهم معرفی کنین.


سلام.
MFC به نظر من یکی از برجسته ترین Framework هایی هستش که تا به امروز مایکروسافت ایجاد کرده. وقتی وارد جزییات و زیربنای این Framework میشید، کلاسها، متدولوژیها و تکنیکهای برجسته ای رو میبینید که جدا میتونه سکوی پرتابی برای یه برنامه نویس عادی باشه. (به شرط اینکه جزییات پیاده سازی اونو درک کنید).

از طرف دیگه Win32 هستش، که به شما کلیه امکانات مورد نظرتون رو برای ساخت و طراحی یه Application میده. اما استفاده از این محیط دانش و دقت زیادی رو میطلبه... هنگام استفاده از MFC برنامه شما باید statically یا dynamically به DLL های MFC لینک بشه، اما در Win32 شما این محدودیت رو ندارید. (اگر بشه اسمش رو محدودیت گذاشت)!

در هر حال در بسیاری از مواقع در برنامه های MFC باید از Win32 استفاده کنید، چون کلیه API های Win32 حاوی Wrapper ای در MFC نیستن. بعنوان مثال از TAPI در MFC پشتیبانی نمیشه و 1001 چیز دیگه. لازم بذکر هستش که هر کدوم کاربرد خودشون رو دارن و بسته به plan اجرایی ممکنه از یکی استفاده بشه و از دیگری نشه. تازه در بسیاری از موارد بعنوان کلاسهای کمکی ممکنه از STL هم استفاده بشه...

راه سوم WTL هستش، Windows Template Library که اونهم Framework ای هستش که برای طراحی Windows Application ها و Component های UI استفاده میشه. جزییات بیشتر در این زمینه رو میتونید تو این سایت (http://sourceforge.net/projects/wtl) ببینید.

بدون شک بهترین کتاب برای Win32 کتاب آقای Charles Petzold هستش، که اونو پدر ویندوز میدونن. نام این کتاب Programming Windows (http://www.amazon.com/Programming-Windows%C2%AE-Fifth-Microsoft/dp/157231995X/ref=sr_1_3?ie=UTF8&s=books&qid=1215892135&sr=1-3) هست که واقعا کتاب برجسته ایه.

در مورد MFC، کتاب آقای Jeff Prosise رو حتما مطالعه کنید. نام این کتاب Programming Windows with MFC, Second Edition هستش و میتونید توضیحات بیشتر در این مورد رو در این سایت (http://www.amazon.com/Programming-Windows-Second-Jeff-Prosise/dp/1572316950/ref=pd_bbs_sr_2?ie=UTF8&s=books&qid=1215892427&sr=1-2) ببینید.

کتاب Inside Visual CPP آقای david kruglinski هم میتونه روشهای دیگه ای رو بهتون یاد بده، اگر چه تا اواسط کتاب کاملا گیج و متحیر خواهید بود. (البته این کتاب رو من تقریبا ده سال پیش خوندم، اما یادمه که این کتاب کاملا منو سردرگم کرده بود، چون بر خلاف کتابهای دیگه این کتاب بر اساس مثالها پیش میرفت و در مورد جزییات صحبت نمیکرد).

در هر حال، اگر از MFC استفاده کردین، حتما کتاب Programming Windows که در بالا به اون اشاره کردم رو هم بخونید. MFC بدون دونستن Win32 ارزشی نداره.

.:KeihanCPU:.
دوشنبه 24 تیر 1387, 11:51 صبح
کسی جواب ما رو نداد
کسی با D اشنایی داره؟

اوبالیت به بو
دوشنبه 24 تیر 1387, 12:27 عصر
کسی جواب ما رو نداد
کسی با D اشنایی داره؟



http://www.shabgard.org/doc/publish/program/article_42.shtml
http://www.shabgard.org/doc/publish/program/article_43.shtml
http://www.shabgard.org/doc/publish/program/article_44.shtml
http://www.shabgard.org/doc/publish/program/article_45.shtml
http://www.shabgard.org/doc/publish/program/article_46.shtml
http://www.shabgard.org/doc/publish/program/article_47.shtml

reyhaner
دوشنبه 24 تیر 1387, 22:42 عصر
man rahnamai mikham

.:KeihanCPU:.
دوشنبه 24 تیر 1387, 22:50 عصر
دوست عزیز ورودت به سایت برنامه نویس تبریک میگم
لطفا از زبان فارسی برای نوشتن استفاده کن
در چه رابطه راهنمایی میخوای؟

reyhaner
دوشنبه 24 تیر 1387, 23:04 عصر
من ترم 1 نرم افزارم.هیچی ازc نمیدونم.17 مردادم یاید پروژه تحویل بدم.نرم افزارc تحت ویندوز رو میخوام.از کجا میتونم دانلود کنم؟؟؟؟؟؟؟

Nima_NF
سه شنبه 25 تیر 1387, 00:59 صبح
من ترم 1 نرم افزارم.هیچی ازc نمیدونم.17 مردادم یاید پروژه تحویل بدم.نرم افزارc تحت ویندوز رو میخوام.از کجا میتونم دانلود کنم؟؟؟؟؟؟؟
احتمالا منظور شما کامپایلر زبان C هست:
1) کامپایلر قدرتمند Visual C++ 2008 express (http://www.microsoft.com/express/vc/)(رایگان) (http://www.microsoft.com/express/vc/)

2) IDE با نام ++DevC که کامپایلر آن minGW است:(کد باز)
http://www.bloodshed.net/devcpp.html

اگر با جستجو به جواب خود نرسیدید لطفا با ایجاد یک تاپیک تازه در بخش خودش سوال خود را بپرسید.

موفق باشید

user68
جمعه 01 آبان 1388, 09:56 صبح
با سلام ایا میشه برنامه های c رو تو محیط c++ اجرا کرد؟
با تشکر

Nima_NF
جمعه 01 آبان 1388, 22:43 عصر
با سلام ایا میشه برنامه های c رو تو محیط C++‎ اجرا کرد؟
با تشکر
بله.
برای اطلاعات بیشتر تاپیک اعلان کانپایلرها در بخش C/C++ مراجعه کنید.

جهت تذکر: فایل ها با پسوند c به جای cpp خودکار به صورت c کامپایل می شوند.