# Native Code > برنامه نویسی با C > برنامه نویسی با MFC و ++Visual C > گفتگو: ایا MFC مرده است ؟!!!

## pckho0r

راستش برام سواله که چرا برنامه نویسی با استفاده از MFC اینقدر به حاشیه رونده شده و تقریبآ در هیچ جایی هیچ اسمی ازش برده نمیشه در حالی مایکروسافت به طور مداوم و مستمر به توسعه اون ادامه میده ؟!!

*ایا MFC مرده است ؟!*

جالب اینجاست که این امر حتی در خود امریکا هم کم و بیش وجود داره ! کافیه به سایت امازون مراجعه کنید و تعداد کتابهایی که به اموزش این شیوه برنامه نویسی می پردازند رو شمارش کنید  ، 90 درصد این کتابها تاریخ چاپشون به قبل از سال 2001 برمیگرده و عملآ میشه گفت که بعد از سال 2005 هیچ کتابی در این زمینه تالیف نشده !!! مگر 2-3 نمونه انگشت شمار که اون هم به صورت مختصر فصلی از کتاب رو به این امر اختصاص دادن !

سایت ها و وبلاگ های بسیار کمی (انگلیسی و فارسی) به طور مرتب مطلبی در این رابطه می نویسند ؟!

اگه واقعآ MFC  اینقدر کم کاربرده چرا مایکروسافت کماکان اون رو توسعه میده ؟! ایا تنها برای حفظ کاربران قدیمی است ؟! چه نرم افزارهایی رو میشناسید که در حال حاظر با استفاده از MFC توسعه داده میشن ؟

----------


## مرتضی پیروزی

سلام دوست عزیزم؛
MFC نمرده. هنوز خیلی ها ازش استفاده زیادی میکنن.



> در حالی مایکروسافت به طور مداوم و مستمر به توسعه اون ادامه میده ؟!!


خود این دلیل محکمی بر تقاضای بالای اون هست! مایکروسافت خیلی تلاش کرد برنامه نویسان MFC رو بکشونه به سمت دات نت. ولی همچنان ازش استفاده شد. به عبارت بهتر، پشتیبانی مایکروسافت از MFC داره بهش جبر میشه! که نشون دهنده اینه که مایکروسافت در برابر عده زیادی از کاربران باید پاسخگو باشه.



> جالب اینجاست که این امر حتی در خود امریکا هم کم و بیش وجود داره ! کافیه به سایت امازون مراجعه کنید و تعداد کتابهایی که به اموزش این شیوه برنامه نویسی می پردازند رو شمارش کنید ، 90 درصد این کتابها تاریخ چاپشون به قبل از سال 2001 برمیگرده و عملآ میشه گفت که بعد از سال 2005 هیچ کتابی در این زمینه تالیف نشده !!!


این دلیل بر مردنش نیست. به خاطر اینه که MFC و یا کلاً ++C ، به بلوغ رسیده. شما مطالب یک کتاب سال 98 رو هم با اندکی تغییر میتونید برای ویندوز 7 استفاده کنید. بر خلاف دات نت،که هر از چندگاهی یک نسخه جدید براش ارائه میشه و به دنبال اون کتاب های جدید تر چاپ میشه.
موفق باشید

----------


## pckho0r

خوشحال میشم اگه دوستان دیگه هم در بحث شرکت کنند و نظر خودشون رو بگن

----------


## Jaguar

نه. این سوال جدیدی نیست و خیلی وقت پیش پرسیده می شد. (12 13 سال پیش) 
تا زمانی که جایگزینی برای آن از سوی مایکروسافت ارائه نشود نمی توان گفت که مرده است.

----------


## مصطفی ساتکی

به نظر من که مرده .اگه نمرده باشه ازش پشتیبانی میشه.کامپایلرش هم شدید bug داره.من بعضی وقت ها از کار کردن با mfc متنفر میشم چیکار کنیم مجبوریه.

----------


## r00tkit

> به نظر من که مرده .اگه نمرده باشه ازش پشتیبانی میشه.کامپایلرش هم شدید bug داره.من بعضی وقت ها از کار کردن با mfc متنفر میشم چیکار کنیم مجبوریه.


برادر پشتیبانی می شه : *ریبون* ,  *conference*, *blog* و......

----------


## Jaguar

> به نظر من که مرده .اگه نمرده باشه ازش پشتیبانی میشه.کامپایلرش هم شدید bug داره.من بعضی وقت ها از کار کردن با mfc متنفر میشم چیکار کنیم مجبوریه.


چطور از MFC پشتیبانی نمی شود؟ شاید اخبار مایکروسافت و نسخه های جدید ویژوال استودیو غیر Express را ندیده باشید. 
چرا کامپایلر آن باگ دارد و از نوع شدید؟ کامپایلر آن که همان MSVC است و خوب هر کامپایلری باگ دارد. مثلا یک باگ را در STL متوجه شدم و در نسخه های 2005 و 2008 بود و حالا در 2010 بر طرف شده است. شاید منظورتان کامپایل کردن MFC باشد.
کنجکاوم بدانم چه کسی مجبورتان کرده با آن برنامه بنویسید. برنامه های قدیمی؟ نیاز مندی های سیستم ، کارفرما؟ ...

----------


## pckho0r

ایا سرمایه گذاری بر روی یادگیری MFC به جهت برنامه نویسی Native کاری عاقلانه است ؟! یا اتلاف وقت!

به شخصه علاقه مند به برنامه نویسی Native هستم و دید شغلی و تجاری هم به برنامه نویسی ندارم اما مایلم بدونم که به لحاظ اینده نگری چه مسیری مناسب تره؟
البته انتخاب ها هم محدود هستند !

Delphi

C++‎‎ Builder _ VCL

Visual C++‎‎ _ MFC

C++‎‎ _ QT

C++‎‎ _ Win32

با دلفی چندان میانه خوبی ندارم و از سینتکسش لذت نمی برم ، کدنویسی به صورت Win32 هم سخت و طاقت فرساست !

به نظر شما بین سه گزینه *C++‎‎ builder _ VCL* و *Visual C++‎‎ _ MFC* و *C++‎‎ _ QT* کدوم یکی 
مناسب تر 
ساده تر
پشتیبانی بهتر
قابلیت توسعه پذیری بالاتر
ابزارها و کامپوننت های به روزتری

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

