על פיתוח אתרים – WWW
במסגרת הסידרה על המקצועות השונים במקצועות התוכנה נדבר היום על פיתוח אתרים.
דפדפן האינטרנט הינו חלון למידע שיושב על שרת אי שם ברשת. מידע נמצא שם כדף HTML סטטי או כתוכנית מחשב המייצרת דף HTML.
ישנם כיום כלים רבים המחוללים דפי אינטרנט ומאפשרים לאנשים שאינם מתכנתים לייצר דפי אינטרנט, אחת הדוגמאות היא הפלטפורמה שאני משתמש לבלוג הזה: Word Press, כל שעלי לעשות אחרי שהתקנתי את החבילה על השרת הוא להכנס לדפים השונים ש WP מציע לי ולקבוע צורה, להעלות תמונות, או פשוט לכתוב. בלחיצת כפתור לאחר שכתבתי את הפוסט הוא הופך לדף אינטרנט.
ישנם עד סוגי מחוללים, גרפיקה, אנימציה ועוד (Flash למשל) שמשתמשים בהם בעלי מקצוע כמו מעצבים או גרפיקאים ולא מפתחי תוכנה.
בדומה לאפליקציות על מכשירי הסלולר בהם נגעתי במאמר מוקדם יותר בסידרה, גם כאן יש לנו ארכיטקטורת שרת לקוח. פרוטוקול התיקשורת בין השרת ללקוח הוא בדרך כלל HTTP (ר”ת Hypertext Transfer Protocol) או HTTPS כאשר השני הוא מאובטח והראשון לא.
נבחן תחילה את צד הדפדפן, הלקוח, הדפדפן מקבל מהשרת מסמך בשפה שהיא בדרך כלל HTML (ר”ת HyperText Markup Language), (דפדפנים מסוגלים לקרוא גם מסמכים בשפות אחרות כמו XML, או JPG אולם אנו נתרכז ב HTML לצורך עינינינו). שפת HTML מכילה תוכן ותגיות שונות המסמנות את סוג התוכן, לדוגמא לינק, או טבלא. בנוסף מכיל ה HTML הוראות כיצד להציג את התוכן (למשל, האם לינק צריך להיות כחול או ירוק…) שפת ה HTML מאפשרת לשתול בתוכה תוכנות בשפת Javascript, אותה הדפדפן מריץ בזמן הצגת המסמך. שפת ה JS מאפשרת לנו ליצור דפים מתוחכמים כמו למשל תצוגת תמונות או מיון טבלאות. ישנן שפות נוספות שהדפדפנים יודעים להריץ, כדוגמאת ה Flash, אולם תוכניות אילו כאמור מיוצרות על ידי מחוללים (אפליקציות מחשב המייצרות קוד) ולא על ידי מתכנתים.
ככלל, דף ה HTML על כל מרכיביו מכיל מידע עבור הדפדפן: איך ומה להציג ולבצע בדף.
מתכנתי אינטרנט ברמה הבסיסית ביותר יודעים מכירים את שפת ה HTML ו Javascript. בעל ידע ברמה הזו מסוגל לכתוב דף אינטרנט פשוט כדוגמאת הדף שאתם קוראים ברגע זה.
עכשיו נעבור לצד השרת, תפקידו של השרת לספק לדפדפן על פי דרישתו דפי HTML. השרת יכול לעשות זאת בשתי צורות, הפשוטה היא לשלוח קובץ HTML אותו ביקש הלקוח. האפשרות השניה היא להריץ תוכנה שתייצר דף HTML ותשלח אותו ללקוח. מתי נשתמש בתוכנה במקום בדף שמור ? ובכן, ישנם כמה מיקרים קלאסיים, הראשון, אם אנחנו רוצים לקבל מידע מהלקוח ולשמור אותו: מילוי טפסים, מענה על שאלון וכו. או אם אנחנו מבקשים מידע על משהו שאי אפשר היה לדעת אותו מראש, למשל, כמה אנשים שלחו תשובות על השאלון עד כה.
את קוד ה HTML ניתן ליצור בעזרת כל שפת תוכנה אולם יש שפות קלאסיות המשמשות לכך כמו Perl, PHP ועוד. התוכנות המייצרות את הקוד נקראות CGI SCRIPTS. ה CGI הוא השם שניתן למנגנון המקשר בין התוכניות ל HTTP (ר”ת Common Gateway Interface).
ה CGI SCRIPTS הן תוכנות מסוגים שונים ורבים, חלקן משתמשות בבסיסי נתונים לשמירה וכריית מידע, חלקם מבצעות פעולות על text, חלקן יודעות לקרוא לאסוף ולעבד מידע ממקורות שונים ומגוונים.
ומילה אחרונה, תוכנות המספקות שירותים כמו שמירת מידע, ניתוח נתונים וכו נפוצו בדור השני של התפתחות ה WWW שנקרא web 2.0. הדור הזה מתאפיין בשרותים שונים שאפשר לקבל מהשרת דרך ה WWW. כדוגמא מילוי טפסים ושליחת בקשות, קנייה ומכירה ועוד.
לסיכום, מפתחי אתרים מתחלקים לשלושה:
הראשונים משתמשים במחוללי אתרים וצריכים ידע בסיסי מאוד במושגים כמו מה זה HTML
הקבוצה השניה יודעת לכתוב HTML ולעיתים גם Javascript
הקבוצה השלישית כוללת מפתחי CGI Scripts, שהם מתכנתים שצריכים להכיר שפות תוכנה רלוונטיות וכן את הפלטפורמות של השרתים, כגון לינוקס ועוד.
כמובן שלא נגענו היום בכל האספקטים, לא דיברנו על מפתחי Java למשל, אולם זה כבר נושא רחב הרבה יותר ומקומו לא בסידרת המאמרים הזו.