לספריית jQuery יש קהילת מפתחים משגשגת והיא נחשבת כיום לספריית ה- javascript שבשימוש הרחב ביותר באינטרנט.
כבר לפני שנתיים הכריזה מיקרוסופט שהיא רואה ב- jQuery מרכיב חשוב בפיתוח ל- Web ומציעה תמיכה בכלי הפיתוח שלה Visual Studio 2008 לפיתוח עם jQuery. ב- Visual Studio 2010 הגדילה מיקרוסופט לעשות וכל פרוייקט חדש מכיל כבר שימוש ב- jQuery כברירת מחדל.
בכנס MIX 2010 שהתקיים במרץ השנה, הרכיזה מיקרוסופט על הצטרפות לקהילת תורמי הקוד ל- jQuery, ותרומתה הראשונה היא מנוע תבניות להצגת מידע בצד הלקוח.
מעט רקע על jQuery
jQuery החלה כספריית javascript עם שני דגשים עיקריים - משקל קל (24k) והיכולת לטפל באופן כוללני באתגרי javascript של דפדפנים שונים. אם בעבר, על מנת לבצע פעולות בסיסיות נדרשנו לכתוב קוד שונה עבור כל דפדפן - jQuery מספקת מעטפת אשר מסתירה את המורכבות של תמיכה בריבוי דפדפנים ב- javascript.
חלק מהפופלריות הרבה לה זוכה הספרייה היא מתוך האימוץ שלה בתוך מערכות ניהול תוכן כגון דרופל ובתוך פלטפורמות הפיתוח למובייל של נוקיה, אנדרואיד ואייפון.
ובצד הישראלי...
גם בארץ אנו רואים שימוש גואה בשימוש ב- jQuery כטכנולוגיה נבחרת לעבודה בצד הלקוח, ליישומי AJAX וחווית משתמש עשירה בדפדפן. ארגונים כמו הממשלה ואתרי אקדמיה רבים משתמשים בטכנולוגיה כבר היום בהצלחה.
אתר הבית של jQuery ישראל נמצא בכתובת http://jQuery.org.il.
תרומת קוד לפרוייקט jQuery
כמו כל תורם קוד לפרוייקט, עברה מיקרוסופט את התהליך הבא:
- ניסוח הצעה עבור מנוע התבניות ופרסום בפורום המפתחים (http://forum.jquery.com/topic/jquery-templates-proposal ו- http://forum.jquery.com/topic/templating-syntax)
- אחרי קבלת פידבק על גבי הפורומים, צוות ה- jQuery יצר אבטיפוס של מנוע התבניות ופרסם אותו ב- Github של הפרוייקט (http://github.com/jquery/jquery-tmpl)
- בוצעו איטרציות על האבטיפוס בהתבסס על הפידבק שהתקבל מהקהילה.
מנוע התבניות להצגת מידע בצד לקוח
מנוע התבנית מאפשר למפתחי jQuery לייצר HTML בהתבסס על אובייקטי מידע. הסינטקס מאד פשוט ומאפשר להגדיר את תבנית המידע בצורה דקלרטיבית. בזמן ריצה, בהינתן מידע, הוא יוצג בהתאם לתבנית.
תבניות צד לקוח
ניתן ליצור תבניות מידע בצד הלקוח ע”י שילוב סקריפט מסוג text/html, וכתיבת התבנית בתוכו. בדוגמא הבאה ישנו div המשמש כ- container ותבנית צד לקוח בשם contactTemplate. הביטויים בתוך הסוגריים המסולסלים הם חלק מהתבנית ומציינים את השדות מתוך אובייקט המידע שיש להציג כאן.

ע”י שימוש בתבניות ניתן להציג אובייקט javascript או מערך של נתונים. הקוד הבא מעביר מערך של אובייקטים בשם contacts לפונקציה ששמה render שפועלת על התבנית ואת ה- HTML שנוצר מוסיפה ל- div העליון.

כאשר הדף נטען, מוצגת רשימת אנשי הקשר לפי התבנית, כאשר כל פעולת חילול ה- HTML מתבצע אך ורק בצד הלקוח ע”י הדפדפן.

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