البته نظر خودم Visual C++‎‎ _ MFC بود و در درجه دوم C++‎‎ builder _ VCL ولی با جستجویی کردم به نظر میرسه MFC شاید در زمان خودش راهکاری برای ساده کردن برنامه نویسی ویندوز بوده ولی اکنون و در سال 2010 یکی از سخت ترین روش هاست و پیچیدگی های زیادش یه مقدار گیج کننده ست ! و البته هیچ هم بعید نیست که در نسخه بعدی ویژوال استودیو حذف بشه !!!

ممنون میشم که دوستان بنده رو راهنمایی کنند

----------


## مرتضی پیروزی

سلام دوست عزیزم؛
اگر واقعاً دید تجاری ندارید، سی پلاس پلاس به درد نمیخوره.چون باید زمان و انرژی زیادی رو از دست بدید، و در مقابل چیز خاصی هم دست شما رو نمیگره. واقعیت اینه که در سال 2010 سی پلاس پلاس اصلاً تفریح خوبی نیست.
در مورد آینده نگری هم، به نظر من MFC آینده چندان روشنی نداره! اکثر کسانی رو که دیدم، به علت استارت پروژه با MFC وبه خاطر بزرگ بودن پروژه و همچنین به دلیل طول عمر بالای زمان استارت پروژه، ناچار هستند که با MFC دست و پنجه نرم کنند.
چون علیرغم قدرت بالای اون، بسیار زمخت و بد دسته. به نظر بنده اگر تفریحی میخوای کار کنی، طراحی وب لذت بیشتری رو به ارمغان میاره.
موفق باشی

----------


## مصطفی ساتکی

> کنجکاوم بدانم چه کسی مجبورتان کرده با آن برنامه بنویسید. برنامه های قدیمی؟ نیاز مندی های سیستم ، کارفرما؟ .


شرایط کاری حاکم

----------


## r00tkit

> اگر واقعاً دید تجاری ندارید، سی پلاس پلاس به درد نمیخوره.چون باید زمان و  انرژی زیادی رو از دست بدید، و در مقابل چیز خاصی هم دست شما رو نمیگره.  واقعیت اینه که در سال 2010 سی پلاس پلاس اصلاً تفریح خوبی نیست.


برادر این حرف رو نزن  

این وسط Qt و با امدن رویایی Qml دیگه این حرف های شما  کاملا" نتیجهی  اشنا نبودن با تکنولوژی های جدید رو نشون می ده

قصد توهین ندارم

----------


## eshpilen

> به شخصه علاقه مند به برنامه نویسی Native هستم


مد شده همه میگن Native، ولی واقعا این حرف بر چه اساسی هست؟ آیا دلیل معقولی داره؟
اگر منظورتون بخاطر پرفورمنس هست، باید بگید زبانها و فناوریهای با پرفورمنس بالا. چون قاعده و سندی وجود نداره که نشون بده غیر Native نمیتونه پرفورمنس کافی، برابر یا حتی بیشتر داشته باشه. ضمنا این به کاربرد برمیگرده که واقعا نیاز به پرفورمنس بالاتر داشته باشید یا نه.
اگر منظور امکان برنامه نویسی سیستمی هست، باید همین اصطلاح رو بگید، چون اصطلاح Native ایجاد ابهام در منظور شما میکنه.
بطور کلی هم یک زبان همه جا و برای هرکاربردی پاسخگو نیست. چون هرجا یک خصیصه نیاز هست و هرجا و برای هر کاربردی یک مجموعه زبان و ابزار متداول و در دسترس هست (که البته اینم خودش دلیل داره و با همون خصایص هم ارتباط قوی داره و یکسری مسائل قانونی و تجاری هم میتونن وجود داشته باشن).
البته یادگیری Native ها لازم هست بعنوان برنامهء آموزشی و برای پیدا کردن بینش و قابلیت های گسترده، اما این دلیل نمیشه مثلا ما همیشه بیایم هر برنامه ای رو که با PHP (وب) یا سی شارپ (وب/دسکتاپ) میشه خیلی سریعتر و راحتتر نوشت، با سی++ بنویسیم.
از نظر لذت برنامه نویسی هم وقتی بقدر کافی با جزییات برنامه نویسی Native و سیستمی سر و کله زدی و کلیت دانش و مهارتش رو بدست آوردی، میبینی که اصرار در برنامه نوشتن در چنین سطحی دیگه اتلاف وقت و انرژی هست چون دانش و مهارت اساسی ای رو به آدم اضافه نمیکنه در عین اینکه وقت و انرژی زیادی رو از آدم میگیره که میتونست صرف یادگیری چیزهای جالب و کاربردی دیگری بشه که مجموعهء توانایی ها و تولیدات شما رو افزایش بیشتری میدادن. اونوقت هست که ارزش و لذت کدنویسی با زبانهای حتی اسکریپتی مثل PHP که درمقابل هیبت سی++ چیز خاصی نداره برات روشن میشه!
اگر Native به خودی خودش مزیت بزرگی بود و همه جا بدرد میخورد، مثلا در وب الان بیشتر حرفه ایها باید با سی++ برنامه مینوشتن بجای زبان اسکریپتی ساده و تک منظوره ای مثل PHP.
امکانات سطح بالا و راحتی و سرعت کدنویسی ای که زبانهایی مثل سی شارپ و فریمورک دات نت در اختیار میذارن، برای کاربردهای سطح بالا مزیت واقعا بزرگی محسوب میشه. وقتی برنامهء شما بزرگ و پیچیده شد، وقتی پیاده سازی منطق تجاری و الگوریتم برنامه خودش کار بزرگ و دشواری بود، وقتی برنامهء شما توزیع شده بود، وقتی یک بخش از اون وب بود یک بخش از اون شبکه یک بخش از اون دسکتاپ، اونوقت کم کردن جزییات نامربوط و سیستمی و حجم کدنویسی شما و بالا بردن امنیت و خودکار بودن مسائل جانبی و عدم نیاز برنامه نویس بر تمرکز و دقت و تست موارد فنی خود سیستم رایانه و طرز اجرای برنامه، بعنوان یک مزیت بسیار بزرگ دیده خواهد شد که تمام مسائل دیگر رو تحت الشعاع قرار میده.

البته اینا که گفتم شرطش رو هم گفتم که آدم باید قبلا بقدر کافی با کدهای Native و برنامه نویسی سطح پایینتر و احیانا سیستمی آشنا شده باشه و دانش و مهارت پایهء کافی رو بدست آورده باشه. وگرنه بله یادگیری و کار کردن با زبانهایی مثل سی و سی++، نه تنها لذت بخش هست (برای خوره ها و آدمهایی که دوست دارن همه چیز رو از اساس یاد بگیرن و بتونن) بلکه برای یادگیری و موفقیت در برنامه نویسی در هر سطحی، تاثیر بسیار مثبتی داره بنظر بنده. یه جورایی یادگیری این چیزهای سخت باعث میشه یادگیری و برنامه نویسی های سطح بالاتر برای آدم خیلی راحتتر بشه و برای حل مسائل فقط به چیزهایی که در برنامه نویسی های سطح بالا آموزش داده شده و در دسترس هستن محدود نشه. خیلی جاها دانش سطح پایین به آدم کمک میکنه و حتی گاهی به استفاده از زبانها و فناوریهای سطح پایین تر رجوع میکنیم.

