Sobes.tech
Junior — Middle

Կարող եք բացատրել SOLID-ի սկզբունքները և ինչպես կիրառել դրանք ծրագրային ապահովման զարգացման ժամանակ?

sobes.tech AI

Պատասխան AI-ից

SOLID սկզբունքները օբյեկտային ուղղված դիզայնի հինգ հիմնական կանոններն են, որոնք օգնում են ստեղծել ճկուն, ընդլայնելի և հեշտ սպասարկվող կոդ.

  1. S — Միայն պատասխանատվության սկզբունք Յուրաքանչյուր դաս պետք է ունենա միայն մեկ փոփոխության պատճառ, այսինքն՝ պատասխանատու լինի մեկ գործի համար:

  2. O — Բաց/փակ սկզբունք Դասերը պետք է բաց լինեն ընդլայնման համար, բայց փակ՝ փոփոխության համար:

  3. L — Լիսկով փոխարինման սկզբունք Նվագած դասերի օբյեկտները պետք է կարողանան փոխարինել հիմնական դասի օբյեկտներին՝ առանց ծրագրի ճիշտությունը խախտելու:

  4. I — Ինտերֆեյսների բաժանման սկզբունք Հաճախորդները չպետք է կախված լինեն այն ինտերֆեյսներից, որոնք նրանք չեն օգտագործում:

  5. D — Վերածննդի սկզբունք Վերևի մակարդակի մոդուլները չպետք է կախված լինեն ստորին մակարդակի մոդուլներից:

Օրինակ՝ Go-ում կիրառումը:

// Միայն պատասխանատվության սկզբունք
// Կառույցը (դասը) պատասխանատու է միայն օգտվողների հետ աշխատելու համար

type UserRepository interface {
    GetUser(id int) (*User, error)
}

// Վերածննդի սկզբունք
// Ծառայությունը կախված է ինտերֆեյսից, ոչ թե կոնկրետ իրագործումից

type UserService struct {
    repo UserRepository
}

func (s *UserService) GetUserName(id int) (string, error) {
    user, err := s.repo.GetUser(id)
    if err != nil {
        return "", err
    }
    return user.Name, nil
}

ՍՈԼԻԴ սկզբունքների կիրառումը օգնում է գրել ավելի հեշտ թեստավորվող, ընդլայնվող և սպասարկվող կոդ: