דילוג לתוכן ראשי

קורסים

  • תכנות מונחה עצמים (10128)
  • תקציר הקורס:

    תקציר:

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

    פולימורפיזם וממשקים.

    הסטודנטים ילמדו לתכנן מערכת והצגת באמצעות diagram class.
  • כלי פיתוח (10142)
  • תקציר הקורס:

    תקציר:

    מבוא ללינוקס, שימוש בטרמינל ועורכי קבצים, ארכיטקטורת מערכת קבצים, היכרות עם באש (Bash),

    פקודות בסיסיות, ניהול ועבודה עם קבצי אצווה, צינורות והפניות, כתיבת סקריפטים בבאש (Bash).

    כלים שונים לפיתוח ותפעול הפיתוח (DEVOPS) בסביבת LINUX,

    עבודה עם גיט (GIT) ועם DOCKER CONTAINERS
  • הנדסת תוכנה אינטגרטיבית (10143)
  • תקציר הקורס:

    תקציר:

    מימוש תשתית מרובת תהליכים; תכנות ריאקטיבי Reactive Programming; מנגנון ה-Logger; מנגנון Reflection; מודל MVC; בדיקות יחידה, Mocking, בדיקות אינטגרציה; פיתוח Web-Services; חיבור לבסיסי נתונים טבלאיים (Relational Databases) ובסיסי נתונים של NoSQL; פיתוח Client-Server; מתודולוגיית AOP תוך שימוש ב-Spring.

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

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

    כמו כן לצורך הפרויקטים יהיה צורך בלמידה עצמאית של מחלקות ותשתיות תוכנה לפי הנחיות שימסרו לאורך הקורס.
  • מחשוב בענן (10353)
  • תקציר הקורס:

    תקציר:

    מערכות מבוזרות מאפשרות גמישות גדולה וביזור יחידות פיתוח בצורה מודולארית.

    ארכיטקטורות מחשוב ענן מקנות לתוכנה שפועלת עליהן היבטים דינאמיים שמשפיעים על ויסות העומסים על מערכות אלה (Scalability);

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

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

     

    בקורס זה נדון בהיבטי הפיתוח הקשורים לארכיטקטורות ענן, הכוללים שימוש בתבניות נפוצות לפיתוח יעיל בענן (Cloud Architecture Design Patterns),

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

    אוטומציה של תהליכי פיתוח ושימוש במתודולוגיות וכלים שיאפשרו עדכון זריז ויעיל של התוכנה (Agile Cloud Development).

     

    הקורס דורש ידע מוקדם בפיתוח מתקדם בשפת Java ובפיתוח בסביבה עתירת תקשורת ובסיסי נתונים. ידע זה מוקנה על ידי קורסי הקדם לקורס זה.

    הקורס נלמד בשפה העברית, אך חומרי הלימוד, הבחינות והפרויקט בשפה האנגלית.