יום רביעי, 10 ביוני 2009

מבוא לרובי און ריילס - חלק ג

עקרונות פיתוח בריילס

ריילס פועלת על פי מספר עקרונות אשר מבדילים אותה או יותר נכון מבליטים אותה מתשתיות פיתוח אחרות.

עקרונות אלו הם:

  1. מוסכמות על פני הגדרות.
  2. אל תחזור על עצמך.
  3. מתודולוגית פיתוח זריזה / רזה / גמישה (Agile). 

 

בזכות עקרונות אלו רובי און ריילס חוסכת זמן ומפנה זמן לדברים החשובים באמת.





מוסכמות על פני הגדרות

לריילס יש דעה ברורה על איך צריך לבנות אפליקצית אינטרנט טיפוסית, בשל כך ריילס משתמשת בברירות מחדל קבועות.

בניגוד לתשתיות אחרות אשר דורשות עבודה רבה בתהליך של יצירת קבצי הגדרות ארוכים ומתישים עוד לפני שהתחלנו לעבוד באמת.

למעשה לריילס יש רק קובץ הגדרות אחד ובו הנתונים הדרושים כדי להתחבר לבסיס הנתונים, לקובץ קוראים database.yml והוא נראה כך:





development:
  adapter: sqlite3
  database: db/development.sqlite3
  pool: 5
  timeout: 5000

test:
  adapter: sqlite3
  database: db/test.sqlite3
  pool: 5
  timeout: 5000

production:
  adapter: sqlite3
  database: db/production.sqlite3
  pool: 5
  timeout: 5000




כפי שנאמר ריילס היא תוכנה עם דעה, לכן ריילס לא מתימרת להיות הכל עבור כולם, למעשה ריילס לא מתאימה לכל אחד.

עקב אכילס של מפתחים רבים בכך שהם מתפתים לנפח את הקוד שלהם באלמנטים לא נדרשים רק לשם הוספת עוד ועוד דברים מתוך מחשבה שהרבה תמיד יהיה טוב יותר ממעט, ריילס לא מתאימה לגישה זו. 










אל תחזור על עצמך.

אפליקצית ריילס הבנויה נכון לא תכיל קוד שחוזר על עצמו, למעשה בפיתוח נכון לא נעתיק קוד ממקום אחד למקום אחר בתוך אותה אפליקציה.

כך כאשר אנו רוצים לבצע שינוי באפליקציה, נבצע שינוי במקום אחד בלבד. זה אולי נשמע קצת מסובך לבצע אבל בפועל זה מאוד פשוט, והקוד קצר ונקי יותר.

מתודולוגית פיתוח זריזה / רזה / גמישה (Agile). 

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

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

כמה דוגמאות אשר ממחישות את המחויבות של ריילס למתודולוגית פיתוח זריזה.

  1. בריילס ניתן לבנות ממשק שלם לפני שמתעסקים עם קוד או נתונים, מאוחר יותר ניתן להלביש על הממשק שבניתם את הפונקציונאליות ללא צורך לחזור על עבודת העיצוב, האפליקציה מתפתחת באופן דינאמי כאשר כל אספקט של האפליקציה יכול להשתנות בכל רגע נתון.
  2. ריילס בנויה באופן כזה שכל שינוי בקוד נראה מיידית בדפדפן, כל שנדרש הוא לבצע שינוי, לרענן את הדפדפן והשינוי נראה מיידית, הפידבק המיידי הזה יכול לזרז מאוד את התהליך.
  3. ריילס מאפשרת תשתית מצויינת לביצוע בדיקות לקוד, כתיבת הבדיקות נעשית במקביל לכתיבת הקוד, כך כאשר הנכם מבצעים שינוי באפליקציה אתם יכולים להריץ את מערכת הבדיקות שיצרתם ולראות בלחיצת כפתור עם השינוי שביצעתם פגע במקום אחר באפליקציה.

במאמרים הבאים נמחיש בפועל את העקרונות האלו בפועל, תוך כדי שנבנה אפליקציה מלאה ברובי און ריילס.

 





קישורים רלוונטיים

אין תגובות:

הוסף רשומת תגובה