פרדיגמת תכנות – הבדלי גרסאות

תוכן שנמחק תוכן שנוסף
מ שינוי ניסוח קל
שורה 1:
'''פרדיגמת תכנות''' היא סט מוסכמות לכתיבת [[תוכנה]], עם [[שפת תכנות]] מסוימת. קיימות מספר פרדיגמות תכנות וכל שפת תכנות יכולה לשמש לכתיבת תוכנה בפרדיגמה אחת לפחות.
 
פרדיגמת התכנות מתווה את היסודות לאופן שבו התוכנה מפותחת ועל כן יש לה השפעה רבה על כל מהלך הכתיבה, ארגון הקוד, התוצר הסופי ופתרון בעיות.
 
אין לבלבל פרידגמת תכנות עם [[מתודולוגיית פיתוח תוכנה]], שהיא סגנון לפתרוןעבודה בו משתמשים למניעה מראש ופתרון נקודתי של בעיות ב[[הנדסת תוכנה]].
 
דוגמה לפרדיגמת תכנות נפוצה היא [[תכנות מונחה-עצמים]].
שורה 10:
[[פרדיגמה|פרדיגמת]] תכנות קובעת איך ה[[מתכנת]] רואה או תופס את אופן הביצוע של [[תוכנית מחשב]]. לדוגמה, ב[[תכנות מונחה עצמים]], המתכנת יכול לראות את התוכנית כאוסף של עצמים שיש ביניהם פעולות גומלין, ואילו ב[[תכנות פונקציונלי]] אפשר לתפוס את התוכנית כ[[פונקציה]] מ[[קלט]] התוכנית אל ה[[פלט]] שלה. [[תכנות מכוון תהליכים]]{{הבהרה|האם הכוונה לתכנות פרוצדורלי או למשהו דומה?}} מאפשר למתכנת לחשוב על היישום כעל קבוצות של [[תהליך (מדעי המחשב)|תהליכים]] בו-זמניים{{הבהרה|לא עדיף לכתוב סינכורניים או א-סינכרוניים?}} הפועלים על [[מבנה נתונים|מבני נתונים]] המשותפים לוגית.
 
==על הפרדיגמה והשפות==
כשם שקבוצות שונות בתחום [[הנדסת תוכנה|הנדסת התוכנה]] מעודדות מתודולוגיות פיתוח שונות, שפות תכנות שונות מעודדות פרדיגמות תכנות שונות. יש שפות המעוצבות לתמוך בפרדיגמה מסוימת אחת, כגון [[Smalltalk]] ו-[[Java]] התומכות בתכנות מונחה-עצמים, לעומת [[Haskell]] התומכת בתכנות פונקציונלי. אחרות, כגון [[C++]]‎ ו[[פייתון (שפת תכנות)|פייתון]], תומכות בפרדיגמות מרובות, ומאפשרות למתכנת לבחור ביניהן או לשלב מספר פרדיגמות לפי הצורך.