הגדרת Enum פשוט
חלק מהיחידה לוגיקה וזרימת התוכנית במסלול ה-Dart של Coddy. שיעור 59 מתוך 65.
עכשיו, אחרי שהבנת מה הם enums, נלמד איך ליצור אותם ב-Dart. התחביר פשוט ופועל לפי תבנית בסיסית.
כדי להגדיר enum, משתמשים במילת המפתח enum, ואחריה בשם של ה-enum וברשימת ערכים בתוך סוגריים מסולסלים:
enum Weather {
sunny,
cloudy,
rainy
}כל ערך ב-enum מופרד בפסיק, ולפי המוסכמה, ערכי enum נכתבים באותיות קטנות. שם ה-enum עצמו צריך להתחיל באות גדולה, בהתאם למוסכמות השמות של Dart.
לאחר שהגדרת enum, אפשר להשתמש בו בכל רחבי התוכנית שלך. לדוגמה, אפשר ליצור enums עבור תפקידי משתמשים, מצבי משחק או רמות עדיפות:
enum Priority {
low,
medium,
high
}יצירת enum פשוטה כל כך! למעשה, את/ה יוצר/ת סוג נתונים חדש עם קבוצה קבועה של ערכים אפשריים, שיהפוך את הקוד שלך לאמין יותר וקל יותר להבנה.
אתגר
קלצרו תוכנית שמגדירה enum עבור סוגים שונים של שפות תכנות ומדגימה את השימוש בו. עליכם:
- להגדיר enum בשם
ProgrammingLanguageעם הערכים הבאים:dart,python,javascript,javaו-cpp - ליצור משתנה בשם
currentLanguageמסוגProgrammingLanguageולהקצות לו את הערךProgrammingLanguage.dart - ליצור משתנה נוסף בשם
nextLanguageמסוגProgrammingLanguageולהקצות לו את הערךProgrammingLanguage.python - להדפיס את השפה הנוכחית בפורמט המדויק:
Currently learning: ProgrammingLanguage.dart - להדפיס את השפה הבאה בפורמט המדויק:
Next to learn: ProgrammingLanguage.python - לשנות את
currentLanguageל-ProgrammingLanguage.javascript - להדפיס את השפה הנוכחית המעודכנת בפורמט המדויק:
Updated current language: ProgrammingLanguage.javascript
על התוכנית שלכם להדגים את התחביר הנכון להגדרת enum באמצעות מילת המפתח enum, להצהרה על משתנים מסוג enum ולגישה לערכי enum באמצעות סימון בנקודה. הקפידו לפעול לפי מוסכמות השמות של Dart: שמות enum מתחילים באות גדולה, וערכי enum נכתבים באותיות קטנות.
נסו בעצמכם
// TODO: הגדירו כאן את ה-enum ProgrammingLanguage
void main() {
// TODO: כתבו כאן את הקוד שלכם
// 1. צרו משתנה בשם currentLanguage והקצו לו את ProgrammingLanguage.dart
// 2. צרו משתנה בשם nextLanguage והקצו לו את ProgrammingLanguage.python
// 3. הדפיסו את שפת התכנות הנוכחית בפורמט הנדרש
// 4. הדפיסו את שפת התכנות הבאה בפורמט הנדרש
// 5. עדכנו את currentLanguage ל-ProgrammingLanguage.javascript
// 6. הדפיסו את שפת התכנות הנוכחית לאחר העדכון בפורמט הנדרש
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה לוגיקה וזרימת התוכנית
1מניפולציות מתקדמות ברשימות
מאפייני רשימה: ראשון ואחרוןמצב הרשימה: isEmpty ו-isNotEmpהיפוך רשימההוספה לרשימה: insertהסרת פריטים מרשימה: removeWhereחיפוש ברשימה: indexOfמיון רשימהערבוב רשימהסיכום – מארגן רשימות4מניפולציה מתקדמת של Map
מעבר על Mapבדיקה אם מפתחות וערכים קיימיםמאפייני Map: מפתחות וערכיםהוספה מותנית: putIfAbsentהסרת רשומות מ־MapMaps מקונניםסיכום – עדכון מלאי2פעולות פונקציונליות על רשימות
טרנספורמציה באמצעות 'map'סינון באמצעות 'where'שימוש ב-'.toList()'בדיקת תנאים באמצעות 'any'תנאים באמצעות 'every'איתור באמצעות 'firstWhere'סיכום – סינון נתונים5פרויקט: חישוב עגלת קניות
הגדרת הפרויקטהוספת פריטים לעגלה3קבוצות
מהי קבוצה?יצירת קבוצההוספה והסרה מקבוצותבדיקת נוכחות של איברים בקבוצההמרת רשימה לקבוצהאיחוד קבוצותחיתוך קבוצותהפרש קבוצותסיכום – רשימת אורחים ייחודית6טיפול בסיסי בשגיאות
מהן חריגות?בלוק ה-try-catchתפיסת חריגות באמצעות onבלוק ה-finallyהשלכת חריגהסיכום – חלוקה בטוחה9טיפוסי מנייה (Enums)
מה הם Enums?הגדרת Enum פשוטשימוש ב-Enums במשתניםEnums במשפטי 'switch'סיכום – רמזורתרגלו בעצמכם: קומפיילר Dart אונליין