برنامه نویس

به اشتراک گذاری تجربیات، دانش ها و غیره در برنامه نویسی و کامپیوتر

برنامه نویس

به اشتراک گذاری تجربیات، دانش ها و غیره در برنامه نویسی و کامپیوتر

دنبال کنندگان ۱ نفر
این وبلاگ را دنبال کنید
تبلیغات
Blog.ir بلاگ، رسانه متخصصین و اهل قلم، استفاده آسان از امکانات وبلاگ نویسی حرفه‌ای، در محیطی نوین، امن و پایدار bayanbox.ir صندوق بیان - تجربه‌ای متفاوت در نشر و نگهداری فایل‌ها، ۳ گیگا بایت فضای پیشرفته رایگان Bayan.ir - بیان، پیشرو در فناوری‌های فضای مجازی ایران
بایگانی
نویسندگان

۱ مطلب با کلمه‌ی کلیدی «تفاوت #C و ++C» ثبت شده است


تفاوت زبان برنامه نویسی #C و ++C

اولاً با C# فقط برنامه های تحت .NET میشه نوشت(در واقع C# برای .NET درست شده)، اما با C++  هم برنامه های تحت (NET managed) و هم برنامه های native میشه نوشت.
دوماً هنوز برای کارهای سطح پایین (مثل Device Driver) و سنگین (مثل بازی های سه بعدی) C++  انتخاب اول و آخر محسوب میشه.
C#  خیلی راحتتر ، تمیزتر و خوش ساخت تر از C++ طراحی شده و از نظر شی گرایی هم پشتیبانی بهتری داره نسبت به C .C# کاملاً شی گراست و اصلا نمیتونید برنامۀ غیر شی گرا در اون بنویسید ، در صورتی که با C++ میتونین هم شی گرا و هم غیر شی گرا ، برنامه بنویسید.
از ویژگی های C# :

  1. مدیریت خودکار حافظه توسط  CLR
  2. پشتیبانی از یک نوع String داخلی
  3.  پشتیبانی از foreach
  4. پشتیبانی کامل از delegate و event و interface و Property و attribute ها
  5. XML Documentation
  6. checked / unchecked keywords
  7. و ...
در C# برای انجام تمام کارها از کلاس های .NET استفاده میشه ، در ضمن در C# چیزی به نام فایلهای Header و #include  و از این حرفا ندارد. در واقع C# خیلی زیباتر از C++ طراحی شده ، چون به هر حال در طراحی C# از زبانهایی مثل C++ و JAVA و Delphi درس گرفته شده و اشتباهات اون زبانها در C# تکرار نشده ؛ به عنوان مثال در   C++  به تعداد انگشتان دست، نوع دادۀ String داریم. یا Multiple Inheritance که خیلی دردسر سازه، یا مثلا در JAVA ، enum  ها و Operator Overloading و Pointer و Property ها که همگی جزو ضروریات محسوب میشن ، وجود ندارن. البته کسانی که میخوان کار سنگین یا سطح پایین در .NET انجام بدن ، معمولا همه قسمتهایی رو که امکانش هست با C# می نویسن و بقیه رو با C++ ؛ و در C# از کلاسهای نوشته شده در C++ استفاده می کنن . (Wrapper Classes )  در کل C# ، سطح بالاتر(High Level )  از C++ است ؛ در C++ حتی میتونید مستقیماً از کد اسمبلی استفاده کنید.
در ضمن C# اولین زبان Component Oriented در خانوادۀ C محسوب میشه.
خیلی تفاوتها و شباهتهای دیگری هم هست که در صورت پرداختن به اونا بحث خیلی تخصصی میشه ، فقط در یه جمله بگم : بزرگترین شباهت این دو زبان اینه که هر دو جزو خانوادۀ C هستن و بزرگترین تفاوت اینکه : C# یک زبان
 type-safe هست (بر خلاف C++ ) و فقط باهاش میشه برنامه های تحت .NET نوشت.
البته منظوراز این مطالب اثبات برتری C# به C++ نیست، چون به هر حال برای برنامه های تحت .NET ، C#  بهترین گزینه است و در جاهای دیگه هنوز هم C++ قویترین زبان دنیاست. 


  • وحید بابائی