Grails – אינטגרציה עם פלטפורמת JAVA

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

אפליקציות לעולם האמיתי

לאחר שראינו על קצה המזלג כמה מהר ניתן לפתח אפליקציה, השאלה הבאה היא האם ניתן לקחת את היכולת הזו וליישם אותה לאפליקציות "אמיתיות"?

התשובה הקצרה היא "כן".

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

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

Grails עונה על הדרישות הללו. זו היא סביבה כללית לפיתוח כל אפליקציה שנעלה על הדעת (בעולם של HTTP/Web). רצה על תשתיות חזקות (JAVA, tomcat, Spring-Hibernate) ואין חשש שנגיע לדרך ללא מוצא מבחינת פיתוח או ביצועים. החלק החזק ביותר הוא השילוב עם JAVA – מה שמאפשר  ניצול היכולות הקיימות הן בפיתוח והן בתפעול,ניצול בסיס הקוד הקיים, והחשוב ביותר: מינוף עולם המוצרים העצום שקיימים בתחום הJAVA והקוד הפתוח.

בואו נראה איך זה עובד:

כתיבת קוד JAVA בתוך האפליקציה

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

שימוש בספריות

לפעמים נרצה לכתוב רכיב שלם בJAVA ולייצא אותו בקוב.ץ jar. מקרה יותר מעניין הוא שימוש במוצר מסחרי או בפרויקט קוד פתוח באותה צורה. היישום של זה הוא סטנדרטי לעולם הJAVA –נשים את הקובץ בתיקיית lib, ונפנה אליו מכל רכיב במערכת.

טכנולוגית Plug –in

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

התשתית הזו יצרה מערכת אקולוגית עשירה של תוספים שפותחו בקהילה, ועוטפים מוצרי קוד פתוח פופולאריים (בזמן הכתיבה…). תוספים אלה יורדים ומותקנים במערכת באופן אוטומטי לאחר הרצת הפקודה המתאימה, ומאפשרים גישה פשוטה למגוון רחב של פתרונות מכל הסוגים – החל מטכנולוגיות לקצה הקדמי של האפליקציה (למשל AJAX) עבור דרך פתרונות אפליקטיביים (למשל spring security) ועד מוצרי תשתית בתחומים רבים (no Sql, clustering etc.).

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

כתיבת תגובה

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

הלוגו של WordPress.com

אתה מגיב באמצעות חשבון WordPress.com שלך. לצאת מהמערכת / לשנות )

תמונת Twitter

אתה מגיב באמצעות חשבון Twitter שלך. לצאת מהמערכת / לשנות )

תמונת Facebook

אתה מגיב באמצעות חשבון Facebook שלך. לצאת מהמערכת / לשנות )

תמונת גוגל פלוס

אתה מגיב באמצעות חשבון Google+ שלך. לצאת מהמערכת / לשנות )

מתחבר ל-%s