תוכן הקורס
מס' סעיף |
תת סעיף |
נושא |
1 |
אלגוריתם – פרק זה עוסק באלגוריתמים מילוליים |
|
|
1.1 |
הגדרת האלגוריתם, שימוש באלגוריתם לשם פתרון בעיות במחשב, בעיה אלגוריתמית(הגדרה), מטרת האלגוריתם |
1.2 |
מבנה תנאי, מבנה לולאה באלגוריתמים, ארגון של מבנים באלגוריתמים: מבנה סדרתי, מבנה תנאי, מבנה חוזר-לולאה, מבנה חוזר –לא מותנה (for), מבנה חוזר מותנה (while). |
|
1.3 |
מספור והזחה בכתיבת אלגוריתמים מילוליים |
|
1.4 |
מהדרים ומפרשים- Compiler & interpreter, הכרת המכונה הוירטואלית. |
|
2 |
מבוא לתכנות ב JAVA |
|
|
2.1 |
מבוא לג'אווה , מבנה תכנית, מחלקה ראשית בשפת ג'אווה, שמות משתנים בשפה, הוראת השמה, פעולות מתמטיות, הוראת פלט, שילוב הערות בגוף התוכנית, סוגי משתנים, הגדרת קבוע, הגדרה של טיפוסי נתונים בסיסיים-primitives-types,שמות משתנים, משפט השמה. |
2.2 |
המרה בין טיפוסים באמצעות Casting, יש להציג דוגמאות למחלקות בסיסיות ( משתנים, השמות, חישוב, פלט)- ביצוע פעולות אריתמטיות בסיסיות. |
|
2.3 |
כתיבת ביטויים מתמטיים בג'אווה, טבלת משפטי השמה מקוצרים, הדגמה באמצעות תכניות פשוטות. |
|
3 |
מתחילים לתכנת |
|
|
3.1 |
אופרטורים, משפטי השמה, קלט פלט של תכניות שרשור פלט, קדימות של אופרטורים. |
3.2 |
ממשק מחלקה, מבנה ממשק מחלקה, פקודת Import, פעולות במחלקה, פעולה, חתימת הפעולה, זימון של פעולה, החזרת ערך מפעולה/אי החזרה. הערך null. |
|
3.3 |
היכרות עם המחלקה Math: Sqrt ,abs ,pow round ,min ,max ,pi יש לתרגל שימוש בסיסי במחלקה. |
|
3.4 |
הכרת מחלקות ומופעים של מחלקות, תכונות ופעולות של מחלקה, יש להדגים שימוש. ניתן לאמץ את מחלקת bucket ן- turtle של האוניברסיטה העברית-ראה נספחים א' ו- ב'. יש להדגים מחלקות פשוטות, קלט פלט, ותהליך עיבוד בסיסי. |
4 |
משפטי תנאי, פעולות, יבוא מודולים |
|
|
4.1 |
אופרטורי יחס , משתנים וביטויים לוגיים |
4.2 |
משפט תנאי if , יש לתת דוגמאות למחלקות עם שימוש במשפטי תנאי, משתנה boolean, אופרטורי יחס. |
|
4.3 |
קינון משפטי תנאי, כללי השיוך של if-else, האופרטורים הלוגים and ,or ,not טבלת
אמת or, not.and |
|
4.5 |
פעולות – כתיבה וזימון פעולות מופע ופעולות מחלקה – פעולות סטטיות מדוע "כדאי" לכתוב פעולות? סוגי פעולות פעולה המחזירה ערך פעולה שאינה מחזירה ערך הגדרות חתימת פעולה טענת כניסה טענת יציאה יש להביא דוגמאות. הסבר כללי ומפורט - העברת עצמים לפעולה |
|
4.6 |
משפט switch יש להדגים במספר דוגמאות |
|
4.7 |
סיכום: חתימת פעולה, טענת כניסה, יציאה, הסבר כללי ומפורט– העברת עצמים לפעולה. משפט switch, הדגמה לכל נושא. |
5 |
לולאות |
|
|
5.1 |
משפט for דוגמאות לולאות הרחבות עם תחביר שונה למשפט for בשפת java תירגול – לולאות for |
5.2 |
משפט while תירגול ודוגמאות - לולאות while |
|
5.3 |
יעילות אלגוריתם – הגדרה אורך הקלט- איטרציה סיכום מבוא ליעילות אלגוריתמים - ניתוח של קוד ומימושו לפי המאפיינים הבאים: המקרה הטוב ביותר, הגרוע ביותר והממוצע יעילות - סיבוכיות של אלגוריתם. משפט do while, יש להדגים. |
|
5.4 |
הגדרה –לולאה עם זקיף יש להדגים לולאות עם זקיף |
|
5.5 |
תירגול ודוגמאות עצמים ולולאות |
|
5.6 |
הגדרת תבניות אלגוריתמיות: ( ראה בביליוגרפיה-[ 1 ] יסודות מדעי המחשב בג'אווה אוניברסיטת ת"א , תבניות אלגוריתמיות פרק 7) הדגמה: תבנית לצבירת מכפלה תבנית למניה תבנית לחישוב ממוצע תבנית מניה מימוש ב - לולאת while תבנית מניה וממוצע - לולאת while תבנית למציאת מינימום ומקסימום תבנית מציאת המקסימום \ מינימום כולל מיקום המספר בסדרת המספרים משימת סיכום שילוב תבניות מציאת מקסימום, מינימום, וממוצע |
|
5.7 |
היכרות עם המחלקה String: קלט מחרוזת האופרטור + פועל על שתי מחרוזות : האופרטור + פועל על מחרוזת ומספר : יש לתרגל וללמד שימוש בעצם מסוג String , מניפולציות ועבודה עם מחרוזות, איתור תו, קיצוץ מחרוזת, חיפוש רצף תווים, החלפת תו, חיבור מחרוזות וכו'. המרה למחרוזת. |
6 |
מבנה נתונים סדרתיים |
|
|
6.1 |
מערך בג'אווה הגדרת מערך סוגים שונים (Type) של מערך הגדרת מערך מטיפוס שלם, השמת ערכים והדפסת המערך גישה לתא במערך איברים סמוכים במערך סיכום מציין ותוכן של תא במערך מערכים והפניות מערך מונים מערכים חד מימדיים ותבניות - סיכום |
6.2 |
תבניות אלגוריתמיות לסריקת מערך: ( ראה בביליוגרפיה-[ 1 ] יסודות מדעי המחשב בג'אווה אוניברסיטת ת"א , תבניות אלגוריתמיות פרק 10)
לולאה לסריקת כל איברי המערך: תבנית סריקת מערך "בסדר הפוך" תבנית סריקה בדילוגים תבנית בדיקת קיום תנאי תבנית קיום תנאי ומנייה תבנית סכום מערך תבנית ממוצע מערך תבנית חישוב האיבר המקסימלי במערך תבניות קיום תכונה במערך קיום תכונה בכל איברי המערך תבניות בסיסות נוספות גבולות הסריקה של מערך תבנית סריקת שני מערכים( או יותר ) |
|
6.3 |
תבנית העברת איברים ממערך לפי קריטריון למערך אחר האלגוריתם להעברה ברצף תרגילי סיכום מערכים חד מימדיים – עם ניתוח שאלות ופתרונות |
|
6.4 |
אלגוריתמים לחיפוש ערך במערך חיפוש סדרתי במערך חיפוש ערך במערך עצמים חיפוש בינארי
|
|
6.5 |
מיון הכנסה - insertion sort מיזוג מערכים ממוינים – Merging תוכנית מיזוג מערכים מיזוג שני מערכים ממויינים
|
|
6.6 |
מערכים " דו ממדיים " ( ראה בביליוגרפיה-[ 1 ] יסודות מדעי המחשב בג'אווה אוניברסיטת ת"א , תבניות אלגוריתמיות פרק 12)
סריקות במערך דו-מימדי מערך דו-מימדי – סיכום ריבוע קסם- פתרון תוכנית לבדיקה ריבוע קסם העברת מערך דו-מימדי לפעולה החזרת מערך דו-מימדי מפעולה סריקות במערך "סביב" איבר נתון עבודת כיתה – מערכים דו-מימדיים
|
|
6.7 |
מערכים דו מימדיים ותבניות - סיכום לולאת סכום כל איברי המערכים- לולאת סכום שורה מסוימת במערך – נניח סיכום שורה 2 לולאת סכום שורה בנפרד והשמת הסכום במערך סכומים חישוב סכום "עמודות" והשמת הסכום במערך סכומים
|
7 |
מבוא
לתכנות מונחה עצמים |
|
|
7.1 |
יצירה והפעלת עצמים - רענון וחזרה ממשקים למחלקות יצירת הפנייה לעצם –רענון וסיכום עקרון הכמסה - Encapsulation private public ממשק מחלקה – הרחבת הרעיון יצירת מחלקה כתיבה- מימוש של מחלקות יצירת עצם ואיתחול תכונות הגדרת פעולה בונה ההפנייה this פקודות ושאילתות ניתן לאמץ את מחלקת bucket ן- turtle של האוניברסיטה העיברית-ראה נספחים א' ו- ב'.
|
7.2 |
סיכום – כתיבת מחלקות – יצירת טיפוסי נתונים חדשים אובייקטים, תכונות ופעולות מצב עצם מבנה הגדרת מחלקה המילה public - המילה class - הגדרת תכונות המחלקה הגדרת פעולות - כותרת הפעולה - טיפוס הערך המוחזר - שם הפעולה - פרמטרים - גוף הפעולה - התנהגות של עצמים
|
|
7.3 |
בנאים-הרחבה העמסה – overloading ודריסה overriding
|
|
7.4 |
כתיבת פעולות פנימיות( בתוך המחלקה שמגדירה את הטיפוס, מחוץ למחלקה – פעולה חיצונית)ה"מטפלות" בשני עצמים פעולה עם שני עצמים עצמים עם תכונה מטיפוס עצם (הכללה) יש להציג דוגמאות. |
|
8 |
רקורסיה |
|
9 |
הכרות עם המחלקה- exceptions, פארדיגמת exceptions, טיפול ב- exceptions נפוצים, מעבר על דוגמאות |
|
10 |
ערוצי פלט וקלט, System.ini, System.out, System.err קריאה
וכתיבה לקובץ טקסט וקובץ בינארי |
|
11 |
הגדרה
ועקרונות הבסיס של : שימוש
בהם. Thread ראשי, Threads
בנים. |
12 |
יישום שימוש בכתיבה תקנית בסביבת Java , ראה קישור בטבלת מרכיבי תוכנה |
13 |
הכרת מנגנון ניהול הזכרון והמכונה הוירטואלית בג'אווה. כיצד מנוהל הזכרון? איך פועל מנגנון הניקוי? ההבדל בין ג'אוה לשפות אחרות בהיבט זה. הכרת נושא פרגמציה בניהול זכרון, כיצד מתמודדים עם בעיות של צריכת יתר של זכרון? האם ניתן לאלץ ניכוי זכרון באופן מיידי? |
14 |
תרגיל
סיכום: |