دي (لغة برمجة)

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

تعريف

[1] لغة البرمجة D هي لغة برمجة نظم مترجمة منخفضة المستوى غرضية التوجه تعتبر الامتداد لـ C++، قام بتطويرها المبرمج المعروف Walter Bright مالك شركة Digital Mars والذي قام كذلك ببناء مترجم لغة C/C++ المعروف باسم الشركة.

وبما أن هذه اللغة تهدف إلى أن تكون الامتداد للغة C/C++ لذلك فإن غرضها الأساسي هو دمج الإنتاجية مع الأداء وذلك باقتباس عدة تقنيات إنتاجية من لغات عالية المستوى كـRuby, Java, C# وهي مع ذلك لا تعتبر مجرد إضافات للغة C/C++ ومع أنها تحفظ لغة C والكثير من C++ إلا أنها تعد لغة برمجية (جديدة) ومنفصلة عن C/C++.


خصائص اللغة

  • السرعة والأداء: وهما من أولويات اللغة، إذ أنها بديل عن C++ كما أنها لغة برمجة نظم.
  • الحفاظ على برامج C وأكثر برامج C++: يمكن كتابة برامج لغة C بنفس التوابع داخل برامج D، لكن قد يضطر المبرمج إلى تعديل طريقة كتابة بعض التوابع للمناسبة مع D (كالسلاسل النصية في printf) كما تتضمن الكثير من توابع C++.
  • جامع النفايات Garbage Collection: وهو جزء من اللغة لا إضافة خارجية.
  • تقنية RAII.
  • استبدال المكتبات المركبة Modules مكان الملفات الرأسية Header Files.
  • اللغة مفتوحة المصدر (أكثر المصادر تحت رخصة Boost).


تعتبر اللغة جديدة باعتبار تاريخ إصدارالمترجم الأول والثاني، وما زالت تنمو وإن كانت فقيرة بالـbindings والمنافذ ports إلى المكتبات واللغات الأخرى. مع هذا فإن بعض الشركات بدأت تطلب مبرمجين بلغة الـD.

المكتبة القياسية في لغة D تسمى Phobos وهي التي استدعيت مكتبة الإدخال والإخراج القياسي منها. وتجدر الإشارة هنا إلى وجود مكتبة بديلة عن Phobos تسمى بـTango وأشكل وجود المكتبتين ويحاول المطورون حل هذه المشاكل.

وفي التابع main عرفت مصفوفة واحدة من المتغيرات، لأنني أستطيع استبدال args.length مكان argc في C.

المترجمات

DMD المترجم الرسمي للغة من إنتاج Digital Mars وتطوير Walter Bright. لأنظمة: Windows, Linux, Mac, Free BSD.

GDC GNU Compiler مترجم لغة D للمترجم المعروف.

LDC LLVM D Compiler مترجم للغة D مبني على LLVM D.NET.

المنقحات

أما المنقحات Debuggers فيمكن استخدام Windbg الذي يعمل مع dmd على نظام Windows فقط وهو من إنتاج الشركة.

أو يمكن استخدام Ddbg إذا يعمل جيداً مع المحررات وبرامج التطوير.

أما في الأنظمة الأخرى فلا نجد منقحاً يعمل بشكل جيد حتى الآن، إلا أن يكون ZeroBUGS الذي يقدم دعماً غير مجاني ولا حر للغة D في Linux.

المحررات وبرامج التطوير

vim*: المحرر المعروف، وإن كان لا يدعم اللغة كما يجب، لكنه يملك ملف تعريف syntax خفيف.

Poseidon* برنامج جيد مكتوب بلغة D.

Code::Blocks* الـIDE المعروف، يدعم لغة D دعماً جيداً.

Eclipse*: يمكن استخدامها لكتابة برامج لغة D عن طريق الإضافة Descent وهي الإضافة الأحدث والأفضل للغة D على Eclipse.

Visual D* إضافة لـVisual Studio.NET.

D-IDE* : برنامج جديد شبيه بالـVisual Studio.

BitProx* برنامج تجاري جديد.

وفي نظام Linux تدعم أكثر برامج كتابة النصوص لغة D مثل: kate, kedit, gedit, geany...


الهوامش

  1. ^ "لغة دي". مقال أبوحمزة، منتدى كلية الهندسة المعلوماتية دمشق. 09-10-2008. Check date values in: |date= (help)
الكلمات الدالة: