מהו קובץ ERB?
שפת eRuby היא מערכת תבניות המטביעה את רובי במסמך טקסט. מערכת התבניות של eRuby משלבת את קוד האודם והטקסט הפשוט כדי לספק בקרת זרימה ותחליף משתנה, ובכך להקל על תחזוקה. הוא משמש לעתים קרובות להטמעת Ruby соde במסמך HTML בדומה ל-АSР, JSР ו-РHР ושרת אחר שפות כתיבה צדדיות. ERB Ruby יוצר בדרך כלל דפי אינטרנט.
מודול התצוגה של Ruby on Rails אחראי להציג את התגובה או להוציא בדפדפן. בצורתה הפשוטה ביותר, תצוגה יכולה להיות חלק מקוד HTML שיש לו תוכן סטטי כלשהו. עבור רוב היישומים, רק תוכן סטטי עשוי להיות לא מספיק. יישומי מסילות רבים ידרשו שתוכן דינמי שנוצר על ידי המבקר יוצג בעיניהם. זה מתאפשר על ידי שימוש ברובי Embedded ליצירת תבניות שיכולות להכיל תוכן דינמי.
Embedded Ruby מאפשר להטמיע Ruby соde במסמך תצוגה. קוד זה מוחלף בערך נכון יותר שנבע מביצוע הקוד בזמן ריצה. אבל, על ידי היכולת להטמיע קוד במסמך תצוגה, אנו מסתכנים בגישור בין ההפרדה הברורה הקיימת במסגרת MVС. לפיכך, אחריותו של המפתח לוודא שיש הפרדה ברורה בין האחריות בין מודולי הדגם, התצוגה והבקר של האופציה.
היסטוריה קצרה
רובי עוצב באמצע שנות ה-90 על ידי Yukihirо Matsumоtо. יוקיהירו מאצוטו הוא אביו של רובי ובקהילת רובי, הוא ידוע כמאץ’. סקריפט Ruby הוצג לראשונה בשנת 1995 והגרסה הראשונה של Ruby הייתה Ruby 95 שיצאה בשנת 1995.
Yukihiro Matsumot רצה שפת תכנות אובייקטיבית לחלוטין, שניתן להשתמש בה בקלות כשפת סקר. לכן, הוא עיצב את שפת eRuby. בפגישת צ’אט של יוקיהירו מאצוטו וקיג’ו ישיטשוקה התגייסו שני שמות לשפת התכנות שהיא “סאראל” ו"רובי", מאוחר יותר ביוקיהירו.
מפרט טכני
פורמט קובץ eRuby תומך במושגים שונים של גישת תכנות מכוונת אובייקט כמו כיתה, ירושה, אבסטרציה, ולימוריזם וכו’. התכונה של שיטת תכנות מכוונת אובייקט מקלה על תחזוקה ופיתוח. סקריפט שפה eRuby תומך גם בתכונה של שיטת התכנות הפרוצדורלית. בתכניות הפרוצדורליות ישנם צעדים מוגדרים לכל תוכנית לפתרון בעיה מסוימת.
תבניות eRuby מספקות מגוון עצום של ספריות מובנות בכיתה, שבהן מתכנתים יכולים לפתח כל יישום או תוכנית אינטרנט בקלות ובמהירות. eRuby היא שפת תכניות כללית או מרובת תכניות, מה שאומר שהיא יכולה לשמש מתכנתים בפיתוח סוגים שונים של שיטות ותכניות.
שפת רובי ERB היא שפת תכנות פשוטה ומקורית ותוכלו גם לשנות אותה בהתאם לדרישות התכנון שלכם. הוא מספק סוגים שונים של תכונות וכלים מובנים עשירים. השפה מספקת גם את התכונה של אוסף אשפה אוטומטי.
ההרשמה ב-eRuby היא מהירה מאוד בהשוואה לשפות תכנות אחרות. וזו גם שפת תכנות גמישה שכן היא מאפשרת לכל משתמש לשנות את החלקים שלה בהתאם לדרישותיו. הוא תומך בתכונת הירושה והשילובים היחידים ומספק גם תכונת הקלדה דינמית למשתמשים שלו. eRuby היא שפת תכנות רגישה, ויש לה קהילה סוררת נהדרת בגלל הרגישות שלה.
דוגמה לתבנית קובץ ERB
להלן סוגי התגים בתבניות ERB:
ביטוי
<%= %>
require 'erb'
x = 500
template = ERB.new("The value of x is: <%= x %>")
puts template.result(binding)
ביצוע
<% %>
<ul>
<% 4.times do %>
<li>list item</li>
<% end %>
</ul>
תגובות
<%# %>
<%# ruby code %>
תגים אחרים
<%2.times do -%>
<%= @name %>
<% end -%>
דוגמה לכיתה
class ERBExample
attr_accessor:variable1
# using bind to access class variables
def render()
renderer.result(binding)
end
def initialize(variable1)
@variable1 = variable1
end
# Expose private binding() method.
def get_binding
binding()
end
end
example = ERBExample.new(variable1)
renderer = ERB.new(template)
puts output = renderer.result(example.get_binding)