روبي (لغة برمجة)
روبي | |
---|---|
ملف:Ruby logo.svg | |
التصنيف: | شيئية المنحى، البرمجة الأمرية، برمجة وظيفية |
ظهرت في: | 1995 |
صممها: | يوكيهيرو ماتسوموتو |
آخر إصدار: | 1.9.1-p376 |
رقمه: | 1.9.1-p376 (2009-12-07 ) |
متأثرة بـ: | بيرل، بايثون، ليسب، سی إل یو، أيدا |
نظام التشغيل: | عابرة منصات |
امتدادات الملفات: | الشائع :.rb و.rbw للكود المصدري. |
روبي (أو ياقوت) (بالإنجليزية: Ruby) هي لغة برمجة كائنية متعددة الاستخدام. وتمتاز اللغة بكونها لغة شيئية نقية كما تمتاز باحتوائها على كثير من خواص اللغات الوظيفية.
تاريخ
في 24 من فبراير سنة 1993 بدأ الياباني يوكيهيرو ’ماتز’ ماتسوموتو (بالإنجليزية: Yukihiro Matsumoto) مشروعه بتطوير وتصميم لغة الروبي. وقد أخذ بالاعتبار في تصميمه أفضل الخصائص والمميزات الموجود في اللغات الآخرى مثل بيرل، بايثون، ليسب، سی إل یو، أيدا. وحرر أول نسخة للعامة في العام 1995. لم تحصل روبي على الشهرة إلا مؤخرا عندما قام دافيد هاينماير هانسون بتطوير الإطار المشهور لبرمجة الوب روبي على قضبان باستخدام روبي في العام 2005.
فلسفة لغة روبي
ماتسوموتو قال ان لغة برمجة روبي مصممة للإنتاجية وللمرح. وهو يشدد على أن تصميمه اي نظام يحتاج إلى التركيز على احتياجات الإنسان، بدلا من جهاز الكمبيوتر،
مميزات لغة روبي
- مفتوحة المصدر
- ذات أغراض عامة
- كائنية المنحى
- ديناميكية، ومفسرة
- محمولة
- صيغة نظيفة
مفتوحة المصدر : كون اللغة مفتوحة المصدر يعنى أنه يوجد عدد غير منتهى من المطورين قائمين على اللغة، وسرعة في معالجة الأخطاء.
ذات أغراض عامة : يعنى إمكانية استخدامها في أنواع مختلفة من البرامج سواء في قواعد البيانات أو واجهات رسومية أو برامج علمية أو الويب...إلخ.
لغة كائنية المنحى : الميزة هي أنها الأسلوب الأفضل والأمن لتطوير البرمجيات.
دينامكية: لن تكون مضطرا أن تعلن عن نوع المتغير، بعكس لغات ثانية مثل ال java.
مفسرة: بمعنى أنها تستخدم مفسر وليس مترجم، سيتبادر إلى ذهنك ما هو المفسر والمترجم.
المترجم : هو برنامج يقوم بتحويل الكود من لغة مثل السى مثلا إلى ملف تنفيذي المفسر : هو برنامج يقوم بتنفيذ الكود سطر بعد سطر وهذا له مميزات وسلبيات: فمن المميزات : هي المحمولية على أكثر من نظام تشغيل وأكثر من بنية من العتاد. بعكس اللغات المترجمة التي ستحتاج إلى إعادة ترجمة برنامجك كل مرة لكل منصة. من السلبيات : البطء وإمكانية الإطلاع على الكود -وهذه لا تعتبر مشكلة في عالم المصادر الحرة-
المحمولية : بمعنى أنها مدعومة على العديد من النظم. وكذالك هي لغة بسيطة
أمثلة
يمكن تشغيل الأمثلة التالية بحفظها في ملف وتشغيلها عن طريق سطر الأوامر بكتابة الأمر Ruby
يتبعه اسم الملف أو عن طريق برنامج روبي التفاعلية
المثال الكلاسيكي أهلا بالعالم: <source lang="ruby"> puts "Hello World!" </source>
أمثالة آخرى على لغة روبي: <source lang="ruby">
- Everything, including a literal, is an object, so this works:
-199.abs # 199 "ice is nice".length # 11 "ruby is cool.".index("u") # 1 "Nice Day Isn't It?".downcase.split("").uniq.sort.join # " '?acdeinsty" </source>
مثال على تحويلات من سلسلة محارف إلى عدد صحيح والعكس: <source lang="ruby"> puts "What's your favorite number?" number = gets.chomp output_number = number.to_i + 1 puts output_number.to_s + ' is a bigger and better favorite number.' </source>
سلسلة محارف
وهناك طرق متنوعة من أساليب لتحديد سلسلة محارف في روبي. <source lang="ruby"> a = "\nThis is a double-quoted string\n" a = %Q{\nThis is a double-quoted string\n} a = %{\nThis is a double-quoted string\n} a = %/\nThis is a double-quoted string\n/ a = <<-BLOCK
This is a double-quoted string BLOCK </source>
أنظر أيضاً
وصلات خارجية
|
az:Ruby bat-smg:Ruby bg:Ruby bn:রুবি (প্রোগ্রামিং ভাষা) ca:Ruby ckb:روبی cs:Ruby (programovací jazyk) da:Ruby (programmeringssprog) de:Ruby (Programmiersprache) el:Ruby Ruby (programming language)]] eo:Ruby (programlingvo) es:Ruby et:Ruby (programmeerimiskeel) eu:Ruby fa:روبی (زبان برنامهنویسی) fi:Ruby fr:Ruby gl:Ruby he:Ruby hr:Ruby (programski jezik) hu:Ruby ia:Ruby (linguage de programmation) id:Ruby (bahasa pemrograman) it:Ruby ja:Ruby ka:რუბი ko:루비 (프로그래밍 언어) lt:Ruby ml:റൂബി (പ്രോഗ്രാമിങ് ഭാഷ) ms:Ruby my:Ruby Programming Language nl:Ruby (programmeertaal) nn:Ruby no:Ruby pl:Ruby (język programowania) pt:Ruby (linguagem de programação) ro:Ruby ru:Ruby sk:Ruby (programovací jazyk) sr:Руби (програмски језик) sv:Ruby ta:ரூபி tg:Руби th:ภาษารูบี tr:Ruby uk:Ruby vi:Ruby (ngôn ngữ lập trình) zh:Ruby zh-yue:Ruby程式語言