ראשי » Facebook platform - מדריך לפיתוח אפליקציות לפייסבוק, כללי, מדריכים

המדריך לפיתוח אפליקציות לפייסבוק חלק 3: הכלים ש Facebook Platform מציעה למפתחים

ב 24 למאי 2007 הושקה לאחר צפיות רבות מערכת ה Facebook platform שאפשרה למפתחים חיצוניים לפתח אפליקציות עבור פייסבוק.

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

חלק 3: הכלים ש Facebook Platform מציעה למפתחים

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

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

Platform Applications

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

Desktop Applications

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

Public Profiles

מונח המוכר גם כ Facebook pages או Fan pages.

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

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

Facebook For WebSites (לשעבר Facebook Connect)

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

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

ניתן לשלב את Facebook connect  גם במכשירים ניידים כגון טלפונים,נגני MP3 ועוד.

Facebook Platform Core Components

FBML

FBML הן ראשי התיבות של Facebook Markup Language. שפה מבוססת תגיות אשר מבוססת על HTML ואשר מספקת תמיכה במרבית מתגיות HTML וכמות גדולה של סטי ממשקים המשולבים בפייסבוק עצמה.

כאשר יש קריאה לאפליקציה שמכילה תגי FBML, אותם תגים מתורגמים באופן אוטומטי ל HTML,CSS ו קוד JavaScript ע"י שרתי פייסבוק אשר מציגים למשתמש גרסה מתורגמת של הקוד.

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

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

FBJS

FBJS היא הגרסה של פייסבוק ל JavaScript. תומכת במרבית ה DOM based manipulations methods שמפתחים מכירים יחד עם הסגנון המוכר של events,functions ו properties.

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

לדוגמא, פייסבוק לא מאפשרת להשתמש ב onload() event handler אשר מאפשרת להריץ קוד כאשר דף נטען.

FQL

FQL הן ראשי התיבות של Facebook Query Language ומדובר בעצם בשפה הדומה מאד לשפת SQL בסיסית.

פייסבוק מאפשרת לאפליקציות בעזרת השימוש ב FQL לבצע פעולות כגון שאילתות מול טבלאות מסדי הנתונים של פייסבוק.
למרות הדמיון הרב ל SQL לא כל הפעולות המוכרות לנו משפת ה SQL נתמכות. בין הפעולות שנתמכות ניתן למצוא את: SELECT,WHERE,ORDER BY,LIMIT ועוד.

שפת ה FQL מאפשרת לאפליקציות לבצע סינון לשאילתות לפי פרמטרים מסוימים ובכך להאיץ את זמן הפעולה כמו כן ניתן לבצע מספר שאילתות בבת אחת על מנת לחסוך round trips מיותרים.

XFBML

אפליקציות מבוססות IFrame ואתרים חיצונים אשר משתמשים ב Facebook connect לא יכולים להשתמש ב FBML ולכן נמנעת מהן הגישה לפקדי פייסבוק ו widgets רבים אשר FBML מספקת.

על מנת לעקוף בעיה זאת, פייסבוק מספקת פתרון הנקרא XFBML בנוסף לספריה הנקראית Facebook javaScript Client Library אשר מספקים תמיכה חלקית ב FBML.
אמנם XFBML לא תומכת בכל תגיות ה FBML אך חלק נכבד מהתגיות הפופולאריות והחשובות כן נתמכות וברוב המקרים הן גם מתנהגות באותה צורה כפי שהיו מתנהגות בשימוש ב FBML.

על מנת להשתמש ב XFBML חשוב שהאפליקציה תכתב בתקן stirct XHTML ויש לטעון את ה Facebook JavaScript Client Library  לפני ע"י הוספת הקוד הבא:


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

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

רשימת כל חלקי המדריך

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

אליקו יצחקי

אודות אליקו יצחקי

אליקו יצחקי הינו המייסד והעורך הראשי של הבלוג.

Bookmark and Share

8 תגובות »

הוספת תגובה

הוסף את תגובתך למטה או שלח טראקבק מאתרך. תוכל גם להרשם לעדכון על התגובות באמצעות RSS.