عن الموقع في القائمة الجانبية

Mohab

موقع مهتم بالبرمجة والشروحات

Blogger facebook youtube twitter pinterest linkedin

مجلد الأقسام

مجلد الروابط

  • ضع رابط هنا
  • ضع رابط هنا
  • ضع رابط هنا
  • ضع رابط هنا

مجلد الصفحات

  • صفحة الخطأ
Mohab
bannner1

شريط الأخبار [ticker]

  • برمجة
  • مقالات برمجية
  • Front end
  • HTML&CSS
  • LUA
  • Mohab
  • برمجة
  • LUA

#02 History of LUA Language | تاريخ تطوير لغة لوا

  • الحصول على الرابط
  • Facebook
  • X
  • Pinterest
  • بريد إلكتروني
  • التطبيقات الأخرى
Mohab

مصري ، 20 سنة ، مبرمج موقعMohabCodeX ، PC Gamer ، له اهتمامات بالعلوم والتكنولوجيا و التقنية وعلم النفس و البرمجة ، وكل ما يخص الكمبيوتر

أغسطس 10, 2023

لغة لوا : مرونة وتطور


نتحدث في هذه المقالة عن لغة لوا Lua، وهي لغة برمجة مميزة بمرونتها وسهولة تكاملها مع تطبيقات تستخدم لغات برمجية أخرى. سنستعرض تاريخ تطورها وخصائصها المميزة.

التاريخ والبداية

في السنوات من 1977 إلى 1992، فرضت البرازيل حواجز تجارية صعبة على أجهزة الكمبيوتر والبرمجيات، مما أثر على قدرة شركة تيكجراف على الحصول على موارد لتلبية احتياجاتها. لذا، قرر فريق تيكجراف تطوير برمجيات خاصة بهم.

في عام 1992-1993، تم تطوير لغتين بشكل مستقل داخل تيكجراف، وتم استخدامهما في مشروعين هندسيين تابعين لشركة بتروبراس. وقد وضع الهدف من وراء تلك اللغتين توفير لغة قوية ومرنة، وكانتا تحملان أسماء "Simple object language" و "Data entry language".

النمو والتطور

على أساس اللغتين السابقتين، قام ثلاثة أعضاء بتطوير لغة جديدة تغطي نقاط الضعف في اللغات السابقة وتقدم مزايا جديدة ومفاهيم حديثة. تم تصميمها لتلبية احتياجات مركز البحوث في جامعة PUC في ريو دي جانيرو.

هؤلاء الثلاثة هم:
  • فريق لوا
  • بروفيسور روبرتو
  • بروفيسور فالديمار
  • الباحث لويز

مقارنة واختيار لوا

في عام 1993، قام فريق تطوير لوا بمقارنة لغتهم مع لغات أخرى مثل TCL وLISP وScheme وPython. وقد اختاروا لوا في النهاية بسبب سهولتها وقدرتها على التكامل والتنفيذ بفاعلية داخل منصات تيكجراف.

أصل الاسم "لوا"

تأتي تسمية اللغة "لوا" من اللغة البرتغالية، حيث أن معنى اللغة Sol في البرتغالية هو "الشمس". واستوحى مطورو لوا فكرة تسمية اللغة من هذا، ليُعبِرَ عنها بمعنى "القمر"، مما يظهر ترابطها مع عالم البرمجة.

مزايا لوا المميزة

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

مثال على اللغة لوا


-- مثال عن الدوال المجهولة في لوا

local add = function(x, y)
    return x + y
end

local multiply = function(x, y)
    return x * y
end

print(add(5, 3))       -- النتيجة: 8
print(multiply(2, 4))  -- النتيجة: 8

متغيرات محلية والنطاقات

في لغة لوا، يُمكن تعريف المتغيرات المحلية التي تكون محدودة النطاق داخل الكود. هذا يعني أنها لا تكون متاحة في أجزاء أخرى من البرنامج. هذا يساعد على تفادي تداخل المتغيرات وتحسين الأمان والوضوح في الكود.

function exampleScope()
    local x = 10
    if x > 5 then
        local y = x * 2
        print(y)  -- النتيجة: 20
    end
    -- print(y)  -- هذا سيسبب خطأ لأن 'y' متغير محلي داخل الفقرة التي يمر فيها فقط
end

exampleScope()

الجداول كهيكل بيانات

تعتبر الجداول من أهم الهياكل في لغة لوا وتُستخدم لتخزين مجموعة من البيانات بترتيبها وتكوينها المرن.

local fruits = {"تفاحة", "موز", "برتقال"}
print(fruits[1])  -- النتيجة: تفاحة
print(fruits[2])  -- النتيجة: موز

الدوال المجهولة في متغيرات

يُمكن تخزين الدوال في متغيرات في لوا، وهذا يُسهم في تسهيل استدعائها وتنفيذها حسب الحاجة.

local function add(x, y)
    return x + y
end

local function multiply(x, y)
    return x * y
end

local operation = add
print(operation(3, 5))  -- النتيجة: 8

operation = multiply
print(operation(3, 5))  -- النتيجة: 15

الدوال المجهولة كوسائط

يُمكن استخدام الدوال المجهولة كوسائط للدوال الأخرى، مما يزيد من قدرتها على التكيف والتعامل مع السياقات المختلفة.

function operate(a, b, operation)
    return operation(a, b)
end

local result = operate(3, 5, function(x, y)
    return x + y
end)
print(result)  -- النتيجة: 8

result = operate(3, 5, function(x, y)
    return x * y
end)
print(result)  -- النتيجة: 15

لغة لوا تتميز بقدرتها على التكيف والتوسع، وتوفير أدوات قوية للمطورين لبناء برامج متقدمة بسهولة ومرونة. باستخدام ميزاتها المتعددة مثل المتغيرات المحلية، والجداول، والدوال المجهولة، يمكن للمبرمجين الاستفادة الكاملة من إمكانياتها. تبقى لغة لوا خيارًا مثيرًا وقويًا لتطوير التطبيقات المتنوعة.
تعليقات

إرسال تعليق

إرسال تعليق

قد يهمك ايضا [related]

الوسوم - قائمة

  • برمجة4
  • مقالات برمجية1
  • Front end1
  • HTML&CSS1
  • LUA4

قائمة الروابط - شريط

  • ضع نص قابل للنقر هنا
  • ضع نص قابل للنقر هنا
  • ضع نص قابل للنقر هنا
  • ضع نص قابل للنقر هنا
  • ضع نص قابل للنقر هنا
bannner1

القسم السابع [vticker]

مواضيع عشوائية

مواقع ندعمها

bannner1

القسم السابع [video]

  • facebook
  • youtube
  • twitter
  • pinterest

التسمية - سحابة

برمجة4 مقالات برمجية1 Front end1 HTML&CSS1 LUA4

روابط مفيدة

  • ضع نص قابل للنقر هنا
  • ضع نص قابل للنقر هنا
  • ضع نص قابل للنقر هنا
  • ضع نص قابل للنقر هنا
  • ضع نص قابل للنقر هنا
عن الموقع Mohab

موقع مهتم بالبرمجة والشروحات

© 2020 – 2024 جميع الحقوق محفوظة Mohab