دی (زبان برنامه‌نویسی): تفاوت میان نسخه‌ها

محتوای حذف‌شده محتوای افزوده‌شده
زبان برنامه نویسی D ، یک زبان شی گرا ، امری و چندالگویی سیستمی است که توسط Walter Bright از Digital Mars طراحی و در سال ۲۰۰۱ منتشر شد .
برچسب‌ها: برخی خطوط با فاصله آغاز شده‌اند جمع عربی واژگان فارسی منبع حذف شده است
خنثی‌سازی ویرایش 16285475 توسط آرمان ملک زاده (بحث)
خط ۱:
'''زبان برنامه نویسی دی''' {{به انگلیسی|D}} یک [[زبان برنامه‌سازی]] سیستمی و کاربردی همه‌منظوره است.<ref>[http://dlang.org/overview.html مستندات دی - مروری بر دی]</ref>
زبان برنامه نویسی D ، یک زبان شی گرا ، امری و چندالگویی سیستمی است که توسط Walter Bright از Digital Mars طراحی و در سال ۲۰۰۱ منتشر شد . Bright توسط Andrei Alexandrescu در سال ۲۰۰۶ به تلاش توسعه و طراحی پیوست . با اینکه D مهندسی دوباره ای از سی پلاس پلاس است ، کاملا یک زبان جدا محسوب می شود ؛ زیرا بسیاری از ویژگی های هسته سی پلاس پلاس را نگه داشته و بسیاری را دور ریخته است . در طراحی زبان دی همچنین از زبان هایی مانند پایتون ، روبی ، سی شارپ ، ایفل و جاوا نیز الهام گرفته شده است.هدف طراحی زبان D ترکیب کارایی و امنیت زبان های کامپایلری ، با قدرت زبان های پویای مدرن است . کد یک برنامه در زبان D شبیه به زبان سی پلاس پلاس است ، اما کوتاه تر می باشد.
== ویژگی ها ==
۱. چند الگویی
۱.۱ امری
زبان D یک زبان امری مشابه C است . توابع ، داده ها ، دستورات ، اعلان ها و عبارات کاملا مانند زبان C عمل می کنند . از تفاوت های مهم زبان D با زبان C در امری بودن ،‌ می توان به حلقه foreach اشاره کرد که امکان حرکت کردن روی یک collection را به ما می دهد . همچنین ، زبان D دارای توابع تو در تو است که داخل یکدیگر تعریف می شوند .
۱.۲ شی گرایی
زبان D بر پایه سلسله مراتب وراثت تکی بنا شده است و از وراثت چندگانه پشتیبانی نمی کند .
۱.۳ Meta programming
۱.۴ تابعی
زبان D از بسیاری ویژگی های برنامه نویسی تابعی پشتیبانی می کند ؛ مانند ثابت توابع ، اشیای بازگشتی-تغییرناپذیر و همچنین توابع با اولویت بالا
۱.۵ موازی
مثلا در یک حلقه ی for همه دفعات تکرار حلقه همزمان اجرا می شوند .
۱.۶ همروندی
۲ . مدیریت حافظه
برای این کار هم می توان از توابع new و delete استفاده کرد و هم از malloc و free به همان شکل زبان C به صورت مستقیم؛
۳. SafeD
به زیر مجموعه ای از زبان D گفته می شود که از نظر مدیریت حافظه قابل اطمینان است . ( هیچ چیز در حافظه نوشته نمی شود مگر اینکه برای آن حافظه فضایی گرفته شده باشد و هیچ چیز نوشته نمی شود اگر آن حافظه بازیابی شده باشد )
== تعامل با سایر سیستم ها ==
برنامه رابط دودویی سی ، در تمامی انواع مشتق شده C پشتیبانی می شود . کتابخانه استاندارد زبان C ، خود بخشی از زبان D است . از آنجایی که C++ خود یک برنامه رابط دودویی تک ندارد ، زبان D تنها قادر به دسترسی به کد C++ نوشته شده در برنامه رابط دودویی زبان C است .
در ویندوز ، زبان D به Component Object Model دسترسی دارد .
== نمونه ای از کد زبان D ==
برنامه زیر توسط یک تابع بازگشتی ، فاکتوریل یک عدد را محاسبه می کند .
<source lang="">ulong factorial(ulong n)
{
if (n<2)
return 1;
else
return n * factorial(n-1);
}</source>
== ابزار های توسعه ==
ویرایشگرها و محیط های توسعه یکپارچه متعددی برای زبان D وجود دارد . شامل :‌ Eclipse, Microsoft Visual Studio, SlickEdit,Emacs,vim,SciTE,Smultron,TextMate,MonoDevelop,Zeus,Geany
برنامه های زبان D می توانند توسط هر کامپایلر زبان C ،‌ اشکال زدایی شوند .
== تاریخچه ==
Walter Bright در سال ۱۹۹۹ تصمیم گرفت روی زبان جدیدی کار کند. زبان D اولین بار در دسامبر ۲۰۰۱ منتشر شد و در ژانویه ۲۰۰۷ به نسخه ۱.۰ رسید . اولین نسخه زبان D که D1 نامیده شد ، مبتنی بر مبانی شی گرایی ، امری بودن و چند الگویی بود ؛ مشابه سی پلاس پلاس
در همان سال ۲۰۰۷ ، اولین نسخه D2 منتشر شد . در واقع D2 برای تثبیت D1 عرضه شد و بسیاری از خطاهای D1 را برطرف کرده بود .
در سال ۲۰۱۱ ، پروژه زبان D بر روی GitHub قرار گرفت تا از توسعه بر مبنای خطایابی رها شود . در همان سال ، Andrei Alexandrescu اعلام کرد که در ۳۱ دسامبر ۲۰۱۲ نسخه آخر D1 عرضه می شود و دیگر این نسخه ادامه نخواهد یافت .
 
 
== منابع ==