ציטוט:
נכתב במקור על ידי FlashBoy
הבעיה שזה לא קיים.
לא עבר ולא בטיח, תכנות פרוצדוראלי עדיין קיים ובמקרים מסויימים הרבה יותר נוח ממונחה עצמים.
|
על מה אתה מדבר?! זה קיים, אתה פשוט לא יודע לעשות את זה:
קוד:
using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication2
{
class Program:A
{
public Program()
{
i = 5;
}
}
class A:B
{
}
class B
{
protected int i;
}
}
אם אתה לא מבין את הקוד, יש לי את המחלקה B שמכילה משתנה i מסוג int שהוא protected (זמין רק למי שיורש ממנה, באופן ישיר או עקיף) - מחלקה A יורשת מB והמחלקה Program יורשת מ A ועדיין היא משתמשת ב i (כי Program יורשת מ A שיורשת מ B שב-B מוגדר המשתנה הזה). יש לי פה מחלקה שיורשת ממחלקה שיורשת - מה שאמרת שבלתי אפשרי קורם עור וגידים לנגד עיניך....
אז מה לא קיים?!
אין היום שום סיבה להשתמש בתכנות פרוצדורלי, אם י שלך דרך להימנע מזה. ולכן, למעשה, רובן המוחלט של השפות המודרניות - פשוט לא מאפשרות תכנות פרוצדורלי.