----------


## r00tkit

جان من کوتاه بنویس سرم گیج رفت

----------


## eshpilen

> برادر این حرف رو نزن  
> 
> این وسط Qt و با امدن رویایی Qml دیگه این حرف های شما  کاملا" نتیجهی  اشنا نبودن با تکنولوژی های جدید رو نشون می ده
> 
> قصد توهین ندارم


Qt چیز خوبیه، ولی این مثلا آیا دردی از نیاز فرصت های شغلی و بازار کار ما رو دوا میکنه؟
من خودم یه کار خیلی خوب رو که تازه با پارتی کلفت گیرم اومده بود بخاطر اینکه با سی شارپ و دات نت آشنایی نداشتم از دست دادم. هرچند راه کارش چون دور بود و منم میخواستم از وقتم برای یادگیری چیزایی که میخوام استفاده کنم، بدم نیومد که اونطور شد  :لبخند گشاده!: 
بهرحال بلد بودن چیزای اضافه خیلی خوبه، اما آدم باید چیزهای اصلی و تقاضای بازار رو حتما بلد باشه (حداقل یکیش رو).
ضمنا Qt باوجود قوی و گسترده بودن و خوشدست بودن، بازهم به پای امکانات یک فریمورک بومی و رسمی نمیرسه برای برنامه نویسی روی ویندوز. از نظر راحتی و سرعت کدنویسی هم، باز سی شارپ/دات نت بحد قابل توجهی سرتر هست.
اینو کسی به شما میگه که خودش Qt کار کرده و رفرنس و خودآموزش رو هم کامل خونده و میدونه چه امکاناتی داره و نداره و کدنویسی توش چطور هست و حتی کارهایی در ارتباط با تکمیل Qt کرده که میتونید در تالار مربوطه در تاپیک های مربوطه مشاهده کنید. اینکه یه حرفی بزنیم و ادعایی بکنیم و بگیم فلان چیز و فلان امکان وجود داره، خیلی وقتا در عمل تفاوت زیادی میکنه و پارامترها و مشکلات متعددی پیش میان که آدم پیشبینی نکرده و کسی هم بهش نگفته و وقتی بهشون برمیخوره کسی هم نیست که کمک درست و حسابی ای بهش بکنه که مشکل راحت و سریع حل بشه (بعضی وقتا اصلا به بن بست کامل میخوره).
با پایتون هم به نظیر چنین مشکلاتی برخوردم و یه برنامه ای بود که هیچکس کوچکترین کمکی بهم نکرد که بفهمم چطور باید از لینوکس به ویندوز پورتش کنم. با اینکه یه برنامهء ساده و مختصر بیشتر نبود.
این مشکلات مسلما وقتی با یک فناوری بومی و رسمی کار میکنید خیلی کمتر احتمال بروز دارن. خوبی یه فناوری بومی و رسمی اینه که اینطور مسائل و محدودیت ها توش خیلی کمتر هست و هرچیزی که روی یک پلتفرم نیاز هست به احتمال خیلی زیاد توش هست و تست شده یا حداقل میشه راهکارش رو پیدا کرد.

با اینحال میگم که این چیزی از ارزشها و کاربرد فناوریهای دیگه کم نمیکنه. مثلا من خودم تازگی توی فکر بودم یه برنامه ای رو که قبلا با Qt نوشتم گسترش بدم. این برنامه نصفش با Qt هست و نصفش که تحت وب هست با PHP. یک دلیلی که میخوام این برنامه رو بازهم با Qt انجام بدم بخاطر این هست که دات نت روی هر سیستمی هنوز نصب نیست و من میخوام برنامم رو سریع و بدون وابستگی به اجزای خارجی بتونم به سادگی و سرعت روی هر سیستمی نصب و اجرا کنم (ولی این مشکل با فراگیر شدن ویندوزهای بعد از XP در آینده دیگه وجود نخواهد داشت). PHP هم همین خاصیت رو داره که روی بیشتر سرورهای اینترنت بخصوص سرورهای لینوکس هست و نصبش هم هرجایی کار ساده ای هست و کم حجمه.
البته یک دلیلش هم اینه که هنوز خوندن رفرنس کلاسهای دات نت رو تموم نکردم.
پرفورمنس برام تنها یک عامل جانبی و غیراساسی هست چون نیاز مهمی به پرفورمنس بالا ندارم در ارتباط با اون برنامه. بیشتر برام سرعت و راحتی کدنویسی و تکمیل بودن امکانات مورد نیاز ملاک هست.
خلاصه آدم هرچی بیشتر بلد باشه به نفعش هست و حداقل بعضی وقتا به کارش میاد. دیگه آدم محدود نیست. مثلا من روی لینوکس هم بخوام برنامه بنویسم میتونم از Qt استفاده کنم و یکی از دلایل انتخاب و یادگیری Qt برام همین امکان اپلیکیشن نویسی روی لینوکس و Open Source بودنش بود. مثلا پروژهء مونو هم هست برای لینوکس، اما ریچارد استالمن گفته از استفاده ازش پرهیز کنید!! منم که رفیق شفیق استالمن هستم (  :لبخند گشاده!:  ) و معتقدم نرم افزار آزاد باید رهبری و اتحاد خودش رو حفظ کنه!
آدمی که فقط یه چیز یا چنتا چیز محدود بلده، خودش هم محدود میشه. حتی سی++ هم زبانی برای همه جا و همه کار نیست. ضمنا فقط ممکن بودن نیستن که مهمه، به صرفه و بهینه بودن هم مهمه (که معیارش اغلب فقط از نظر پرفورمنس نیست).

----------


## eshpilen

> جان من کوتاه بنویس سرم گیج رفت


ای بابا دیر گفتی پست دوم رو هم زدم  :قهقهه:

----------


## pckho0r

خیلی ممنون و ظاهرآ بحث هم منحرف شد !

دلیل این که از دات نت خوشم نمیاد تغییرات گسترده اون در طول زمانه.(فقط همین !)

اصولآ ادمی تنوع طلب هست و خواستار تغییر و تحول و از ساکن بودن و تکرار بیزار ولی وقتی این تغییر و تحول سرسام اور میشه دیگه اون لذت خودشو از دست میده و تبدیل میشه به یک ماراتن که هر چی جلوتر میری خسته تر میشی !!!
ترجیح میدم زمانی به سراغ دات نت برم که به بلوغ خودش رسیده باشه.

هدفم از برنامه نویسی اینه که مثلآ یکی از زمینه های هوش مصنوعی رو انتخاب کنم و در اوقات فراقت روش کار کنم ، مطمعنآ اینطوری بعد چند سال در اون زمینه خاص میشه حرفی برای گفتن داشت. تا اینکه روزی 12 ساعت کار کنم و انبوهی از شاخه های برنامه نویسی رو همزمان با هم ادامه بدم (پایگاه داده ، دات نت، وب اپلیکیشن ، ویندوز اپلیکیشن ، طراحی وب ، انواع و اقسام متدها و مدل های توسعه و ...) و اخرشم نصفش رو بدون استفاده فراموش کنم و بخش زیادیش هم بعد از مدتی کهنه و قدیمی بشه!

----------


## eshpilen

> خیلی ممنون و ظاهرآ بحث هم منحرف شد !
> 
> دلیل این که از دات نت خوشم نمیاد تغییرات گسترده اون در طول زمانه.(فقط همین !)
> 
> اصولآ ادمی تنوع طلب هست و خواستار تغییر و تحول و از ساکن بودن و تکرار بیزار ولی وقتی این تغییر و تحول سرسام اور میشه دیگه اون لذت خودشو از دست میده و تبدیل میشه به یک ماراتن که هر چی جلوتر میری خسته تر میشی !!!


خواهی نخواهی رشتهء کامپیوتر همه جاش کم و بیش همینه.
آدم باید خودش رو به آپدیت شدن و یادگیری مداوم عادت بده.
الان مثلا حتی سی++ استاندارد جدید داره (C++‎‎‎0x).
اصلا توی همهء فیلدها همینطوره.
توی وب توی سمت سرور سمت کلاینت.
از چند سال پیش که من PHP و HTML و Javascript و اینا رو یاد گرفتم کلی چیزای جدید اومده و یکسری روشهای قدیمی تقریبا داره منسوخ میشه. منتها اینا فقط یه بخش هست و بصورت تدریجی هست و از یادگیری اولیه راحتتره و زمان کمتری میبره.
MySQL جدید میاد امکانات جدید داره.
هر روز استانداردهای قبلی آپدیت میشن و حتی فناوریها و استانداردهای جدید مستقل و غیرمستقل میاد.



> ترجیح میدم زمانی به سراغ دات نت برم که به بلوغ خودش رسیده باشه.


بنظر میاد الان تاحد زیادی به این مرحله رسیده. حداقل اون پایه و اساس و شکل خودش رو تاحد زیادی بدست آورده. بعدشم روی هیچ چیزی در این فیلد نمیشه برای طولانی مدت اتکا کرد. بعد از چند سال یا ده سال، فرقی نمیکنه، میبینی یه دفه داستان عوض میشه. حالا زبان عوض نشه، فناوری عوض میشه و ممکنه یه زبانی که قبلا جواب میداده دیگه بهترین نباشه برای اون کار. چیزایی هم که شما الان یاد بگیری معمولا حداقل 50% اون برای چند سال دیگه هم به کارت میاد، تازه میتونه خیلی بیش از این باشه.
الان که زمان سی شارپ و دات نت نسخهء 4 هست فکر میکنم بسیاری از تحولات خودش رو پشت سر گذاشته و دیگه در دوران نوجوانی نیست، اما بهرحال امکان توسعه توش زیاد هست و امکان تغییرات ساختاری هم هست (ولی کمتر از قبل).
بهرحال من توی این رشته فهمیدم که نمیشه صبر کرد و چیز زیادی برای آینده ای بیش از چند سال قابل پیشبینی و تضمین کافی نیست. فقط باید با شرایط همون روز و با حساب چند سال آینده ببینی چی بهتره و بری یاد بگیری و وقت و انرژی رو هدر ندی، چون اگر بخوای صبر کنی تقریبا هیچوقت شرایط ایدئالی که میخوای پیش نمیاد؛ این خود آدم هست که باید توان خودش رو افزایش بده و روحیهء همت و جنگندگی مداوم داشته باشه. البته اگر شما زبان و فریمورک دیگری رو در این مدت خوب یاد بگیری میشه گفت تاحد کافی از وقت و انرژی خودت استفاده کردی. من هم نمیگم حتما اول برو دات نت و سی شارپ یاد بگیر. خودم دات نت جزو آخرین مورد از یادگیری و مطالعه ای هست که توی یه برنامهء طولانی و بزرگ بود که چند سال تاحالا مدام روش کار کردم. قبل از اون عشق داشتم چیزای پایه ای و متنوع رو یاد بگیرم و محدود به یک شرکت و یک سیستم عامل نباشم. برنامه نویسی و جزییات سیستم رو هم میخواستم حتما بدونم؛ بخاطر همین مثلا یه کتاب درمورد اسمبلی هم مطالعه کردم که تمرینهایی هم داشت و انجام دادم (مثلا یک تابع malloc ساده رو با اسمبلی پیاده میکردی و چیزهای جالب دیگه ای هم داشت).
اینم که گفتم دات نت و سی شارپ، فقط میخواستم بگم طبق تجربهء من، یاد نگرفتن و کار نکردن با این فناوریهای جدید خصوصا که رسمی و بومی هم باشن، معقول نیست. چون پتانسیل و شانس موفقیت و فراگیری اونا خیلی بالاست و کلی امتیاز و پشتوانه پشتشونه. اگر الان بگی نه بدرد نمیخوره و سی++ بهتره یا حتی کافیه، به احتمال زیاد اشتباه میکنی و چند سال دیگه میبینی که داستان و شرایط دیگه اونی نیست که فکر میکردی همونه و به همون صورت باقی میمونه.
وگرنه بنظر من سی و سی++ رو باید یاد گرفت. و همینطور خیلی چیزای دیگه رو! البته اگر آدم شرایطش رو داشته باشه. اما اینکه فکر کنی اینا جایگزین کافی برای چیزی مثل دات نت و سی شارپ هستن، بنظر من منطقی نیست. حداقلش آدم خودش رو از خیلی مزایا و گسترده شدن توانش و فرصتهای شغلی بیشتر محروم کرده.



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


راستش من نمیدونم این هوش مصنوعی چیه و چرا ملت اینقدر بهش علاقه دارن. نمیدونم بیشتر اسم و اعتبار و شهرت داره یا واقعا میشه کارهای جالبی در این زمینه انجام داد و بازار خوبی داره. حتما خوبه دیگه  :لبخند گشاده!: 
به نظر من آدم باید به اولویت ها و توان خودش هم نگاه کنه. ممکنه بعضی رشته ها خیلی جالب باشن و حقوق بالایی به متخصصان اونها بدن، اما اونقدر سخت و طولانی باشه که تنها افراد معدودی شانس رسیدن به درجهء کافی رو داشته باشن.
من ترجیح دادم اول از کارهای استاندارد و پایه شروع کنم ولی در عین حال پایهء خودم رو هم برای توان حداکثری تقویت کنم، نه اینکه از ابتدا برم دنبال چیزهایی که آخرین و پیچیده ترین فناوریها و نظریه ها رو بکار میگیرن بدون اینکه قبلا موارد پایه ای و قدیمی علم رایانه و برنامه نویسی رو مطالعه کرده باشم.
بهرحال این نظر منه و شاید درست نباشه. شاید هم من اشتباه میکنم که فکر میکنم هوش مصنوعی چنین خصوصیاتی داره. واقعا تاحالا دنبالش نرفتم و چیز خاصی ازش نمیدونم. شاید چیز ساده ای باشه و بازار کارش هم خوب باشه.
بهرحال من خودم خیلی جاه طلب بودم و هستم در زمینهء یادگیری و توان و علم. اما جاه طلبی یک چیز هست و راه اصولی برای رسیدن به اون آرزوها چیز دیگه.



> تا اینکه روزی 12 ساعت کار کنم و انبوهی از شاخه های برنامه نویسی رو همزمان با هم ادامه بدم (پایگاه داده ، دات نت، وب اپلیکیشن ، ویندوز اپلیکیشن ، طراحی وب ، انواع و اقسام متدها و مدل های توسعه و ...) و اخرشم نصفش رو بدون استفاده فراموش کنم و بخش زیادیش هم بعد از مدتی کهنه و قدیمی بشه!


رشتهء برنامه نویسی و کامپیوتر همینش منو کشته که تمومی نداره و مرد میدان میطلبه.
اینجاست که تفاوت های افراد مشخص میشه. اون آدمی که همت و انگیزه و اراده و استعداد داره میتونه چیزهای خیلی بیشتری از افراد تنبل و افرادی که فقط دنبال پول هستن و روحیهء علمی ندارن یاد بگیره و کارهای بیشتری ازش بربیاد.
مثلا من بعد از چند سال مطالعهء مداوم نه تنها ناراحت نیستم، بلکه احساس قدرت و موفقیت و خردمند بودن میکنم، چون سعی کردم از ذره ذرهء وقت و انرژی خودم استفاده کنم و پیشرفت کنم و قوی تر بشم بجای اینکه عمر و انرژی خودم رو جای دیگه تلف کنم. خب این رشته هم که خوراک همچین هدفی هست، چون تقریبا تمام امکاناتی که لازمه در دسترس همگان هست و اونقدر گسترده و تقریبا پایان ناپذیر که بتونه برای هر آدمی در هر مدت و با هر ظرفیت و استعدادی خوراک تامین کنه و فقط همت و استعداد میخواد که یکی ازشون بهره برداری بکنه.
تمام چیزایی هم که تاحالا یاد گرفتم میتونم بگم حداقل 70% هنوز برام کاربرد دارن، ولی خیلی چیزا بهشون اضافه شده، نه اینکه اون قدیمی ها بدون کاربرد بشن و دیگه لازم نباشن. حتی همون DOS که فکر میکنیم مال قدیمه یادگیریش لازم بود و هست و الانم کسی اونو بلد نباشه از دانش و مهارت در یک فیلد که کاربردهای خودش رو داره محروم میمونه و همیشه در اون زمینه نقص و ضعف داره بنظر من. خودم به تجربه از این دانش هم بصورت عملی و امروزی و هم بصورت بینش و کمک در یادگیری چیزهای دیگر و چیزهای جدید استفاده کردم.
تازه حتی اگر بگی کاربرد عملی آموخته های گذشته حتی به 0% هم برسه، بازم اون بینش و قدرت ذهن و حافظه و اراده و سرعت و مهارتی که آدم در یادگیری پیدا کرده، ارزشش رو داره و جز این راهی نبوده و نیست. اگر میخواستم بگم چون اینا چند سال دیگه ممکنه منسوخ بشن پس وقت و انرژیم رو برای یادگیری اونا تلف نکنم، الان به هیچ کجا نرسیده بودم و شرایط هم هنوز همون بود که بود و فقط زمان و زبانها و فناوریها عوض شده بودن.
آدم وقتی مطالعه و یادگیری طبیعت ثانویه میشه براش، دیگه این کارا براش طبیعی هست و تازه احساس خوبی هم داره و احساس قدرت و برتری نسبت به دیگران بهش دست میده، چون تونسته خودش رو به حداکثر توان و ظرفیت ممکن برسونه درحالیکه دیگران پشت سدهای تنبلی و هراس و هدفهای کم ارزش موندن.
این رشته خوبیش برای من همین بود که فهمیدم آدم نباید یک ذره وقت و انرژی خودش رو تلف کنه و باید ارادهء خودش رو اینقدر تقویت کنه که بتونه از حداکثر توان ذهن و جسم و فرصتهایی که داره همیشه استفاده کنه. هر روز کاملتر و قویتر از دیروز. همیشه درحال یادگیری. همیشه در جریان. پایانی نیست. پایان تنها زمانی هست که انسان متوجه بشه به نهایت قابلیت ها و امکانهای وجودی خودش رسیده؛ اما من هنوز به اونجا نرسیدم و هرچی پیش میرم میبینم انگار بازم ظرفیت دارم و وقتی نگاه میکنم میبینم با طی کردن این راه، هر روز قویتر از قبل شدم و به مکان بهتری رسیدم و این روند همینطور بدون انقطاع ادامه داشته. حتی یک روز هم این قاعده تفاوت نکرده و پیشرفتم متوقف نشده.
انسان با جریان و جنگندگی دائمی هست که به تعالی روحی میرسه. به قدرت روان. به تسلط روح و ذهن بر جسم و محدودیت های مادی. نه اینکه بگم سوپرمن میشه، ولی میتونه خیلی فراتر از اکثر آدمهای عادی بره و برتری چشمگیری بدست بیاره و از خیلی ضعفها و رنجها دور بشه.
بقول شاعر راست میگه که « ز نیرو بود مرد را راستی، ز سستی کژی زاید و کاستی ».

