יישום רשת – הבדלי גרסאות

תוכן שנמחק תוכן שנוסף
שורה 26:
 
== מבנה יישומים ==
יישומי רשת מחולקים בדרך כלל ליחידות לוגיות הנקראות "שכבות" (באנגלית: tiers), ולכל שכבה יש תפקיד משלה. יישומים מסורתיים מורכבים רק משכבה אחת אשר נמצאת על גבי מחשב הלקוח. לעומת זאת, יישומי ווב מטבעם מובילים לעבודה במודל של [[ארכיטקטורה רב-שכבתית]] (n-tier). למרות שקיימות אפשרויות שונות רבות, המבנה הנפוץ ביותר הוא [[ארכיטקטורה רב-שכבתית#ארכיטקטורת שלוש שכבות|מבנה של שלוש שכבות]] (three-tiered architecture). בצורתו הנפוצה ביותר, מבנה שלושת השכבות מורכב מהשכבות הבאות: הצגה (presentation), לוגיקת היישום (application logic) ואחסון נתונים (data storage), בסדר הזה. הדפדפן הוא השכבה הראשונה (הצגה); המנוע שמשתמש באחת מהטכנולוגיות לתוכןל[[דף אינטרנט דינאמי|תוכן ווב דינאמי]] (כגון [[Active Server Pages|ASP]], [[ASP.NET]], [[Common Gateway Interface|CGI]], [[ColdFusion]], [[JSP]], [[PHP]], [[Perl]], [[Python]], [[Ruby on Rails]]) הוא השכבה האמצעית (הלוגיקה של היישום); ו[[בסיס נתונים]] הוא השכבה השלישית (אחסון הנתונים). הדפדפן שולח בקשות לשכבה האמצעית, אשר משרתת אותן באמצעות תשאול ועדכון של בסיס הנתונים, וגם יוצרת את ממשק המשתמש.
 
עבור יישומים מורכבים יותר, מודל שלוש השכבות עלול שלא להספיק, ובמקרה כזה עדיף יהיה להשתמש בגישה של [[ארכיטקטורה רב-שכבתית (תוכנה)|ארכיטקטורה רב-שכבתית]] (n-שכבות). היתרון העיקרי בגישה כזאת הוא האפשרות לחלוקה עדינה יותר של ה[[לוגיקה עסקית|לוגיקה העסקית]], אשר נמצאת בשכבת היישום. עוד יתרון יכול להתקבל על ידי הוספת שכבת אינטגרציה אשר מפרידה בין שכבת הנתונים ליתר השכבות, על ידי יצירה של ממשק נוח לצורך הגישה לנתונים. לדוגמה, הגישה לנתוני משתמשים תהיה באמצעות קריאה לפונקציה "()list_users", במקום לבצע שאילתת [[SQL]] ישירות כנגד טבלת המשתמשים בבסיס הנתונים. דבר זה יאפשר להחליף את בסיס הנתונים, מבלי הצורך לעשות שינויים כלשהם באף אחת מהשכבות האחרות.