لازاروس (لغة برمجة)

من ويكيبيديا، الموسوعة الحرة
اذهب إلى: تصفح، ‏ ابحث
لازاروس
Lazarus
Lazarus Logo (new).png
Lazarusdebial.jpg
لازاروس 1.1 على لينكس ديبيان
المطور التطوع
آخر إصدار 1.2.4 / 2014-06-16؛ منذ 36 يومًا
مكتوب بلغة باسكال
المنصة متعدد المنصات
حالة التطوير نشط
النوعية RAD ادوات لـ فري باسكال
الترخيص رخصة جنو العمومية
موقع وب http://www.lazarus.freepascal.org/

تعديل

لازاروس (بالإنجلزية Lazarus) هو بيئة تطوير متكاملة (IDE) متعدد المنصات و مطور تطبيقات سريع (RAD) كما انه حر و مجاني , يستخدم مترجم فري باسكال الذي يدعم أوبجكت باسكال ،بدرجات متفاوتة. يمكن لمطوري البرمجيات إستخدم لازاروس في صناعة مشروع موحد في جميع واجهات المستخدم الرسومية (GUI) وهذا يسهل عليهم العمل على أسطح المكاتب المتنوعة، وأيضا في لأجهزة المحمولة، وتطبيقات الويب، وخدمات الإنترنت، والمكونات البصرية والمكتبات كما يمكنهم إنشاء المكتبات ديناميية و ثابثة (. SO،. DLL، وما إلى ذلك، لكي تستخدم في برامج أخرى). مترجم الباسكال المجاني يدعم عددا من منصات مختلفة، مثل ماك، لينكس وويندوز.

لازاروس يرث ثلاث سمات من استخدامه لفري باسكال  : ترجمة وسرعة التنفيذ، و تعدد الترجمة في المنصات المختلفة. المترجم يتميز بالخصائص القوية في لغة الباسكال , وهو في تقدم ثابث في ما يخص تصميم مترجمات لغة الباسكال (إمتداد تطويره عدة عقود), في ترجمة التطبيقات الكبيرة وبسرعة, في كثير من الأحيان يستغرق بضع ثوان. عند ترجمة البرامج بمقاييس مضبوطة ، كما ان لازاروس ينتج برامج تظهر في الأداء جيدة جدا خاصتا في إستهلاك الذاكرة, هذا بالمقارنة مع نفس البرامج المكتوبة في C.[1]

التطبيقات التي تم تطويرها بلازاروس في منصة ما يمكن ترجمتها و تشغيلها في اي منصة اخرى ,شرط ان تحتوي على مترجم فري باسال . مشاكل التوافقية العتاد و القيود المفروضة على النظام بسبب تنوع المنصات تشكل عائق ; مع ذلك , في برامج سطح المكتب يمكنك نقل الكود و تشغيله في كل من لينكس و وينداوز و ماك بدون تغيير فيه (او مع تغييرات طفيفة), و كامثال ; بيئة تطوير لازاروس هو نفسه صنع من لازاروس بقاعدة كود واحدة و هو متوفر في جميع المنصات الشائعة و حتى في رسبري باي.

تاريخ[عدل]

مشروع لازاروس له جذوره في مشروع Megido.[2] . من مجموعات Google ، هذا الاخير كان إجراء لإستنساخ برنامج مفتوح المصدر شبيه بالدالفي , بعد نجاح مترجم فري باسكال وتفوقه على مترجم تيربو باسكال، وإنتاج نسخة تعمل في عدد من المنصات التشغيلية، كانت الحلقة الناقصة هي أداة التطوير المتكاملة. لازاراس هي أداة التطوير المستخدمة مع فري باسكال، أو هي أداة التطوير التي تستخدم فري باسكال كمترجم. وهي عبارة عن مكتبة ضخمة للكائنات class library،

بدأ مشروع لازاراس عام 1999 من طرف Cliff Baeseman و Shane Miller و Michael A. Hess وتم إصدار النسخة رقم 1 منه في أواخر أغسطس من العام 2012، لكن تمت كتابة عدد كبير من البرامج بواسطة النسخ السابقة للنسخة رقم 1 كما تمت كتابة عدد من الكتب حوله.

الميزات[عدل]

شبيه بلإصدارات السابقة من بورلاند دلفي، لازاروس يوفر بيئة تطوير بصري للغاية لإنشاء واجهات المستخدم الغنية، كمنطق التطبيق و الازرار و العلب و النوافذ ، وغيرها من رموز الداعم. هذا مع خدمات تتبع الكود و النسيق و الادوات المساعدة في إدارة المشاريع، كما يوفر لازاروس IDE مميزات اخرى وهي لا تقتصر على: شبيه بلإصدارات سابقة من بورلاند دلفي، لازاروس يوفر بيئة تطوير بصري للغاية لإنشاء واجهات المستخدم الغنية، كمنطق التطبيق و الازرار و العلب و النوافذ ، وغيرها من رموز الداعم. هذا مع خدمات تتبع الكود و النسيق و الادوات المساعدة في إدارة المشاريع، كما يوفر لازاروس IDE مميزات اخرى وهي لا تقتصر على:

  • ما تراه هو ما تحصل عليه (WYSIWYG)
  • مجموعة واسعة من الحاجيات واجهة المستخدم الرسومية أو المكونات البصرية مثل مربعات التحرير، وأزرار، والحوارات، والقوائم، الخ
  • مجموعة واسعة من المكونات غير المرئية للسلوكيات الشائعة مثل الحفاض على إعدادات التطبيق ,تقدم و التأخير عند تحرير الكود.
  • وهناك مجموعة من مكونات الاتصال بقواعد البيانات ، PostgresSQL، فايربيرد، أوراكل، SQL لايت، سايبيس، وغيرها...
  • الإكمال الذكي للكود و الماكرو ,تسمح للمطور رؤية البيانات في المكونات البصرية, لتسهيل العمل
  • مصحح الكود التفاعلي
  • تنقيح الكود
  • قوالب جاهزة من الاكواد
  • التسليط في النص بالالوان لتمييز بين الاجرأت و المتغايرات
  • مساعد الكود لتتبع الاخطاء
  • الكشف و إخفاء مناطق من الكود لتجنب الارتباك عند الاطلاع
  • التنسيق التلقائي
  • القدرة على إنشاء مكونات مخصصة

التعريب[عدل]

لازاروس يعتمد على المكتبات الرسومية المتوفرة في النظام , وهي في مجملها تدعم اللغة العربية , أما عن واجهة البرنامج فهي مترجمة تقريبا.

المستندات غير متوفرة باللغة العربية على ويكي البرنامج لكن لغة الباسكال; لديها توثيق جيد في اللغة العربية.

التطوير عبر تعدد المنصات[عدل]

التفاعل بين مكتبات LCL لازاروس ومجموعات فري باسكال

لازاروس يستخدم فري باسكال كبرنامج يشغه في الخلفية . وبالتالي يمكن للازاروس، من الناحية النظرية، استخدامه لتطوير تطبيقات لجميع الأنظمة الأساسية المعتمدة من قبل فري باسكال.

مماثلا لمكتبة run-time التي يقدمها فري باسكال ، لازاروس يوفر إطار عبر منصة التطبيق تسمى مكون مكتبة لازاروس (LCL)، اللتي توفر واجهة واحدة موحدة للمبرمجين، مع التطبيقات المختلفة يقوم لازاروس بتحديد تلقائي للمنصة . باستخدام LCL، يمكن للمرء إنشاء تطبيقات بالكتابة مرة واحدة فقط،

محمولية الترجمة[عدل]

فري باسكال يدعم محمولية الترجمة , ومنه لازاروس يمكنه الترجمة من وينداوز الى لينكس و FreeBSD, و نفس الشيئ . الترجمة من Mac OS X الى وينداوز و لينكس تكون ممكنة , الترجمة الى Mac OS X متاحة في نسخ PowerPC القديمة ,ولكن ليس في لإصدارات الأحدث من هذه المعالجات التي تنتجها إنتل، وهذا منذ تخلى أبل عن إصدار مجمع الاسمبلي و رابط المكتبات الديناميكية.

برامج الأجهزة المدمجة مثل (هواتف، والمساعد الشخصي الرقمي، والموجهات، نظام لعبة فيديو) يمكن ترجمتها في كل الانظمة المذكور سلفا.

مكتبة عناصر لازاروس[عدل]

إطار البرامج القياسي , مكتبة عناصر لازاروس (LCL) صمم بعد مكتبة المكونات المرئية(VCL) في لدلفي 6,لكنها متاحة لأنظمة تشغيل أخرى غير Windows.ويتم ذلك عن طريق فصل تعريف الطبقات الأدوات المشتركة في widgetset .ويتم دعم كل مجموعة من القطع من خلال توفير واجهة التي تتفاعل مباشرة مع مجموعة التابعا لها.

المكتبات الرسومية التي يتم دعمها (أوائل عام 2011) على النحو التالي .

قطع المكتبة الرسومية دعم نظام التشغيل الحالة
Windows API, GDI وينداوز مدعمة
Windows CE API, GDI Windows CE مدعمة
GTK+ 1.2.x Linux (via X11) تم اسقاطه
GTK+ 2.8+ Windows, لينكس (X11 and framebuffer) and Mac OS X (via X11) مدعم
GTK+ 3.x As Gtk2 تجريبي
Qt 4.5+ Windows, Linux (X11 and framebuffer), Mac OS X مدعم . ويعمل في in Windows, Linux, Mac OS X, Maemo, etc
Cocoa Mac OS X جاري
Carbon Mac OS X يعمل
fpGUI Windows, Windows CE, Linux (بواسطة X11) مرحلة اولية
Lazarus Custom Drawn Controls Android, Windows, Linux (via X11), Mac OS X مرحلة اولية

في ما يخص GTK3 الخطة هي كتابة الكود من الصفر ، لأن خلفية GTK2 كانت غير نظيفة وورثت الكود من GTK1 [3].

تطوير قواعد البيانات[عدل]

يمكن للمطورين تثبيت الحزم التي تسمح لهم العمل مع العديد من قواعد البيانات. البرامج يمكن أن تتفاعل مع قواعد البيانات من خلال التعليمات البرمجية أو من قبل المكونات بوضعها في النافذة ، مثل TDataSource TPSQLDatabase، TSQLiteDataSet، و يمكن إضافة الجداول و ربطها مع قواعد البيانات بسهولة تامة هذا مع توفير مجسم الطباعة الجاهز.


هناك عدة قواعد بيانات متوفرة في لازاروس لكن غير مفعة منها :

مكونات أخرى، مثل Zeoslib, يمكن استخدامها ايضا.

الإختلاف عن الدالفي[عدل]

لازاروس يشبه دلفي في نواح كثيرة، لكن هناك عدد قليل من القيود فيما يتعلق بالأداء والميزات.

  • على ويندوز الملف التنفيذي ، حجمه كبير افتراضيا، أكبر إلى حد ما من دلفي (6/7) أي ما يعادله , هذا لأنه يتم تضمين معلومات التصحيح و التنقيح ضمن الملفات التنفيذية للازاروس، بدلا من جعلها منفصلة مثل دلفي. ومع ذلك، و إبتداء من النسخة 0.9.30 تم إضافة ميزة تتيح إنشاء ملفات التصحيح خارجيا. فاصبحت الملفات التنفيذية للازاروس صغيرة الحجم , وتم إضافة خاصية التجريد وهي ميزة فعالة في تصغير حجم الملف التنفيذي بشكل ملفت (يمكن تعيينها في الخيارات المترجم).
  • يمكن تثبيت مكونات لدلفي في لزاروس، ولكن يجب أن يتم تحويلها.
  • الافتقار لمكتبات الوسائط و widgets.
    • الاتصال بميكروسوفت أوفيس (تفرقع إكسل يعمل بشكل جيد في إصدار2.5.x).
    • Datasnap (ليس لديه توثيق جيد لأنه مملوك).
  • Networking متاح في الغالب.
  • لا يوجد دعم اللاتصال المباشرة مع مكتبات NET. من ناحية أخرى، فمن الممكن استدعاء التعليمات البرمجية لأوبجي باسال . من NET.
  • دعم COM كان مفقود من سلسلة 2.0.x،FPC ولكنه عاد ليعمل مع FPC 2.2.0، و قد نضجت منذ ذلك الحين.
  • دعم التحميل الديناميكي مفقود للحزم .
  • ليست هناك توافقية مئة في المئة مع VCL. وكما ذكر سابقا هذا سببه التصميم، على الرغم من أن المجموعة الحالية لحزمة LCL ينبغي أن تكون كافيا لمعظم التطبيقات.

