Junior — Middle
Ի՞նչ է ենթադրվում օբյեկտային ուղղված ծրագրավորման կոնցեպցիայում՝ կոմպոզիցիայի մասին։
sobes.tech AI
Պատասխան AI-ից
Օբյեկտային կողմնորոշված ծրագրավորման մեջ, կոմպոզիցիան այն սկզբունքն է, որի համաձայն՝ մեկ օբյեկտը պարունակում է այլ օբյեկտների հղումներ՝ նրանց գործառույթները օգտագործելու համար։ Սա այն միջոցն է, որով կառուցվում են բարդ օբյեկտներ պարզագույններից, որտեղ մեկ օբյեկտը «կազմված է» այլ օբյեկտներից։
Կոմպոզիցիան տարբերվում է ժառանգությունից այն առումով, որ փոխարենը ընդլայնել դասը ժառանգությամբ, օբյեկտը ներառում է այլ օբյեկտներ և նրանց հանձնարարում է մասամբ աշխատանք։ Սա մեծացնում է կոդի ճկունությունը և վերաօգտագործելիությունը։
Օրինակ Swift-ում՝
class Engine {
func start() {
print("Մոտորը սկսվեց")
}
}
class Car {
private let engine = Engine() // կոմպոզիցիա՝ Car-ը պարունակում է Engine
func startCar() {
engine.start() // հանձնարարում ենք շարժիչի մեկնարկը
}
}
let car = Car()
car.startCar() // Արդյունք՝ Մոտորը սկսվեց
Այստեղ, Car դասը բաղկացած է Engine օբյեկտից և օգտագործում է նրա մեթոդները, առանց ժառանգության։