قدم هایی که در راستای "برنامه نویس بهتری شدن" برداشته میشه; برای من، شما و یا هر شخص دیگه کم و بیش یکسان هستند.
ما شروع به یادگیری اصول اولیه می کنیم، بعدش به آرامی به سمت برنامه نویسی رویه ای حرکت می کنیم. و کمکم با مفهوم شئ گرایی آشنا میشیم و شروع میکنیم به کار کردن با کلاس ها و ساخت آبجکت ها.
وقتی احساس کنیم با اصول اولیه شئ گرایی آشنا هستیم، به سراغ کلاس های انتزاعی (Abstract) میریم و با اینترفیس ها کار میکنیم; و میتونیم روابط رو در کدهامون با استفاده از وراثت پیادهسازی کنیم. بعد برای نوشتن کدهای قابل توسعه و نگهداری، مجبوریم بریم سراغ قواعد سالید و با الگوهای طراحی هم آشنا بشیم.
در طول این مسیر مثال ها و سورس کدهای زیادی رو بررسی خواهیم کرد.. و نکته ای که ممکنه توجه ما رو جلب کنه اینه که: اون طور که باید به وراثت بها داده نشده; و اکثر برنامه نویس های با تجربه به جای وراثت از مفهومی به نام کامپوزیشن (Composition) استفاده میکنند. البته وراثت هم قطعا جایگاه خودش رو داره.
فرهنگ لغت به ما میگه که کلمه Composite یک فعله; که به عمل ساختن یا فرم دادن یک کل، از طریق ترکیب بخشها یا المانهای کوچکتر گفته میشه.
در علوم کامپیوتر کامپوزیشن، به پروسه ای گفته میشه که ما طی اون المان های مختلف برنامه رو برای ساخت یک آبجکت، ترکیب میکنیم. پس میتونیم بگیم: يک شئ هنگامی كه ويژگی های خاصی را مشخص می كنه، میتونه کامپوزيت بشه.
در این مقاله، مفهوم کامپوزیشن رو بررسی میکنیم و اشاره کوتاهی خواهیم داشت به الگوی طراحی استراتژی و پلیمورفیسم
سوالات و نظراتتون رو میتونید داخل این گفتگو عنوان کنید.