Sobes.tech
Junior

რა არის აბსტრაქცია პროგრამირებაში?

sobes.tech AI

პასუხი AI-სგან

Աբստրակցիան այն մեխանիզմն է, որը թույլ է տալիս թաքցնել իրականացման մանրամասները և տրամադրել համակարգի կամ նրա բաղադրիչների ընդհանուր ներկայացում։ Այն կենտրոնանում է այն "ինչ" է անում օբյեկտը, և ոչ թե "ինչպես"։

C#-ում աբստրակցիան իրականացնում է հետևյալ կերպ՝

  • Աբստրակտ դասեր: Կարող են պարունակել աբստրակտ մեթոդներ (անվերածումով) և սովորական անդամներ։ Չի կարելի ստեղծել աբստրակտ դասի օրինակ։
    // Աբստրակտ դաս և աբստրակտ մեթոդ
    public abstract class Shape
    {
        public abstract double GetArea(); // Աբստրակտ մեթոդ
        public string Name { get; set; }
    
        public void DisplayInfo() // Սովորական մեթոդ
        {
            Console.WriteLine($"Ենթակա: {Name}");
        }
    }
    
  • Ինտերֆեյսներ: Նշում են պայմանագիր, որը պետք է իրականացնել դասը։ Սպասվում է, որ այն կկատարի այդ պայմանը։ Սպասվում է, որ այն կկատարի այդ պայմանը։ Սպասվում է, որ այն կկատարի այդ պայմանը։
    // Ինտերֆեյս
    public interface IDrawable
    {
        void Draw(); // Մեթոդ առանց իրականացման
    }
    

Աբստրակցիայի սկզբունքներ՝

  • Էնկապսուլյացիա: Տվյալների և դրանց վրա աշխատող մեթոդների միավորումը մեկ բլոկում։ Խթանում է ներքին կառուցվածքի թաքցումը։
  • Երասխելություն: Հնարավորություն է տալիս ստեղծել նոր դասեր՝ հիմնված առկա դասերի վրա, ժառանգելով նրանց հատկությունները և մեթոդները, և ավելացնել կամ վերագրել ֆունկցիոնալությունը։

Աբստրակցիայի կիրառումը՝

  • Կոմպլեքս համակարգերի պարզեցում։
  • Կոդի ճկունության բարձրացում։
  • Պահպանման բարելավում։
  • Կոմպոնենտների բազմակի օգտագործում։