PracticU

הסבר על SOA

בלי כתוביותעם כתוביות
PracticU › קורס WCF - תקשורת למתקדמים בדוט-נט › הסבר על SOA
מילון מושגים:
שירות - תוכנה שרצה ברקע ומספקת פונקציונליות לרכיבים אחרים, לרוב ללא ממשק משתמש, ומופעלת אוטומטית עם המערכת.
מסד נתונים - אוסף מאורגן של נתונים המאוחסן כך שאפשר לשמור, לחפש, לעדכן ולשלוף אותו ביעילות, לרוב באמצעות שפת שאילתות.
ממשק - נקודת מגע בין רכיבים: ממשק משתמש שבו אדם מפעיל תוכנה, או ממשק תכנותי שמגדיר אילו פעולות רכיב אחד חושף לאחר.
דפדפן - תוכנה שמציגה דפי אינטרנט ומריצה את הקוד שבהם, ומאפשרת לגלוש בין אתרים, למשל Chrome או Firefox.
AJAX - טכניקה שמאפשרת לדף אינטרנט לשלוח ולקבל נתונים מהשרת ברקע ולעדכן את התצוגה בלי לטעון מחדש.

הסבר על SOA
SOA, ארכיטקטורה מכוונת שירותים (Service Oriented Architecture), היא דרך לבנות מערכת ארגונית מסרוויסים עצמאיים שמרכיבים תהליכים שונים, כמו קוביות לגו.
הרעיון
1. כל פעולה לוגית הופכת לשירות: כל פעילות עסקית נחשפת כשירות שכל מי שצריך אותו יכול לצרוך.
2. שירות לא יודע איפה הוא משתתף: כל שירות עומד בפני עצמו ואינו תלוי בתהליך שבו הוא נקרא.
3. דוגמה - הזמנה: קבלת הזמנה, שמירה במסד נתונים, בדיקת מלאי, חיוב כרטיס אשראי והוצאת חשבונית.
4. שינוי תהליך בלי לגעת בשירותים: כשהסדר משתנה (חיוב מיידי, חשבונית, ואז בדיקת מלאי), משנים רק את סדר הקריאות לשירותים. השירותים עצמם נשארים זהים.
חוזה ושחקנים
1. חוזה (Contract): כל שירות מתואר על ידי חוזה, שבשפת התכנות הוא ממשק (interface).
2. צרכן (Consumer): מי שקורא לשירות. הצרכן יכול להיות תוכנה, שירות אחר, דפדפן עם AJAX, ASP.NET או Windows Service.
3. לקוח קצה: המשתמש האנושי. הוא לא חייב להופיע בשרשרת.
הקשר ל-WCF
בטכנולוגיות הקודמות השירות היה קשור לפרויקט ולשיטת תקשורת מסוימת, ולכן קשה היה לממש SOA. WCF מפרידה את השירות משיטת התקשורת, ולכן בזכותה בניית מערכת מבוססת שירותים הופכת לפשוטה יותר.
השיעור הבא בקורס: רכיבי Client-Server ב-WCF

פרקי ההרצאה: הסבר על SOA

  1. 00:00

    מבוא: מה זה SOA וארכיטקטורת שירותים

  2. 00:40

    כל פעילות לוגית כשירות נפרד

  3. 01:32

    הרכבת תהליך ארגוני מהשירותים

  4. 02:04

    דוגמה: תהליך הזמנה מורכב משירותים

  5. 02:58

    שינוי סדר השירותים בתהליך

תמלול ההרצאה: הסבר על SOA

הטקסט המלא של הדקות הראשונות בהרצאה «הסבר על SOA» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:20

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

  2. 00:40

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

  3. 00:59

    בואו נראה למה הכוונה. אוקיי, אז אמרנו שSOA זה בעצם ארכיטקטורת מכוונת שירותים, שהשירותים עצמם לא תלויים בתהליך כל שירות.

  4. 01:13

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

  5. 01:31

    הארגון יכול להשתמש בשירותים בכל מיני תהליכים ולשנות אותם ולהגדיר תהליכים ארגוניים אחרים שמתבססים על אותם סרוויסז שנבנו.

  6. 01:44

    וכמו שאמרנו הוא משתמש בהם כמו לגו בונה תהליכים ארגוניים לפי הדרישות שלו בגלל שכל אחד מהם לא יודע באיזה תהליך הוא משתתף.

  7. 01:53

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

  8. 02:06

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

  9. 02:20

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

  10. 02:31

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

  11. 02:49

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

  12. 03:15

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

לקורס המלא: קורס WCF אונליין בדוט-נט

ההרצאה הקודמת: מבוא ל-WCF

ההרצאה הבאה: רכיבי Client-Server ב-WCF

קורסים נוספים במסלול

  • קורס WinForms - תוכנות רגילות בווינדוס
  • פרויקט מעשי ב-#C - בונים מחשבון פשוט
  • פרויקט מעשי ב-#C - ספר טלפונים
  • פרויקט מעשי ב-#C - תוכנת צייר
  • קורס ADO.NET - חיבור אתר למסד נתונים
  • קורס תכנות מתקדם - #Advanced .NET C