البته اینو بگم که هیچکس از اولش اینقدر راحت این حرفا رو نمیزنه و منم اوایلش برام سخت بود و خیلی واقعیت ها رو قبول نمیکردم. اما سرانجام فهمیدم که این انسان هست که باید خودش رو با حقیقت تطبیق بده و وقتی این کار رو کرد میبینه که مزایاش براش خیلی بیشتر از این هست که در سکون باقی بمونه.

ما زنده به آنیم که آرام نگیریم، موجیم که آسودگی ما عدم ماست...

----------


## eshpilen

راستی این که میگید بطور همزمان کلی چیزهای مختلف رو یاد بگیریم، بنظر من اصلا روش مناسبی نیست.
من همیشه یک چیز رو از ابتداش شروع کردم و تا آخر رفرنسش یاد گرفتم و بعد شروع به یادگیری زبان یا مقولهء بعدی کردم.
اگر بطور همزمان بخواید چنتا زبان یا مقوله رو یاد بگیرید، بنظر من از چند نظر مضر هست یا کارتون بنحو قابل توجهی سخت تر و طولانی تر میشه. اولا که آدم اینا رو باهم قاطی میکنه در جریان یادگیری که نیاز به تمرکز و تمرین و بخاطرسپاری برای طولانی مدت داره. دوما مثلا اگر مورد A و B هرکدوم کلا به 3 ماه وقت برای یادگیری نیاز داشته باشن، شما دوتای اینها رو که همزمان شروع کنید بعد از 6 ماه دوتاش رو یاد میگیرید اما مثلا در ماه سوم هیچکدام رو بحد کافی و کامل بلد نیستید. درحالیکه مثلا اگر ابتدا A رو شروع کنید، در پایان ماه سوم A رو کامل بلدید اما از B هیچی نمیدونید و این بنظر من خیلی بهتر از اینه هردو رو نصفه بلد باشید. اگر A رو کامل بلد باشید احساس موفقیت و رضایت میکنید و میتونید کار عملی انجام بدید و انگیزهء بیشتری برای ادامهء یادگیری دارید. ضمنا برای شغل و فرصت درآمد هم شاید خیلی وقتها اینکه A رو زودتر کامل بلد بشید بهتر از این باشه که بعد از مدت دوبرابر به چنین جایی برسید که بتونید کار عملی انجام بدید.
من اول مثلا HTML یاد گرفتم. بعد دیدم توش CSS داره و CSS رو یاد گرفتم، بعد javascript و غیره و غیره. بعد رفتم سراغ سمت سرور و مخلفاتش (دقت کنید درمورد این فناوریهای وابسته، یک ترتیب یادگیری خاصی هم وجود داره که باید رعایت بشه؛ مثلا نمیشه یا بهینه نیست که Javascript رو قبل از HTML و CSS  یاد بگیریم). درمورد زبانهای دیگه مثل سی و فریمورک هایی مثل Qt و خیلی چیزای دیگه هم به همین صورت. البته در این بین مخلفات هم زیاد خوندم. مثلا مسائل امنیتی که به برنامه نویسی وب مربوط میشد و غیره. بهرحال هیچوقت حتی دوتا چیز نسبتا بزرگ و پیچیده رو همزمان با هم دنبال نکردم. و هربار هم این روش رو خواستم امتحان کنم دیدم چون سرعت پیشرفتم در دوتاش کند میشه انگیزه ام رو از دست میدم و یک مقدار هم احساس کردم یادگیری هرکدوم بصورت نوبتی سریعتر و پایدارتر هست.
ضمنا شما درمورد یادگیری یک مقوله یا زبان و فریمورک، هرچی سریعتر بتونید پیش برید بهتره از این نظر که بخشهای بعدی به قبلی ها ربط دارن معمولا و هرچی سریعتر به بعدیها برسید ارتباطها براتون روشن میشه و مطالب قبلی قبل از اینکه جزییات مهم اونا از یادتون بره براتون مفهوم و ساختار نسبت به مطالب بعدی پیدا میکنه و یک کلیت و بینش دقیقتر و کاملتری رو نسبت به کل اون مجموعه پیدا کرده و مطالب بطور موثرتری در حافظهء طولانی مدت شما قابل ثبت خواهند بود.

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

----------


## مرتضی پیروزی

> برادر این حرف رو نزن  
> 
> این وسط Qt و با امدن رویایی Qml دیگه این حرف های شما  کاملا" نتیجهی  اشنا نبودن با تکنولوژی های جدید رو نشون می ده
> 
> قصد توهین ندارم


سلام دوست عزیزم؛
چرا توهین بدونم، نظراتت برام ارزشمنده.
ولی خودت قضاوت کن. فرض کن اصلاً قرار نیست "برنامه نویس" بشی. آیا وقتت رو صرف چنین چیزهای نفس گیری میکنی؟
بهتر بگم؛کسی که قرار نیست بره توی تیم که هیچ، حتی قرار نیست اون رو به صورت تجاری یاد بگیره لزوم خاصی به مصیبت انداختن خودش داره؟
وقتی شما فقط و فقط از روی تفریح بیای سراغ همچنین زبانی، اون رو جدی نمیگیری، و در نتیجه خوب نمیتونی بهش مسلط بشی، و در آخر حتی یک برنامه درست و حسابی هم نمیتونی بنویسی. خوب تنها چیزی که عایدت شده، گذشته ای هست که تلف کردی و خیلی چیزهای دیگه رو هم از دست دادی.
موفق باشی

----------


## r00tkit

من که متوجه نشدم چی گفتید ولی کمی در مورد علت علاقهی من به Qt یا c/C++‎ بگم

من به تکنولوژی .net  تسلط دارم  ولی بعد مدتی دیدم علاقم برنامه نویسی native و درایور نویسی هستش 

که این ها نیاز داشت به c/C++‎ تسلط داشته باشم  حالا من بیام با C#‎ این ها رو ربط بدم  مثلا" یه درایور نوشتم بیام UI ان رو winform کنم  نکه نشه ولی تا چیزی مثل C++‎ هستش چرا C#‎  بین 
Qt , mfc ,c-builder هم با توجه به خیلی موارد Qt رو انتخواب کردم

حالا با امدن Qml  ما یه چیزی مثل WPF داریم 

زمان توسعهی کد های Qt شاید کمی از .net بیش تر باشه ولی ان پرفورمنس و امکاناتی که برای من می ده خیل بهتر

----------


## مرتضی پیروزی

سلام دوست عزیزم:



> من که متوجه نشدم چی گفتید ولی کمی در مورد علت علاقهی من به Qt یا c/C++‎‎ بگم


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



> به شخصه علاقه مند به برنامه نویسی Native هستم و دید شغلی و تجاری هم به برنامه نویسی ندارم


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

----------


## pckho0r

> ولی خودت قضاوت کن. فرض کن اصلاً قرار نیست "برنامه نویس" بشی. آیا وقتت رو صرف چنین چیزهای نفس گیری میکنی؟
> بهتر بگم؛کسی که قرار نیست بره توی تیم که هیچ، حتی قرار نیست اون رو به صورت تجاری یاد بگیره لزوم خاصی به مصیبت انداختن خودش داره؟
> وقتی شما فقط و فقط از روی تفریح بیای سراغ همچنین زبانی، اون رو جدی نمیگیری، و در نتیجه خوب نمیتونی بهش مسلط بشی، و در آخر حتی یک برنامه درست و حسابی هم نمیتونی بنویسی. خوب تنها چیزی که عایدت شده، گذشته ای هست که تلف کردی و خیلی چیزهای دیگه رو هم از دست دادی.


شاید من منظورم رو بد رسوندم !
منظور من از نداشتن دید شغلی و تجاری این بوده که برای رسیدن به مرحله ای که بتونم وارد دنیای تجاری برنامه نویسی بشم محدودیت زمانی ندارم ! یعنی برام فرقی نمی کنه که 2 سال دیگه یا 5 سال دیگه بتونم به این سطح برسم چون قرار نیست که از این راه امرار و معاش کنم و شغل اینجانب چیز دیگری است.

متاسفانه تو کشور ما دانشجویان مسیر درستی رو طی نمی کنند و خودشون رو در انبوهی از اطلاعات غرق می کنند و چون ظرفیت ادمی محدوده بالاخره یه جایی کم میارند (خصوصآ با این بازار کاری که ما داریم و نگاهی که به شغل شریف برنامه نویسی و شخص برنامه نویس وجود داره!)

اما در مورد هوش مصنوعی اینکه میشه گفت یکی از بهترین زمینه ها و گرایش های برنامه نویسی است و حدی براش وجود نداره و به طور قطع تا زمانی که کامپیوتر وجود داره این مبحث هم وجود داره و همیشه و همواره مبحث روز بوده و خواهد بود و هیچوقت کهنه و فراموش نخواهد شد ! و روز به روز کاربردهای بیشتری برای این حوزه تعریف میشه و تقاضای بالاتری از سوی شرکت های گوناگون طلب میشه ! (میشه گفت تقریبآ همه صنایع!!!)

ولی نمیدونم که ایا بنده توانایی موفقیت در این زمینه رو دارم یا نه چون در اینجا منطق و ریاضیات در الویت قرار داره و داشتن تبحر کافی در این زمینه یک شرط لازمه ولی به قول ادیسون 1 درصد نبوغ + 99 درصد تلاش = موفقیت.

----------


## مصطفی ساتکی

خواهش می کنم همه چیز رو با هم قاطی نکنید نمی دونم این تعصبات نسبت به زبان ها از کجا اومده .الان تو یه شرکت دارن با هر 4 زبان رده اول کار می کنن و هیچ کس هم مشکلی نداره.
زمانیکه performance نیازه زبان ها Native بهتر عمل می کنند این به عینه می تونم به اون دوستمون نشون بدم با زبان های Native میشه همه کارهایی رو که تو managed انجام میدم رو پیاده سازی کنیم و ولی هزینه زیادی به سیستم تحمیل می کنه و اصطلاحاً کار گرون در میاد.
در همه شرکت این یه استاندار شده در کارهای که مروبط به engine میشه معمولاً با C++‎ پیاده سازی میشه و من تا حالا تو شرکتی ندیدم که بیان به فرض engine رو با C#‎ یا java پیاده سازی کنند.
تو کارهای سیستمی یا engine زمان در حد میکروثانیه اهمیت داره دستیابی به این مهم فقط در C++‎ به سهولت قابل دسترسه.

----------


## pswin.pooya

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

چرا MFC از بین نمیره:
خب خیلی راحت میشه گفت MFC مزایایی رو داره که دات نت نداره:

1. سرعت اون به مراتب بیشتره
2. برنامه نویس زمانی که برای یک OS جدید (مثل ویندوز 7) برنامه نویسی می کنه مجبور نیستش که منتظر ویرایش جدید (مثلا دات نت جدید) باشه که از امکانات پشتیبانی کنه و فورا میتونه دست به کار بشه و از API برای امکانات جدید استفاده کنه.
3. مواردی مثل SSE وجود داره که نیازمند ارتباط مستقیم با سخت افزار هستن به عبارت دیگه استفاده از اسمبلی داخل کد هستند.
4. اکثر SDKهای معروف اول برای C++‎ ناتیو ریلیز میشن و بعد به پلتفرمهای دیگه ترجمه میشن (DirectX،OpenGL، Nvidia PhsicX) و ...

شما می تونین به سراغ ابزارها و کامپوننتهای که داره برای MFC ساخته میشه برین تا ببینید که هنوز که هنوزه MFC نمرده. 

اینم چند تا نمونه:


http://www.bcgsoft.com/http://www.codejock.com/products/ove...p?platform=mfchttp://www.codejock.com/products/cha...p?platform=mfc

موارد زیادی رو بنا به کاربرد میشه شمردش که همه نشون دهنده این هستند که توسعه MFC باید ادامه پیدا کنه.

----------


## مصطفی ساتکی

عزیز دل mfc رو با C++‎ قاطی نکن.mfc و C++‎ ربطی به هم ندارن.
خیلی ها C++‎ کار می کنن ولی تا حالا یه برنامه با mfc هم نوشتند .
شما بیاید C ++ Builder رو با mfc مقایسه کنید به چه جوابی می رسید. شما می فرماید حرفه ای ها.
برای تولید یه Application در سطح پیاده سازی شما یه engine داری و یه interface .
interface ها که معمولاً خیلی کارهای حجیم هستند شما نمی تونید حرفه ای رو استخدام کنید بیاد رو interface کار کنه.
C++‎ رو فرد خاصی نمی تونه باطلش کنه چون تو هر شرکتی engine ها حداقل هنوزه که هنوزه با C++‎ پیاده سازی میشه ولی بقیه قسمت ها رو میشه به دور از تعصبات با دیگر زبان ها پیاده سازی کرد.

----------


## pswin.pooya

> عزیز دل mfc رو با C++‎‎ قاطی نکن.mfc و C++‎‎ ربطی به هم ندارن.
> خیلی ها C++‎‎ کار می کنن ولی تا حالا یه برنامه با mfc هم نوشتند .
> شما بیاید C ++ Builder رو با mfc مقایسه کنید به چه جوابی می رسید. شما می فرماید حرفه ای ها.
> برای تولید یه Application در سطح پیاده سازی شما یه engine داری و یه interface .
> interface ها که معمولاً خیلی کارهای حجیم هستند شما نمی تونید حرفه ای رو استخدام کنید بیاد رو interface کار کنه.
> C++‎‎ رو فرد خاصی نمی تونه باطلش کنه چون تو هر شرکتی engine ها حداقل  هنوزه که هنوزه با C++‎‎ پیاده سازی میشه ولی بقیه قسمت ها رو میشه به دور  از تعصبات با دیگر زبان ها پیاده سازی کرد.


فرض کن برای همون engine میخوای رابط ui بنویسی. چی کار میکنی؟ فرق MFC با دات نت همینه که با اون میشه از C++‎ ناتیو استفاده کرد اما توی دات نت این تمکان وجود نداره.

فاتحه C++‎ builder هم که خوندست. درسته که مجموعه خوبی از ابزارها رو داره اما خروجی نهایی تولید شده اون (exe نهایی) رو نمیشه با مال MSVC مقایسه کردش. به نظر من برای C++‎ دو تا کامپایلر مطرح بیشتر وجود نداره که یکی MSVC هست و دیگری که قویتر و بهتر هستش GCC هست.

----------


## مصطفی ساتکی

> فاتحه C++‎‎ builder هم که خوندست


شما در چه سمتی هستید که اینطور تشخیص می دید که فاتحه زبان خوندست اتفاقاً برعکس بخاطر سیاست ها افتضاح مایکروسافت بود که این بلا سرش اومد.
شما بفرماید این نسخه جدید XE مربوط به C Builder رو نصب کنید بعد اظهار نظر نسجیده بفرماید.
من که دارم با mfc کار می کنم با C Builder کار می کنم و Delphi و هیچ تعصبی هم ندارم که به فرض مثال چون با کامپایلری که من کار می کنم از دیگر بهتره. به نظر من امروزه بایستی با همه کامپایلر ها در جاشون و بجا از همشون استفاده کنیم.
شما اگر یادتون باشه دفعه پیش هم ندونسته همچین اظهار نظری رو در مورد دلفی کردید که نمیشه با اون برنامه سطح کرنل نوشت و اونجا هم جوابتونو گرفتید.
در ضمن اگر بخام برای Engine ام ui بنویسم می تونم مستقیم با win32 هم اینکار رو انجام بدم کسی حکم نکرده که حتماً از mfc استفاده کنم.

----------


## pswin.pooya

> شما در چه سمتی هستید که اینطور تشخیص می دید که فاتحه زبان خوندست اتفاقاً  برعکس بخاطر سیاست ها افتضاح مایکروسافت بود که این بلا سرش اومد.
> شما بفرماید این نسخه جدید XE مربوط به C Builder رو نصب کنید بعد اظهار نظر نسجیده بفرماید.
> من که دارم با mfc کار می کنم با C Builder کار می کنم و Delphi و هیچ  تعصبی هم ندارم که به فرض مثال چون با کامپایلری که من کار می کنم از دیگر  بهتره. به نظر من امروزه بایستی با همه کامپایلر ها در جاشون و بجا از  همشون استفاده کنیم.
> شما اگر یادتون باشه دفعه پیش هم ندونسته همچین اظهار نظری رو در مورد دلفی  کردید که نمیشه با اون برنامه سطح کرنل نوشت و اونجا هم جوابتونو گرفتید.
> در ضمن اگر بخام برای Engine ام ui بنویسم می تونم مستقیم با win32 هم  اینکار رو انجام بدم کسی حکم نکرده که حتماً از mfc استفاده کنم.


برادر من شما زمانی میتونی نظر بدی که کرنل نوشته باشی. من حداقل اینکار رو کردم. و خیلی خوب میدونم بنا به چه دلایلی نمیشه با دلفی یا سی شارپ کرنل نوشت. و لازم نیستش که افرادی مثل شما رو توجیح کنم ذاتا تمام سیستم عاملهای واقعی و بزرگ دارن حرف من رو تصدیق میکنن.

و من دلایل زیادی دارم که Cpp builder استفاده نمی کنم و به نطر من فاتحه اون خوندست. تعصب شما هم از همون دلفی داره بر می گرده که عادی هستش.

----------


## مصطفی ساتکی

> برادر من شما زمانی میتونی نظر بدی که کرنل نوشته باشی. من حداقل اینکار رو  کردم. و خیلی خوب میدونم بنا به چه دلایلی نمیشه با دلفی  کرنل  نوشت.


یه google میکردی بعداً این حروفو میزدی. شما اول بایستی فرق managed و native رو یاد بگیرید و بعد اونارو تو یه ظرف قرار ندید.با C#‎ رو اطلاع ندارم ولی با دلفی میشه به ابزار جانبی که با C Builder ساخته شده نیازه.



> ذاتا تمام سیستم عاملهای واقعی و بزرگ دارن حرف من رو تصدیق میکنن


کدوم حرفتونو تعصبو.



> من دلایل زیادی دارم که Cpp builder استفاده نمی کنم و به نطر من فاتحه  اون خوندست. تعصب شما هم از همون دلفی داره بر می گرده که عادی هستش.


دلایل تونو برای emarcadero بفرستید شاید حرفتونو گوش دادند C Builder رو دیگه develop نکردند.
من تعصبی رو زبان ها ندارم و با همشون کار می کنم.

----------


## saeed-niknami

به نظر من موفقیت سی بیلدر زیادتر از mfc هستش  من تو سایت emarcadero دیدم که خیلی از نرم افزار های محبوب ما رو با سی بیلدر نوشتن یکیش Clone CD هستش انتخاب زبان برنامه نویسی به نظر من سلیقه ای هستش هر کی با یک جور شکل کد حال می کنه من اول از همه بیسیک کار کردم ولی بعد از مدتی به دلفی سوئیچ کردم بعد از مدتی به سی  الان 5 سال سی کار می کنم درست سخته اما سخت بودنش واسم شیرین هستش اما الان بعد از چند سال آخر سر نتونستم بین mfc و سی بیلدر یکی رو انتخاب کنم اول هفته از mfc خوشم می آید آخرش از سی بیلدر اما همش native کار می کنم

----------

