
הטקסט המלא של הדקות הראשונות בהרצאה «הדגמה של Singleton - חלק 1» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
טוב, היום אנחנו נלמד על דיזיין פאטרן, על תבנית שנקראת סינגל טון. סינגל טון, אם נרצה להגדיר אותו בתמציתיות, אז כתבתי פה שני משפטים. משפט ראשון הוא only one instance.
יש רק אינסטנס אחד, יש רק אחד כזה. זאת אומרת, כשאני רוצה להגדיר מסוג של קלאס מסוים רק אובייקט אחד, אז זה סינגלטון.
זו ההגדרה הראשונה. ההגדרה השנייה זה available, או סליחה, זה חצי ראשון של ההגדרה. חצי שני זה available from everywhere, שהוא זמין מכל מקום.
תכף אנחנו ניכנס ונבין את כל הפרטים. בואו נעבור לשקף הבא. אוקיי, זה הכנתי introduction קצר. אז דבר ראשון, most apps are composed of components.
רוב האפליקציות בנויות מרכיבים. תכף אנחנו נבנה אפליקציה ביחד ואנחנו נראה באמת שהיא תהיה מורכבת מרכיבים ונבין את זה. 2. Most components are singleton. עכשיו, רוב הרכיבים עבור רוב התוכנות יוצא שהם singleton, יוצא שבסופו של דבר אנחנו מקצים, התוכנה שלנו, המערכת שלנו בזמן הריצה שלה מקצה בסופו של דבר, אובייקט אחד מסוג המחלקה שאנחנו מפתחים.
הלאה, there is a need for at most one instance of each component. יש צורך at most, זאת אומרת, במקרה המקסימלי ל-one instance. זאת אומרת, סינגלטון הוא לא בהכרח מחייב שהוא יהיה סינגל, הוא יכול להיות גם אפס. זאת אומרת, עלול להיות מצב שבכלל לא צריך להקצות את המחלקה.
ותכף אנחנו נראה ואנחנו נבין בדיוק על מה מדובר. אז זהו, אז שלב שלוש זה let's see an example. בואו נראה דוגמא, a video conference אפליקציה. בואו נראה דוגמא שהיא תהיה מערכת video conference.
אז בואו נראה אותה, בואו נעבור לשקף הבא. אוקיי, אז זה example. Designing a video conference window. בואו נתכנן את החלון של מערכת video conference. אז זה נראה כמו אייפון שהוא במצב שוכב או או מכשיר אחר, אבל זה גם יכול להיות אפליקציה שהיא רצה בשולחן העבודה שלנו, של Windows או Macintosh.
אז מה כתוב לנו פה? אז יש לנו פה Conference App Main Windows, זאת אומרת זה החלון הראשי של המערכת וידאו קונפרנס שלנו. יש לנו כאן Conference Users, אלה שלושת היוזרים שאיתם כרגע אנחנו מתוועדים.
יש לנו את אליס, את בוב ואת קלרה ואני איתם בדיון. את עצמי אני לא רואה במערכת הזו שאנחנו מתכננים. מה שאנחנו רואים זה, זה הוידאו של אליס וזה הוידאו של בוב וזה הוידאו של קלרה. לא שמתי פה וידאו כי אני לא יכול להראות לכם וידאו, אבל תדמיינו שאנחנו בעצם כרגע בדיון, המטרה של המערכת זה שבזמן ריצה אז אני רואה
ואת הוידאו של כל אחד מהמתוועדים וגם את האודיו, אני יכול לשמוע את האודיו של כל אחד מהמתוועדים. הם יכולים לדבר ביחד, אנחנו יכולים לדבר במקהלה, אנחנו יכולים לשיר שירים ביחד.
זה לא תהיה מערכת וידאו קונפרנס שרק אחד יכול לדבר בזמן נתון. עכשיו כשאני אומר את המילה אחד זה אמור להקפיץ לכם כבר דגלון כי אחד הזה זה המילה סינגל. אז אם אני אומר שבמערכת הזו לא רק אחד יוכל לדבר, אז זה לא יהיה סינגלטון.
אבל תכף אנחנו ניכנס ונבין יותר לעומק כל דבר. אוקיי, אז אנחנו רוצים לתכנן כזו מערכת. אז בואו נעבור לשקף הבא. בשקף הזה, שוב, האקזמפל שלנו, הדוגמה הממשיכה, Designing a video conference app.
עכשיו, כן, בשקף הקודם אנחנו תכננו, שמתם לב, פה תכננו את החלון, בשקף הזה אנחנו מתכננים את האפליקציה זאת