Junior — Middle
Оё метавонед принсипи кушоданӣ/баста шуданро дар контексти барномасозии объектӣ шарҳ диҳед?
sobes.tech AI
Ҷавоб аз AI
Принципи кушодан/пӯшида дар барномасозии объектӣ маънои онро дорад, ки мавҷудоти нармафзор (синфҳо, модулҳо, функсияҳо) бояд ба васеъ кардан кушода, аммо ба тағир додан пӯшида бошанд.
Ин маъно дорад, ки рафтори системаро бе тағир додани коди мавҷуда метавон васеъ кард, ки ин хатари хатоҳоро кам мекунад ва нигоҳдориро осонтар мекунад.
Дар C# ин аксар вақт тавассути истифодаи абстраксияҳо, интерфейсҳо ва меросӣ ба даст меояд. Масалан, бо илова кардани функсияи нав, мо як синфи нав месозем, ки интерфейсро иҷро мекунад, ба ҷои тағир додани он.
Масал:
public interface IShape
{
double Area();
}
public class Circle : IShape
{
public double Radius { get; set; }
public double Area() => Math.PI * Radius * Radius;
}
public class Square : IShape
{
public double Side { get; set; }
public double Area() => Side * Side;
}
// Акнун метавон формҳои нав илова кард, бе тағир додани коди мавҷуда
Ин тариқ, системаи васеъ мешавад бо илова кардани синфҳои нав, на тағир додани кӯҳнаҳо.