מונחים בסיסים בתוכנות קוד פתוח.

מונחי בסיס

  • תוכנה: אוסף מאורגן של הוראות ומידע עבור מחשב.
  • תוכנית מחשב: רצף של הוראות בשפת תכנות כלשהי, שנועדו לבצע משימה מסוימת, קטנה או גדולה, במחשב.
  • תכנות: המלאכה של פיתוח ותחזוקה של תוכנה.
  • קוד פתוח: (Open Source) – תוכנה אשר קוד המקור שלה גלוי ונגיש בדרך כלל באמצעות האינטרנט. פרויקטים המפותחים בגישה של קוד פתוח מאפשרים לקהילה רחבה של מפתחים ממרחבי האינטרנט זמינות להורדה של הקוד להתבוננות ולמידה ממנו. פרויקטים אלו מפיקים תועלת ממודל הפתיחות כאשר הקהילה תורמת בחזרה לפרויקט שיפורים תיקונים והרחבות של קוד המקור. פרויקטים מפורסמים אשר פותחו בגישה של קוד פתוח הם לינוקס (Linux) ואפאצ'י (Apache).

שפת תכנות

  • קוד מקור: הוראות הפעלה עבור מחשב הכתובות על פי תחביר של שפת תכנות. הכוונה בדרך כלל לתוצאת עבודתו של מתכנת.
  • שפת מחשב: שפה אשר בה נכתבות הוראות הפעלה סדורות עבור המחשב. שפה זו מעובדת לפעולות על ידי המעבד אשר במרכז המחשב.
  • שפת תכנות: שפה, בעלת אוצר מילים וכללי תחביר משלה, המשמשת למתן הנחיות פעולה למחשב. ראו רשימת שפות תכנות.
  • שפה עילית: שפת תכנות שסגנונה קרוב לשפתו של המשתמש בה ובעזרתה אפשר ליצור תוכנת מחשב.
  • שפת סף: שפת תכנות שבה יש התאמה חד-חד ערכית בין הפקודות שכותב המתכנת ובין הפקודות בשפת המכונה, כלומר כל פקודה בשפת סף מתורגמת לפקודה אחת בשפת מכונה.
  • שפת מכונה: הקידוד הבינרי הישיר למתן הוראות פעולה למעבד.
  • מחולל יישומים: כלי תוכנה אשר בעזרתו ניתן לכתוב תוכנת מחשב. היחס בינה לשפה עילית הוא היחס בין בניה מודולרית מתועשת לבין בניה מסורתית.
  • אסמבלר: תוכנית מחשב המתרגמת תוכנית שנכתבה בשפת אסמבלי לקוד ביצוע במחשב.
  • קישור: חיבור רכיבי תוכנה אחדים לתוכנית בת-ביצוע אחת.
  • bootstrapping: (אתחול) הפעלת תהליך מורכב באמצעות תהליך פשוט יותר.
  • מפרש: (באנגלית interpreter) תוכנה הקוראת תוכנית מחשב הכתובה בקוד שפת תכנות ומבצעת אותה שורה אחר שורה, ללא שלב הביניים של ההידור. רוב שפות התסריט (Scripting Languages) וגם גרסאות מסוימות של שפת BASIC הם כאלו.

שימוש בתוכנה

  • הנדסת תוכנה: היא הפעילות ההנדסית העוסקת בפיתוח יעיל של תוכנה איכותית.
  • אימות תוכנה: תחום במדעי המחשב העוסק בהוכחה שתוכנה מסוימת מבצעת בדיוק את מה שהוגדר במפרט שלה או בעלת תכונות מסוימות.
  • סיבוכיות: ענף של מדעי המחשב שבמסגרתו נבחנים המשאבים הנחוצים לפתרון בעיה נתונה באמצעות מחשב, ומושווית יעילותם של אלגוריתמים שונים לפתרון בעיה זו.
  • מכונה וירטואלית: תוכנה היוצרת סביבה הנחוצה להפעלתה של תוכנה אחרת, מבלי שיהיה צורך במימוש פיזי של סביבה זו.
  • גיור תוכנה: התאמתה לשפה העברית של תוכנה שפותחה למען משתמשים בעולם הרחב, ללא התחשבות מראש בשפה העברית.
  • Porting: התאמת קוד תוכנה מסביבה X לסביבה Y.
  • ממשק משתמש: חלק התוכנה המטפל בדיאלוג שבין המחשב למשתמש.
  • GIGO: עקרון מעולם מדעי המחשב שלפיו תוכנית מחשב או פונקציה המקבלת קלט שגוי, דינה להחזיר פלט שגוי גם הוא.

מערכת הפעלה

  • BIOS: (ראשי תיבות Basic Input Output System), מערכת קלט/פלט בסיסית, משמשת לאיתחול מערכות מחשב.
  • API:‏ (ראשי תיבות Application Programming Interface) – פונקציות של תוכנה, לרוב של מערכת ההפעלה עצמה, הפתוחות לשימושן של תוכנות אחרות לשם קבלת שירותיה של מערכת ההפעלה או התוכנה.

אבטחת מידע

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

מוצרי תוכנה

  • WYSIWYG: (ר"ת What You See Is What You Get), תכונה של תוכנת עריכה (מעבד תמלילים, עורך HTML וכדומה) שבה הדף המוצג על-גבי הצג בזמן עריכת המסמך זהה לזה שיוצג בתוצאה הסופית: דף במדפסת במקרה של מעבד תמלילים, דף בדפדפן במקרה של עורך HTML וכדומה.
  • OCR: (ר"ת Optical Character Recognition), תוכנה המסוגלת לזהות אותיות הנמצאות על-גבי נייר או מסך, על-פי צורתן הגרפית.
  • מעבד תמלילים: תוכנה המשמשת להקלדה, עריכה ועיצוב של מסמכים מודפסים.
  • בינה מלאכותית: ענף של מדעי המחשב העוסק ביכולתם של מחשבים לפעול באופן המציג יכולות השמורות עד כה לבינה האנושית בלבד.
  • מבחן טיורינג: כינוי למבחן שהציע אלן טיורינג בשנת 1950, כדרך לוודא האם למכונה יש בינה מלאכותית.
  • ראיה ממוחשבת: ענף של מדעי המחשב העוסק במתן יכולת למחשב להבנה, ניתוח, ועיבוד מידע חזותי מתמונות וסרטי וידאו.

תכנות מונחה עצמים

תפיסה בפיתוח תוכנה, שהמרכיב הבסיסי בה הוא האובייקט – מופע (מימוש) של מחלקה (class). מכל מחלקה ניתן לבנות אובייקטים כרצוננו. מחלקה כוללת משתנים ופעולות אפשריות על המשתנים. הרעיון הוא שכל פעולה על משתני המחלקה תעשה רק ע"י הפעולות המוגדרות בתוך המחלקה. בכך מושגת שמירה על המשתנים והקלה בתהליך בדיקות התוכנה. מכל מחלקה ניתן לבנות בהורשה מחלקות אחרות, שלהן יתווספו משתנים ופעולות מעבר למה שמוגדר במחלקה המורישה. כל מחלקה כוללת גם בנאי (constructor) הבונה אובייקט חדש של המחלקה, ומפרק (destructor) אשר מפרק את האובייקט ומשחרר את הזכרון שהיה בשימוש האובייקט.

  • Constructor: הבנאי של המחלקה יוצר מחלקה חדשה ומציב ערכים התחלתיים במשתניה.
  • Copy constructor: פונקציית ההעתקה היוצר עצם חדש על ידי העתקת מאפייניו ונתוניו מעצם קיים.
  • פולימורפיזם: מנגנון שמאפשר כתיבת תוכנה ברמות הפשטה שונות. באמצעות פולימורפיזם ניתן ליצור תוכנית העושה שימוש בהיררכיה מסוימת של מחלקות שיש להן פונקציות הדומות בהגדרתן אך לא בגוף הביצועי שלהן. בחלק ה MAIN ניתן יהיה ליצור משתנה מצביע למחלקה הבסיסית ביותר בהיררכיה, ולהצביע באמצעותו גם על כל אחד מהבנים של אותה המחלקה. בדרך זו, הפניה לפונקציות הדומות תהיה פשוטה יותר, ואופן הטיפול והתחזוקה במקרה של הוספת מחלקות חדשות, יהיה פשוט וקל.
  • כימוס: מנגנון שמאפשר יצירת יחידת תוכנה בעלת ממשק מוגדר לשאר חלקי התוכנה.

תכנות מונחה-עצמים

http://he.wikipedia.org/wiki/%D7%9E%D7%95%D7%A0%D7%97%D7%99%D7%9D_%D7%91%D7%AA%D7%95%D7%9B%D7%A0%D7%94

Comments

פוסט מאת פורסם בקטגוריה כללי בתאריך .

אודות admin

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

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *