ماذا تعرف عن الروبي

يونيو 27, 2007

السـلام عليكم رحمه الله وبركاته

Ruby Programming Language

تعتبر لغه الروبي من اللغات الحديثـه نسبيا مقارنه بالعديد من لغات البرمجه الموجوده حاليا ,وهي “Open Source Programming Language” ,تم كتابه هذه اللغه بواسطه لغه الـ C,وتعني كلمـه “Ruby” ياقوته وهو نوع من انواع الاحجار الكريمه ,مصمم هذه اللغه عالم ياباني ومطور برمجيات يدعي “Yukihiro Matsumoto” ويعرف باسـم “Matz” قـام “Matz” ببدايه العمـل علي انشاء ال“Ruby” في فبراير عام 1993 واطلق اول برنـامج لـه بواسطه اللغه وهو “Hello world” في صيف العام نفسه ,وقـام باطلاق اول اصداره رسميه في عام 1995 وظـل “Matz” يعمل بمفرده علي تطوير الـ “Ruby” حتي عام 1996,بعد ذلـك تاسس مجتمع الروبي والذي سـاعد “Matz” كثيرا علي تطوير اللغه وسد العديد من الثغرات بهـا واطلق الاصداره التي تحمل الرقم 1.0 بمساعده المطورين وفريق عمل صغير في ديسمبر من نفس العام,ولغـه الروبي اخـذت العديد من المميزات من لغـات اخري مثـل لغـه الـ “Perl” ولغه الـ“Python” ولغـه الـ“LISP” ولغـه “ADa” ولغـه“Smaltalk” ولغـه “Dylan” ولغه “CLU”

والعديد من اللغات الاخري واحد اسباب قوه الروبي ودينامكيتها في معالجه الاوامر انها اخذت من كل لغه من اللغات السابقه ميزه ودمجتهم بها. و اتجاه Matz” الي برمجه لغه الروبي هو انـه كان يريـد لغـه تعتمد بصوره اكبر علي مفهوم ال Object Orientation من لغه الـ “python” واكثر قوه من لغـه الـ “Perl” . وشارك “Matz” في تطوير الـ “Ruby” العديد من العلمـاء.
ويقول
“Matz” انـه يحاول جعل اوامر اللغه طبيعيه اكثر منهـا بسيطـه حتي تفهـم وتستوعب بصوره اكبر من قبـل المستخدمين , ويقـول ايضـا ان الـ “Ruby” تشبه جسد الكائن الحي من حيث التصميم فهـو معقد من الداخـل ولكنه بسيط من الخارج .
وبعد اطلاق الاصداره الاولي من اللغه اصبح هنـاك شعبيه كبيره للغه ال
“Ruby” في اليابان واصبحت مقصوره علي دوله اليابان وخاصه الذين يتحدثون اليابانيه لعدم وجود مواضيع مكتوبه بالانجليزيه حتي عام 1997 وفي نهايه عام 1998 اطلقت المجموعه ruby-talk mailing list والناطقه باللغه الانجليزيه والتي كانت بدايه لانتشار الروبي حول العالم وخارج نطاق دوله اليابان .
ويقول
“Matz” انـه في الاصداره التي سوف تحمـل الرقم 2.0 انه سوف يعيديد كتـابه ال“Interpreter” الخاص باللغه (مترجم الاوامر) من الصفر وسوف يجعله اسرع واكثر استقرارا من الاصدارات السابقه .
وتعتبر الروبي
“Portable Language” بمعني ان الكود الخاص بها يعمل علي العديد من انظمه التشغيل المختلفه والتي نذكر منها علي سبيل المثـال :
1-Linux
2-Windows
3-Dos
4-Symbian
5-Mac OSX
6-BeOS
والعديد من الانظمـه الاخري
,واخـذ “Matz” الكثير من الاشياء من لغه الـ Perl وكان معجب بمصممها والذي يدعي Larry Wall واخذ منه عباره “There’s More Than One Way To Do It” بمعني انه هناك اكثر من طريقه لكتابه الشئ نفسه في لغه الروبي وذلك علي العكس من لغه الـ Python .
ولغـه الـ
“Ruby ” مبنيه بالكامل علي مفهوم الـ Object Oriented Programming بمعني ان اي شئ في اللغه عباره عن Object يقـع في Class معين وانا عندما اذكر ذلك فانا اعني ذلك بالحرف الواحد!!!
مثـال
:
puts “Mutati0N Admired With Ruby!!”.class
##=>String
في الكود السابق قمت بوضع
String “نصوكما ذكرنا من قبل كل شئ موجود بالروبي عباره عن Object يقع في Class معين وهنـا الـ String السابق هو Object يقع في Class يسمي String .
مثتال اخر
:
x=3
puts x.class
=>Fixnum
هنـا ايضـا يتضح ان الارقـام تقع في
Class يدعي Fixnum
,وتعتبر لغه الروبي لغه مرنه وسهله في كتابه الاوامر الخاصه بها فهي تخلو من التعقيدات الموجوده بلغـه الـ
C مثلا
تستطيع ايضـا عن طريقها كتابه سكربتات تعمل في بيئه الشبكـات
Networks تستطيع ايضـا تصميم برامج ذات واجهات رسوميه باستخدام مكاتب ال Tk\GtK وايضا تستطيع كتابه سكربتات لمعالجه النصوص وغيرهـا الكثير فامكانيات اللغه تجعلك تفعل اي شئ يخطر ببالك بهـا !!.
وفي نهايه عام
1999 اطلق الموقع الرسمي الخـاص باللغه والناطق باللغه الانجليزيه .