التوزيع والترخيص[عدل]

مثل فري باسكل، لازاروس هو برنامج حر. و يتم توزيعه في إطار مختلف التراخيص من البرمجيات الحرة، بما في ذلك GPL، LGPL، MPL، ونسخة معدلة من LGPL 3. الرخصة .[4]

على وجه التحديد، يتم ترخيص LCL، و التي تبقى بشكل ثابت في الملفات التنفيذية ، تحت النسخة المعدلة من LGPL، هذا لكي يتمكن المطور دمج المكتبة في الملف التنفيذي ، دون تقييده في رخصة برنامجه المملوك.

لاحظ أن تثبيت الحزمة في وقت الترجمة و التشغيل( Run) يتم ربطها مع IDE. كذلك، يتم توزيع لازاروس IDE تحت رخصة GPL (و على سبيل المثال حزم JEDI، التي تم ترخيصها تحت رخصة موزيلا العمومية) مثبتة مسبقا , هنا يحدث انتهاك في ترخيص GPL. هذا لأن رخصت GPL تمنع رخصة موزيلا في برامجها . لكن هذا لا يمنع الحزم المملوكة من تطويرها مع لازاروس، .

يتم توزيع لازاروس رسميا عبر موقع سورس فورج.نت.

التطبيقات المنتجة مع لازاروس[عدل]

هناك عدة برامج .[5] بنيت على لازاروس نذكر منها :

  • ASuite

هو حر و مفتوح المصدر يشتغل على نظام التشغيل Windows. من 2.0 ألفا 2، وهو مكتوب بشكل كامل في لازاروس / فري باسكل.

  • Cartes du Ciel

هو برنامج القبة السماوية على لينكس، و نظام التشغيل Mac OS X و Windows. يحتوي خرائط و تسميات معظم الأبراج والكواكب، والأجسام التي ترى مع تلسكوب. كتب بشكل كامل في لازاروس / فري باسكال و صدر برخصة GPL.

  • Cheat Engine

محرك الغش هو ذاكرة مفتوحة المصدر للماسح الضوئي . المفيد منه هو الغش في ألعاب الكمبيوتر. منذ الإصدار 6.0 تم ترجمة مع لازاروس / فري باسكال.

  • Greenfish

محرر إيقونات مجاني ، يمكنك صنع مؤشرات و تحرير الرسوم المتحركة.

  • MyNotex

هي البرمجيات الحرة لجنو / لينكس ، مفيد في إدارة الملاحظات النصية.

  • Peazip

هو أرشيفي مفتوحة المصدر، مصنوعة من لازاروس / فري باسكال.

  • TorChat

يتم تحويله من البايثون، ويجري إعادة كتابة في لازاروس + فري باسكال

  • WinFF

تحويل الوسائط المتعددة، وهو متاح للينكس وويندوز.

مكتبات متوافقة مع لازاروس[عدل]

  • GLScene

هي مكتبة مجانية على مبنية على OpenGL لتوفير مكونات بصرية يمكن دمجها في نوافذ البرامج و هذا يسمح لك مشاهدة الصور الثلاثية البعد .

  • OpenWire

هي مكتبة مفتوحة المصدر تسمح لك بالاتصال بين مكونات LCL مماثلة لابفيو أو Agilent VEE.

شاهد ايضا[عدل]

فري باسكال

روابط خارجية[عدل]


المراجع[عدل]

  1. ^ مقارنة مع C،.
  2. ^ تاريخ ، من الموقع .
  3. ^ http://wiki.freepascal.org/Gtk+3
  4. ^ نص الرخصة ، .
  5. ^ رابط ، قائمة البرامج في ويكي البرنامج .