רשומת החלטה ארכיטקטונית: מסגרת Ruby on Rails
הקשר
הארגון מפתח יישום ווב עם היגיון עסקי מורכב ואינטגרציות מרובות עם שירותי צד שלישי.
לצוות יש ניסיון בבניית יישומי ווב עם Ruby on Rails.
יש צורך לבחור מסגרת ווב שמקדמת פיתוח מהיר, יכולת הרחבה ויכולת תחזוקה.
החלטה
- להשתמש ב-Ruby on Rails כמסגרת לפיתוח יישום הווב.
הצדקה
Ruby on Rails היא מסגרת ווב בשלה, יציבה ומאומצת בהרחבה שהוכיחה את יעילותה בבניית יישומי ווב מורכבים.
המסגרת פועלת לפי תבנית הארכיטקטורה Model-View-Controller (MVC), שמקדמת הפרדת עניינים ומשפרת שימוש חוזר בקוד ויכולת תחזוקה.
Rails מספקת יכולות מובנות רבות, כמו ActiveRecord לאינטראקציות עם מסד נתונים ו-ActionMailer לניהול דוא"ל, שיכולות לחסוך זמן פיתוח ולפשט את הקוד.
למסגרת יש קהילה גדולה ופעילה, עם מודולים ותוספים רבים לשימוש חוזר זמינים לשיפור הפונקציונליות ולפתרון בעיות נפוצות.
Ruby on Rails תומכת בפיתוח מונחה בדיקות (TDD) ובפיתוח מונחה התנהגות (BDD), מה שמאפשר למפתחים לכתוב בדיקות אוטומטיות לקוד שלהם, להבטיח שהוא עובד כמצופה ולצמצם באגים ורגרסיות.
Ruby היא שפה ברמה גבוהה שמקדמת פריון מפתחים וקריאות קוד, ומשמשת שפת דבק עוצמתית לשילוב עם מגוון רחב של שירותי צד שלישי וממשקי API.
השלכות
הצוות צריך להבטיח שארכיטקטורת יישום הווב ועיצובו עוקבים אחר מוסכמות Rails ושיטות העבודה המומלצות שלה כדי למקסם את היתרונות של המסגרת.
מפתחים צריכים להבין היטב את שפת Ruby ואת מסגרת Rails, אף שהתיעוד והקהילה של Rails יכולים לספק הנחיה ותמיכה.
ייתכן שתהיה עקומת למידה למפתחים חדשים ב-Ruby וב-Rails, אף שיתרונות המסגרת יכולים להצדיק את ההשקעה בהדרכה ובקליטה.
הצוות צריך לנטר את הביצועים ואת יכולת ההרחבה של היישום, ועשוי להצטרך לכוונן שאילתות מסד נתונים ולייעל מטמון כדי לטפל בכמויות גדולות של נתונים ותעבורה.