# Native Code > برنامه نویسی با C > برنامه نویسی با MFC و ++Visual C > سوال: تفاوت زمینه های کاری جاوا و سی پلاس پلاس

## flamingo

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

----------


## Nima_NF

C و C++‎‎ زبان هایی نیستند که به این زودی ها از بین بروند، چون همچنان زبان اصلی سیستم عامل ها، سخت افزارها (کارت خوان ها، بانک ها، مخابرات، عابر بانک ها و ...)، کنسول های بازی (Xbox , Play station، Wii) و تقریبا همه نرم افزارهای تجاری بزرگ کنونی هستند.

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

سوال اینجا هست که آیا این زبان در سال های آینده کاربرد کمتری پیدا خواهد کرد؟
جواب، بله هست. اما این کاهش کاربران این زبان به این معنی نیست که کلا حذف شوند. خیر، مثلا شاید در سال های آینده کمتر کسی نرم افزارهای ساده پایگاه داده ای ادارات را حتی در سطح وسیع با این زبان بنویسد. چون راه های بهتر و ارزان تری وجود دارد. اما بدانید که هزاران هزار  نفر همچنان هستند که برای مقاصد تجاری بزرگ این زبان را دنبال می کنند و به همین خاطر هست که امسال استاندارد نسخه جدید C++‎‎ عرضه خواهد شد. پس به ناچار شرکت های مثل Microsoft حتی اگر تمایل نداشته باشند ناچار هستند که برای راضی نگه داشتن این افراد همچنان امکانات جدید را عرضه کنند، تا زمانی که به گفته خودشان یک framework جدید برای دوستداران این زبان عرضه کنند.

مثلا مایکروسافت در 5 سال اخیر سعی کرد باعرضه فرم ورک های جدید مانند XNA با .Net دنیا بازی های Xbox و ویندوز را به این سمت دعوت کند، اما شکست خورد و از طرف کمتر شرکتی تجاری مورد توجه قرار گرفت و سپس طرح را تحت عنوان برنامه نویسی تفریحی و نیمه حرفه ای عرضه کرد!

تذکر: مطمئن باشید که در ایران همان طوریکه در سال های اخیر مشاهده کرده اید اگر مشکلات سیاسی بر طرف نشود و تجارت جهانی ما فعال نشود یا عضور WTO نشویم، حتما شاهد کم شدن بسیار زیاد تعداد کاربران این زبان خواهید بود. و شاید کاربران کنونی C/C++‎  (مخابرات، بانک، دستگاه های الکترونیکی مانند دزردگیرها و GPS و غیره یعنی همان کاربران فعلی در ایران) نیز به سمت صفر هم بروند.




> یعنی زمینه کاری و هدف این دو تا زبون چیه؟؟؟


بر می گردد به انتخاب برنامه نویس.
در حال حاضر معمولا برنامه هایی که مستقیم روی سرور نصب می شوند و هدفشان کارآیی بالا با کمترین میران منابع هست، بیشتر با C/C++‎‎ و python هستند .
برنامه هایی که به نوعی مربوط به گرافیک هستند همچنان 99.99% با C/C++‎‎ هستند.

نرم افزارهایی که فرد مستقیم در سیستم با آن ها کار می کند، و کارآیی چندان مهم نیست (هر چند java  نیز کارآیی بسیار بالایی دارد) و قصد دارند که بر روی تمامی سیستم عامل ها بدون نیاز به کدنویسی جدید همان امکانات را عرضه کنند از java استفاده می کنند.

 همچنان در وب java حرف اول را می زند.

Java همچنان همپای C++‎‎ برای برنامه نویسی سخت افزار کاربرد دارد، مانند بسیاری از دستگاه های کارت خوان و بسیاری موارد دیگر که SDK با java هست.

Java همچنان برای شرکت های سازنده نرم افزارهای گوشی های موبایل اولین انتخاب هست. و اگر نیازمند امکانات خاص هر گوشی باشند آنگاه C++‎‎ انتخاب اصلی هست.

و هزاران مورد دیگر

----------


## Microname

> تذکر: مطمئن باشید که در ایران همان طوریکه در سال های اخیر مشاهده کرده اید اگر مشکلات سیاسی بر طرف نشود و تجارت جهانی ما فعال نشود یا عضور WTO نشویم، حتما شاهد کم شدن بسیار زیاد تعداد کاربران این زبان خواهید بود. و شاید کاربران کنونی C/C++‎‎ (مخابرات، بانک، دستگاه های الکترونیکی مانند دزردگیرها و GPS و غیره یعنی همان کاربران فعلی در ایران) نیز به سمت صفر هم بروند.


ببخشيد اين دليل رو متوجه نشدم!

----------


## Nima_NF

> ببخشید این دلیل رو متوجه نشدم!


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

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

علاوه بر آن ها، موارد فوق باعث می شود نیروی متخصص C++‎‎ روز به روز کمتر شود و بانک ها و مخابرات هم به ناچار و برای کاهش هزینه به سمت سخت افزارهایی برود که برنامه نویس ان زیادتر در ایران وجود داشته باشد یا کلا برای نرم افزارهای جدید خود تغییر رویه دهد.

بنده این موارد را چند عامل کم شدن تعداد کاربران این حوزه در حال و آینده در کشور می دانم.

----------