وسوف نستعرض الان مجموعه من المواقع التي تهتـم باللغه :
*الموقـع الرسمي للغـه

www.ruby-lang.org
http://ruby.on-page.net/ *موقع مميز لتعلم اللغه ببساطه
http://www.rubycentral.com*موقع يضم كتاب ضخم لتعلم اللغه بجانب احتوائه علي العديد من الدوال والتي تستخدم في كافه المجالات
http://www.ruby-doc.org/ *يحتوي علي العديد من الوثائق لتعلم اللغه
http://zamples.com/JspExplorer/content/rubyUG/ *التعريف باللغه وامكانياتها بطريقه شيقه بجانب تعلمها
http://www.ruby-lang.org/en/libraries/top-projects/
*صفحه تحتوي علي اقوي المشروعات المبرمجه بواسطه اللغه

http://www.rubyforge.org/ *موقع يحتوي علي مشاريع كبيره جدا مبرمجه باللغه
ومن الجدير بالذكر ان مشروع الـ
MetaSploit قد تمت اعاده كتابته في الاصداره الثالثه (الحاليه) باستخدام الروبي بعد ان تمت كتابته في الاصدارتين الاولتين بلغـه الـ Perl :
http://framework-mirrors.metasploit.com/
والمزيـد
:
www.rubyinside.om
http://pine.fm/LearnToProgram/
http://developer.kde.org/language-bindings/ruby/index.html
http://en.wikibooks.org/wiki/Ruby
http://tryruby.hobix.com/
http://rubylearning.com/
http://rubylearning.com/jobs/ruby_jobs.html
http://www.rubycorner.com/
http://rubyrockstars.com/

Ruby 0n Rails

يعتبر Ruby 0n Rails اطار عمـل خاص بتطبيقات الانترنت التي تكتب بواسطـه الـ “Ruby”
والسبب في انشاء اطـار عمـل الـ
” Rails” ان شركـه 37signals – التي تم تاسيسها عام 1999- وهي شركـه ناجحه في مجال صناعه تطبيقات الانترنت ان مؤسسي هذه الشركه ادركوا فيما بعد انهم يريدوا ادوات تساعدهم علي اداء عملهم بطريقه اكثر كفـاءه وسرعه وقاموا بالعديد من المحاولات للاعتماد علي ادوات خاجريه ولكنها لم تلبي احتاجاتهم الخاصـه ,فقرروا في منتصف عام2003 ان يقوموا بتطوير ادوات خاصه بهم تساعدهم علي اداء عملهم بالطريقه التي تناسبهم ,وكمصممين اكثر منهم مبرمجين اعتمدوا مؤسسي الشركه علي شخص يدعي “David Heinemeier Hansson” وهو طالب بجامعه كوبنهاجن بالدنمارك لتطوير المشروع الخاص بهم فقام الطالب باستخدام لغه الروبي
في تطوير المشروع
,وكمبرمج سابق بلغه الـ PHP كان يعرف عدم مقدره لغـه الـ PHP
علي اداره التطبيقات الضخمه للويب وبعد فتره من التطوير تمكن
Hansson من تطوير مشروع يدعي Basecamp وهذا التطبيق يعمـل كمنظم للمواعيد والجداول ومشاركه الملفات عبرالعملاء واداره الرسائل وغيرها الكثيـر,وبعد نجاح البرنامج بنسبه كبيره جدا اطلق “Hansson” نسخه منه لتستخدم دوليا في فبراير 2004 بعد ان كانت مقتصره علي الشركه فقط وبعد مرور 4 شهور فقط علي اطلاق التطبيق دخلت شركه 37signals في تعاملات كبيره مع العديد من العملاء حول انحاء العالم واصبح Hansson بعد ذلك شريك رسمي في الشركـه .
قام بعد ذلك
Hansson بالاعتماد علي تطوير مشروع الـ BaseCamp ليجعـل منه FrameWork لتطوير تطبيقات قواعد البيانات بطريقه اسهل اصبـح بعد ذلـك يدعي “Ruby On Rails” وكان اول اصداره رسميه له في شهر 7 لعام 2004 ,واعتمدت بعد ذلك 37signals بصوره كبيره علي اطار العمل الجديد في تطوير وانتاج تطبيقات بصوره اسرع .
يعتبر عام
2005 هو عام ملحمه بالنسبه ل “Ruby on Rails” حيث اقبل الجميع علي استخدامها بعد معرفه قوتها واطلق العديد من ملفات الفيديو لشرح كيفيه عمل هذا الاطار واتجه الكثير من مبرمجي البيرل والبايثون وال بي اتش بي لتجربته, ونال Hansson في ذلك العام العديد من الجوائز من شركه Google و شركه O’rielly والعديد من الشركات الاخري بجانب حصوله بالطبع علي شهره عالميه.
المواقع الخاصه
:
www.rubyonrails.org * الموقع الرسمي للـ “Ruby On Rails”
http://www.meshplex.org/wiki/Ruby/Ruby_on_…mming_tutorials اكثر من رائع يشرح لك المجالات التي من الممكن استخدامها في تصميم التطبيقات بـ Ruby on Rails بجانب شرحه لبعض اساسيات لغه الـــRuby
http://www.rubyonrails.org/screencasts *بعض شروحات الفيديو للـ Ruby on rails
www.37signals.com *بالطبع شركه 37signals التي ذكرناها سابقا
والمزيـد
:
http://railsforum.com/
http://www.ruby-forum.com
http://www.sitepoint.com/forums/forumdisplay.php?f=227
http://www.rubyist.net/~matz/
http://www.planetrubyonrails.com/
http://redhanded.hobix.com/

