Privacy Policy Cookie Policy Terms and Conditions Ruby - ויקיפדיה

Ruby

מתוך ויקיפדיה, האנציקלופדיה החופשית

רובי (Ruby) היא שפת תכנות דינאמית מונחית עצמים. במבנה ותחביר השפה ניכרות השפעות מ־Perl ו־Ada ובנוסף היא מציגה תכונות של תכנות מונחה עצמים בדומה ל־Smalltalk. רובי מורצת על ידי מפרש בעל מעבר בודד.

השפה תוכננה ב־1993 על ידי Yukihiro "Matz" Matsumoto, ומפרש לשפה שוחרר לציבור כשנתיים לאחר מכן. בתחילה זכתה השפה להצלחה בעיקר ביפן, אולם בשנים האחרונות גברה המודעות לשפה גם מחוצה לה.

רובי מוגדרת כשפת תכנות מונחה עצמים טהורה, לאמור, כל ערך בשפה הוא אובייקט, כולל מספרים וערכי אמת/שקר (להבדיל משפות כגון Java המגדירות ערכים אלו כסוגי משתנים "פרימיטיביים" שאינם אובייקטים).

מכיוון שרובי היא שפה מונחית עצמים טהורה ניתן ליישם בה שיטות (methods) של עצמים, אך לא שגרות (procedures). יחד עם זאת, השפה מאפשרת תכנות פרוצדורלי על ידי כתיבה של שיטות או אפילו קטעי קוד אימפרטיביים שלא בכפוף למחלקה (class) או עצם והקוד מקושר באופן אוטומטי למחלקה Object, שהיא מחלקת העל של כל העצמים בשפה, ולכן ניתן לקראה מכל מקום בתוכנית.

שפת רובי מאפשר ירושה בשיטה של ירושה בודדת (Single Inheritance) אבל מאפשרת להרחיב מחלקות, בנוסף למנגנון הירושה, על ידי מנגנון בשם Mixin המאפשר למחלקה "לירוש" קטעי קוד מרכיבים מסוג מודול שאינם מחלקות, או הוספת שיטות באופן דינמי למחלקות שהוגדרו בעבר, או אפילו הוספת שיטות באופן דינמי לעצמים מאותחלים.

רובי מכילה שילוב של כמה מרכיבים המקלים על תכנות של תסריטים, וביניהם שילוב של ביטויים רגולריים, כחלק מתחביר השפה, בנוסף לממשק מונחה עצמים. זאת בדומה לשפות מונחות עצמים אחרות כגון Python ו־Java.

המפרש של רובי מופץ כתוכנה חופשית, תחת רישיון כפול: ה־GPL ורשיון Ruby.

נכון ל־25 בדצמבר, 2005, הגרסה האחרונה היציבה של המפרש היא 1.8.4 אשר ניתן להורידה מאתר הבית.

[עריכה] תכונות השפה

  • תכנות מונחה עצמים טהור
  • ירושה בודדת עם מערכת הרחבת מחלקות מתוחכמת
  • טיפול בחריגות (Exception Handling)
  • תמיכה ב־Iterators (באמצעות העברת בלוקי קוד)
  • תמיכה ב־Closures
  • תחביר שילוח שיטות המאפשר תמיגה בהעמסת אופרטורים (Operator Overloading)
  • איסוף זבל
  • ריבוי נימיות (multithreading) בכל הפלטפורמות
  • ספרייה סטנדרטית רחבה

[עריכה] קישורים חיצוניים

THIS WEB:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia 2006:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu