Junior — Middle
Կարող եք նշել օբյեկտային ուղղված ծրագրավորման հիմնական մոդելները?
sobes.tech AI
Պատասխան AI-ից
Նշանակալից մոդելները օբյեկտային ծրագրավորման (ՕՕՊ) հիմնականում ներառում են.
- Ներառում (Inheritance): թույլ է տալիս ստեղծել նոր դասեր՝ հիմնվելով առկա դասերի վրա, ժառանգելով նրանց հատկությունները և մեթոդները:
- Զտում (Encapsulation): թաքցնում է օբյեկտի ներսի մանրամասները, մատչելի է միայն հանրային մեթոդների միջոցով:
- Բազմակողմանիություն (Polymorphism): տարբեր դասերի օբյեկտները կարող են տարբեր կերպ արձագանքել նույն հաղորդագրություններին (մեթոդներին):
- Աբստրակցիա (Abstraction): ընդգծում է օբյեկտի կարևոր հատկանիշները, թաքցնում անպետք մանրամասները:
Այս մոդելները օգնում են ստեղծել ճկուն, ընդլայնելի և պահպանվող ծրագրեր:
Օրինակ՝ Go լեզվում (օգտագործելով ինտերֆեյսներ բազմակողմանիության համար):
package main
import "fmt"
type Animal interface {
Speak() string
}
type Dog struct{}
func (d Dog) Speak() string {
return "Հավ!"
}
type Cat struct{}
func (c Cat) Speak() string {
return "Մյաո!"
}
func main() {
animals := []Animal{Dog{}, Cat{}}
for _, animal := range animals {
fmt.Println(animal.Speak())
}
}
Այս օրինակով տարբեր տիպեր իրականացնում են նույն ինտերֆեյսը, ինչը ցույց է տալիս բազմակողմանիությունը։