ويمكنك الحصـول علي دعم من خلال الـ IRC عن طريق القنوات :
# rubyonrails on the irc.freenode.net # ruby-lang on the irc.freenode.net
وفي النهايه اتمني ان اكون قد وفقت في كتابه هذا المقال المبسط عن اللغه

والتي بامكانك الوصول الي المزيد من المعلومات عنها عن طريق الروابط السابقه او بالبحث

السـلام عليكم ورحمه الله وبركاته

11 تعليق to “ماذا تعرف عن الروبي”

  1. Black Knight Says:

    مقـال رائع اخي واتمني ان شاء الله منك النزيد من تللك المقالات الرائعه

  2. Dj.r4iDeN Says:

    nice one keep it up

    but

    ana a3raf an al Symbian by3tmed 3la C++ we al java

    t2der tegb amsla 3an al symbian

  3. mutati0n Says:

    شاكر لـك لي المرور حبيبي رايدن وبامكانك الاطلاع علي الموقع الرسمي لتطوير برامج ال سيمبان بواسطه الروبي من هنـا
    http://developer.symbian.com/main/tools/opensrc/ruby/index.jsp
    وبامكانك تحميل ادوات التطوير الخاصه بالروبي في مجال ال سيمبان من هنـا
    http://developer.symbian.com/main/tools/opensrc/ruby/part2.jsp
    ومثال من الموقع:

    include GenesisModule

    screen = Screen.new

    screen.clear

    screen.fillRect(5, 5, 10, 10)

    screen.drawLine(10, 10, 50, 50)

    screen.fillEllipse(50, 50, 120, 140)

    player = MultiMediaPlayer.new()

    player.play(“C:\\sound.wav”)

    module SillyModule

    def doSomethingSilly

    yield

    “Hello, this is a silly module”

    end

    end

    class SillyClass

    include SillyModule

    end

    s = SillyClass.new

    s.doSomethingSilly {screen.fillRect(15, 15, 50, 50)}

  4. Dj.r4iDeN Says:

    nice one

    we hal hya feha bardo socket bluetooth 3lshna 3amlyat al atsal ??

    thx for INFO*

  5. mutati0n Says:

    شكـرا رايدن علي المتابعه وبالنسبـه للاتصال عبر البلوتوث عن طريق الروبي فهي تملك مجموعه من الـModules
    التي تمكنها من فعل ذلـك ومثـال بسيط علي ذلـك:
    require “ruby_bluez”

    a = Bluetooth::Devices.scan
    a.each { |device|
    puts device.addr
    puts device.name
    p device
    }
    p a

  6. SoFy Says:

    Nice Article… ya 7abib ruby😀

  7. mutati0n Says:

    Thnx SaFa7 About Passing >>>> Ruby My sweet Heart


  8. شكرا لك على الموضوع المميز فعلا الروبي لغة خطييرة و ساتابعها لنتعلم منها قليلا شكرا لك

  9. Mutati0N Says:

    موفق بأذن الله أخ أسامة


  10. […] كيف تبرمج بواسطه الروبي – The little Book of Ruby 2nd Edition * روبـي – What do you know about Ruby – What do you Know about RubyGems – Ruby 1.8.7 * روبـي اون ريلز – What do you know […]


  11. […] اشهـر واقوي اطـارات العمـل التي تمت كتابتهـا بـالـ Ruby . * Catalyst : اطــار عمــل تمت كتابته باستخـدام لغـه الـ Perl […]


أضف تعليقاً

إملأ الحقول أدناه بالمعلومات المناسبة أو إضغط على إحدى الأيقونات لتسجيل الدخول:

WordPress.com Logo

أنت تعلق بإستخدام حساب WordPress.com. تسجيل خروج   / تغيير )

صورة تويتر

أنت تعلق بإستخدام حساب Twitter. تسجيل خروج   / تغيير )

Facebook photo

أنت تعلق بإستخدام حساب Facebook. تسجيل خروج   / تغيير )

Google+ photo

أنت تعلق بإستخدام حساب Google+. تسجيل خروج   / تغيير )

Connecting to %s

%d مدونون معجبون بهذه: