תכנות פרוצדורלי הוא תכנות המשקף את הרקע של ארכיטקטורת נוימן של המחשב. כל התוכנות הכתובות בשפה זו הן רצף מסוים של פקודות הקובעות אלגוריתם מסוים לפתרון קבוצה מסוימת של בעיות. הפקודה החשובה ביותר היא פעולת ההקצאה, שנועדה להקים ולתקן את התוכן בזיכרון המחשב.
מה הרעיון המרכזי של השפה הזו?
התכונה העיקרית של שפות תכנות פרוצדורליות היא השימוש בזיכרון המחשב לאחסון מידע. תפקוד התוכנית מצטמצם לביצוע מתמיד וחילופי של פקודות שונות על מנת להפוך את תוכן הזיכרון, לשנות את מצבו הראשוני ולהביא לתוצאות הרצויות.
איך הכל התחיל
תכנות פרוצדורליות החלו עם יצירת שפה ברמה גבוהה בשם Fortran. הוא נוצר בתחילת שנות החמישים בארה ב על ידי IBM. הפרסומים הראשונים אודותיו הופיעו רק ב-1954.שפת התכנות המכוונת פרוצדורלית Fortran פותחה לביצוע משימות מדעיות וטכניות. האובייקטים העיקריים של השפה הם משתנים מספריים, מספרים ממשיים ושלמים. כל הביטויים בנויים על ארבעה חישובים אריתמטיים עיקריים: אקספוננציה, פעולות יחס, סוגריים, מניפולציות לוגיות AND, NOT, OR.
האופרטורים העיקריים של השפה הם פלט, קלט, מעבר (מותנה, ללא תנאי), קריאה לתתי שגרות, לולאות, הקצאה. תכנות פרוצדורלי בשפת Fortran היה הפופולרי ביותר בעולם מזה זמן רב. במהלך קיומה של השפה הצטבר מאגר מידע עצום של ספריות ותוכנות שונות שנכתבו במיוחד בפורטרן. כעת עדיין מתבצעת העבודה על הצגת תקן Fortran הבא. בשנת 2000 פותחה גרסה של Fortran F2k, שהגרסה הסטנדרטית שלה נקראת HPF. הוא נוצר עבור מחשבי-על מקבילים. אגב, שפות PL-1 ושפות BASIC משתמשות בתקנים רבים מבית Fortran.
שפת קובול
Cobol היא שפת תכנות פרוצדורלית. זוהי שפת תכנות שמטרתה לפתור בעיות רבות של עיבוד מידע. הוא משמש באופן פעיל לפתרון בעיות ניהוליות, חשבונאיות וכלכליות שונות. תכנות פרוצדורלי בקובול פותח בארצות הברית בשנים 1958-1960. לתוכנית עצמה, שנוצרה ב-Cobol, יש כמה סוגים של סוגי משפטים באנגלית, הדומים לטקסט הרגיל ביותר במראה. הנקודה היא שהקבוצהאופרטורים שנכתבו ברצף משולבים למשפטים שלמים, המשפטים עצמם משולבים לפסקאות, ופסקאות משולבות לקטעים. המתכנת עצמו מקצה שמות או תוויות לפסקאות ולקטעים ייעודיים כדי להקל על ההתייחסות לקטע ספציפי בקוד. בברית המועצות פותחה גרסה רוסית של התוכנית ויושמה בהצלחה רבה בפועל.
תכנות מונחה פרוצדורליות בשפת Cobol מתממשת הודות לכלי עבודה רבי עוצמה המסוגלים לעבד זרמי נתונים ענקיים המאוחסנים בכוננים חיצוניים שונים. ישנם יישומים רבים שנכתבו בשפה זו שנמצאים בשימוש פעיל גם כעת.
עובדה מעניינת: המתכנתים עם השכר הגבוה ביותר בארה ב כותבים תוכניות ב-Cobol.
שפת אלגול
שפת תכנות פרוצדורלית זו נוצרה על ידי קבוצה שלמה של מומחים בשנת 1960. זו הייתה תוצאה של תחילת שיתוף הפעולה ברמה הבינלאומית. אלגול פותחה לתחזוקה של אלגוריתמים שנבנו בצורה של רצף של פרוצדורות מסוימות ששימשו לפתרון המשימות. בתחילה, השפה נתפסה בצורה מעט מעורפלת, אך היא הוכרה ברמה הבינלאומית, היא מילאה תפקיד עצום בפיתוח המושגים הבסיסיים של תכנות והוראת דור חדש של מתכנתים. תכנות פרוצדורלי בשפת אלגול היה הראשון שהציג מושגים כמו "מבנה בלוק תוכנית", "הקצאת זיכרון דינמית".
יש עוד תכונה אחת של השפה -זוהי היכולת להזין כמה סימנים מקומיים בבלוק שאינם חלים על שאר קוד התוכנית. כן, אלגול-60, למרות מקורו הבינלאומי, לא היה פופולרי כמו Fortran.
לא לכל המחשבים הזרים היו מתרגמים מ-Algol-60, אז התכנות הפרוצדורלי הזה עבר שינויים והופיעה שפת Algol-68 משופרת.
Algol-68
זו כבר הייתה שפת תכנות מתקדמת רב-תכליתית ורב-תכליתית. המאפיין העיקרי שלו היה שבאמצעות אותה תוכנית ניתן היה לתרגם מגרסאות שונות של השפה ללא כל עלות בהתאמת שפה זו לקטגוריות שונות של מתכנתים שאולי יש להם דיאלקטים ספציפיים לתחום של השפה.
אם נשפוט את היכולות של שפה זו, אלגול-68 אפילו עכשיו מקדימה שפות תכנות רבות מבחינת היכולות שלה, עם זאת, בשל העובדה שאין מחשבים יעילים לשפת תכנות פרוצדורלית זו, עדיין לא ניתן היה ליצור מהדר איכותי ומהיר.
איך הופיע ה-BASIC המפורסם?
שפות תכנות פרוצדורליות כוללות גם את ה-BASIC המפורסם בעולם. באמצע שנות השישים, עובדים במכללת דארטמות' בשם תומס קורץ וג'ון קמני פיתחו שפת תכנות ייחודית שהפכה את כל מה שבעולם. הוא כלל מהמילים הפשוטות ביותר באנגלית והשפה החדשה הוכרה כקוד אוניברסלי למתחילים, או במילים אחרות BASIC. שנת לידהעל פי ההערכה, שפה זו היא 1964. BASIC הפך נפוץ במחשב האישי במצב דיאלוג אינטראקטיבי. מדוע BASIC הפך לפופולרי כל כך? הכל בזכות העובדה שהיה קל ככל האפשר לשלוט בו, בנוסף, השפה עזרה לפתור הרבה משימות מדעיות, כלכליות, טכניות, משחקיות ואפילו יומיומיות. ל-BASIC היו כללי ברירת מחדל שונים, מה שנחשב כעת סימן לטעם רע בתכנות. לאחר מכן, הרבה גרסאות של שפה זו הופיעו בעולם, שלעתים קרובות אינן תואמות, עם זאת, בהבנת אחת הגרסאות, אתה יכול בקלות לשלוט באחרת. בגרסה המקורית היה רק מתורגמן, אבל עכשיו יש גם מהדר.
בתחילת שנות השישים, כל השפות הקיימות דאז התמקדו בפתרון בעיות שונות, אבל הן גם היו קשורות לארכיטקטורת מחשב ספציפית. זה נחשב לחיסרון, ולכן הוחלט לפתח שפת תכנות אוניברסלית.
PL/1
זוהי השפה האוניברסלית הרב-תכליתית הראשונה שנוצרה בארה ב על ידי IBM. שנות יצירה 1963-1966. מאמינים כי מדובר באחת השפות הנפוצות ביותר, היא מותאמת לפתרון בעיות רבות בתחום טכנולוגיית המחשב: תכנון, חקר תהליכי מחשוב שונים, מידול ופתרון בעיות לוגיות, חקר מעגלים לוגיים, פיתוח. של מערכות לתוכנות מתמטיות.
כאשר PL/1 נוצר, נעשה שימוש בפועל במושגים וכלים שונים מ-Algol-60, Fortran, Cobol. PL/1 נחשבת לשפה הגמישה והעשירה ביותר, היא מאפשרתצור תוספות, תקן את טקסט התוכנית המוגמר אפילו במהלך איתור באגים. השפה נפוצה, ומתרגמים ממנה נמצאים בשימוש בסוגים רבים של מחשבים. IBM אפילו עכשיו ממשיכה לתמוך בשפה זו.
Pascal
פסקל היא שפה פרוצדורלית פופולרית מאוד, המשמשת במיוחד עבור מחשבים אישיים. שפת תכנות פרוצדורלית זו נוצרה כשפה חינוכית, שנות יצירתה הן 1968-1971. פותח על ידי Niklaus Wirth ב-ETH בציריך. שפת תכנות זו נקראה על שם המתמטיקאי והפילוסוף הצרפתי הגדול בלז פסקל. המשימה העיקרית של וירט הייתה ליצור שפה שתתבסס על התחביר הפשוט ביותר, מספר קטן של מבנים בסיסיים המופנים לקוד מכונה באמצעות מהדר קונבנציונלי. ראוי לציין שהוא הצליח.
הפרדיגמה הפרוצדורלית של תכנות פסקל מבוססת על העקרונות הבאים:
- תכנות מובנה. במקרה זה, נעשה שימוש בתתי שגרות, מבני נתונים עצמאיים. המתכנת מצליח ליצור קוד קריא בקלות, מבנה תוכנית מובן, מפשט בדיקות וניפוי באגים.
- תכנות בנוי מלמעלה למטה. המשימה מחולקת למשימות פשוטות לפתרון, ועל בסיס המשימות הבנויות, הפתרון הסופי של המשימה הכללית כבר נבנה.
C language
Procedural Programming C שפותח על ידי Bell Labs כדי ליישם את מערכת ההפעלה UNIX, שלא נחשבה במקור כעלמסה. למפתחים היו תכניות פשוט להחליף את Assembler, אבל רק הופיעה שפת C נפרדת. היא ייחודית בכך שיש לה את היכולות של שפות תכנות ברמה גבוהה ובמקביל יש לה את האמצעים לגשת לקשרים פונקציונליים. לשפת C אין מושג של פרוצדורה, התחביר די פשוט, אין הקלדת נתונים קפדנית, כלולה היכולת לבטא כמה פעולות בבת אחת. שפה זו משכה מיד את תשומת לבם של מתכנתים, ונתנה להם הזדמנויות נוספות ליצירת תוכניות מעניינות. עד כה, שפת C פופולרית למדי, היא נמצאת בשימוש נרחב על ידי אנשי מקצוע בתכנות. כעת הוא מיושם בפלטפורמות מחשב רבות.
מה מיוחד בשפות פרוצדורליות?
יש רק כמה מהם, אז כדאי לדבר על כל אחד מהם. זה:
- מודול. חלק מהתוכנית שנשמר בקובץ נפרד. המודול מיישם קבוצה של אפשרויות המשויכות למשתנים, קבועים או אובייקטים מסוימים.
- פונקציה. זהו קטע קוד שלם ועצמאי שפותר בעיה ספציפית.
- סוג נתונים. מושג זה מדבר על מערך מסוים של מידע המוגדר לסוג אחד.
הבדלים בין תכנות פרוצדורלי ותכנות מונחה עצמים
מתכנתים רבים יודעים ששפות תכנות פרוצדורליות ושפות תכנות מונחה עצמים משמשות בפועל בעת יצירת תוכנות או יישומי אינטרנט. מה ההבדל? הכל פשוט, פרוצדורלי ואובייקטיבי-תכנות מכוון משמש בכל מקום בפועל, אבל יש כמה נקודות ייחודיות. במהלך העבודה, המתכנת, מציב לעצמו משימה מסוימת, מפרק אותה לקטנות, בוחר מבני שפה מסוימים ליישום (לולאות, פונקציות, ענפים, אופרטורים מבניים). המשמעות היא שהמומחה מונחה על ידי תכנות פרוצדורלי.
OOP כולל את המושג "אובייקט", אחרת הם נקראים גם מופעי מחלקה, מכיוון שהרבה עובר בירושה מהמחלקה. ירושה היא עוד אחד מהעקרונות המבדילים של OOP.
שפות פרוצדורליות ופונקציונליות
תכנות פרוצדורלי ופונקציונלי זהים או לא? תכנות פונקציונלי מתמקד בפתרון בעיות במתמטיקה בדידה, בעוד שתכנות פרוצדורלי הוא מושג מעט רחב יותר וכולל הרבה שפות תכנות לפתרון סוגים מסוימים של בעיות.
מה לבחור בעצמך?
שפות תכנות פרוצדורליות רבות מיושנות. כן, חלקם עדיין בשיפור, אבל עדיין כדאי לשים לב רק לחלק מהם. למשל שפת C. מקובל היום בעולם, הרבה פלטפורמות מודרניות בנויות במיוחד בשפת C, כך שאם אתה רוצה להתפתח בתחום התכנות, אז כדאי לך להכיר את שפת C טוב יותר., אתה יכול לבחור לעצמך משהו אחר, שאינו קשור בהכרח לשפות תכנות פרוצדורליות.