
הטקסט המלא של הדקות הראשונות בהרצאה «תכונות מחושבות - Computed Properties - Enums» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
שלום וברוכים הבאים בשיעור הקודם ראינו שאנחנו יכולים להגדיר עבור רינאמים שלנו גם פונקציות או במילים אחרות פעולות היום אנחנו רוצים להגיד שעבור רינאם אפשר להגדיר לא רק פעולות אלא גם אפשר להגדיר עבורם תכונות מחושבות וזה הנושא שלנו להיום תכונה מחושבת מהי תכונה מחושבת תכונה מחושבת היא תכונה שערכה נגזר
מהערך של הרינאם או מהערך של אותו טייפ שאני נמצא בו למשל Hebrew Day אני יכול להגדיר את זה לא כפונקציה, אלא כתכונה של ה-enum. הנה, כאן זה פונקציה ואנחנו לא רוצים להגדיר את זה כפונקציה, אני רוצה להגדיר את זה כתכונה מחושבת.
אני הולך להדביק פה רגע קוד ונדבר עליו. זאת הפונקציה של get Hebrew Day, עכשיו אמרתי את זה פשוט לתכונה מחושבת. Hebrew Day, אני בעצם מכריז על זה כעל משתנה מסוג סטרינג, אוקיי? אתם רואים? Hebrew Day הוא סטרינג והערך שלו מחושב בבלוק הקוד שאתם רואים כאן בגוף של התכונה המחושבת.
קודם חבר'ה הדבר היחיד ששונה כאן זה פשוט העובדה שהכרזתי על זה לא כעל פונקציה שהיא פעולה אלא הכרזתי על זה כעל משתנה מסוג סטרינג איך אנחנו משתמשים בזה בview controller שימו לב אני יכול להגריל day ובמקום להשתמש פה בפונקציה שנקראת get Hebrew day אני פשוט יכול באותה מידה לעשות d.hebrewd אוקיי בוא נראה בוא נדפיס וכמובן
צריך להחזיר לי בדיוק בדיוק את אותו דבר. אז מה אנחנו יותר אוהבים? פונקציות או תכונה מחושבת? מה אתם אומרים? בואו אני אגיד לכם מה אני חושב בכל מקרה. מתודה בתכנות מונחה עצמים צריכה לייצג פעולה.
פעולה היא אקשן, היא עושה משהו. ואילו תכונה של אובייקט היא משתנה, וריאבל הוא תכונה של האובייקט, בסדר? ולכן אני מגדיר את זה כתכונה. תכונה של יום שני או יום שישי לצורך העניין, שאנחנו נכתוב אותו בעברית ככה זה לא פעולה אוקיי פעולה זה לשחק כדורסל לקפוץ לזוז לרוץ לעשות משהו לא לקבל את הערך ולכן סוויפט מאוד מאפשרת לנו לעשות את הדברים יפים