Օբյեկտ ուղղված ծրագրավորում ընդդեմ ընթացակարգային ծրագրավորման
Օբյեկտ ուղղված ծրագրավորումը (OOP) և ընթացակարգային ծրագրավորումը ծրագրավորման երկու պարադիգմներ են: Ծրագրավորման պարադիգմը համակարգչային ծրագրավորման հիմնարար ոճն է, և դրանք տարբերվում են ծրագրի տարբեր տարրերի ներկայացման ձևով և խնդիրների լուծման քայլերի սահմանմամբ: Ինչպես անունն է հուշում, OOP-ը կենտրոնանում է իրական աշխարհի օբյեկտների և դրանց վարքագծի օգտագործմամբ խնդիրների ներկայացման վրա, մինչդեռ ընթացակարգային ծրագրավորումը վերաբերում է պրոցեդուրաների միջոցով խնդիրների լուծումների ներկայացմանը, որոնք կոդի հավաքածուներ են, որոնք գործում են որոշակի հերթականությամբ:Կան ծրագրավորման լեզուներ, որոնք աջակցում են OOP-ի (կոչվում են OOP լեզուներ), ընթացակարգային (կոչվում են ընթացակարգային լեզուներ) և երկուսն էլ: Բայց մի կարևոր բան, որ պետք է նշել, այն է, որ OOP-ը և Procedural-ը լուծվող խնդիրները ներկայացնելու երկու եղանակ են, և կարևոր չէ, թե որ լեզուն է օգտագործվում: Այլ կերպ ասած, OOP լեզուները կարող են օգտագործվել ընթացակարգային ծրագրավորման համար, մինչդեռ ընթացակարգային լեզուները երբեմն կարող են օգտագործվել OOP-ի համար, որոշակի ջանքերով:
Ընթացակարգային ծրագրավորումը ծրագրավորման միջոց է՝ որոշելով որոշակի խնդիր լուծելու քայլերի ամբողջությունը և դրանց կատարման ճշգրիտ կարգը՝ ցանկալի արդյունքին կամ վիճակին հասնելու համար: Օրինակ, եթե ցանկանում եք հաշվարկել բանկային հաշվի փակման մնացորդը ամսվա վերջին, ապա պահանջվող քայլերը կլինեն հետևյալը. Նախ, դուք ձեռք եք բերում հաշվի մեկնարկային մնացորդը, այնուհետև նվազեցնում եք ամսվա ընթացքում կատարված բոլոր դեբետային գումարները: Դրանից հետո դուք ավելացնում եք ամսվա ընթացքում գոյացած բոլոր վարկային գումարները: Ընթացքի ավարտին դուք կստանաք հաշվի փակման ամսվա վերջի մնացորդը:Ընթացակարգային ծրագրավորման հիմնական հասկացություններից մեկը ընթացակարգի կոչումն է: Ընթացակարգը, որը նաև հայտնի է որպես ենթածրագր, մեթոդ կամ գործառույթ, պարունակում է հրահանգների պատվիրված ցանկ, որոնք պետք է իրականացվեն: Ընթացակարգը կարող է կանչվել կատարման ընթացքում ցանկացած ժամանակ ցանկացած այլ ընթացակարգով կամ ինքն իրենով: Ընթացակարգային ծրագրավորման լեզուների օրինակներ են C և Pascal-ը:
OOP-ում ուշադրությունը կենտրոնանում է իրական աշխարհի տարրերի տեսանկյունից լուծվելիք խնդրի մասին մտածելու և խնդիրը առարկաների և դրանց վարքագծի տեսանկյունից ներկայացնելու վրա: Օբյեկտը տվյալների կառուցվածք է, որը շատ նման է իրական աշխարհի որոշ օբյեկտների: Օբյեկտները պարունակում են տվյալների դաշտեր և մեթոդներ, որոնք ներկայացնում են իրական աշխարհի օբյեկտների ատրիբուտներն ու վարքը: Կան մի քանի կարևոր OOP հասկացություններ, ինչպիսիք են Տվյալների աբստրակցիան, Էկապսուլյացիան, պոլիմորֆիզմը, հաղորդագրությունների փոխանակումը, մոդուլյարությունը և ժառանգականությունը: Որոշ հայտնի OOP լեզուներ են Java-ն և C-ը: Այնուամենայնիվ, դրանք կարող են օգտագործվել նաև ընթացակարգային ծրագրավորում իրականացնելու համար:
OOP-ի և ընթացակարգային ծրագրավորման հիմնական տարբերությունն այն է, որ ընթացակարգային ծրագրավորման հիմնական նպատակն է ծրագրավորման առաջադրանքը բաժանել փոփոխականների և ենթածրագրերի հավաքածուի, մինչդեռ OOP-ի կենտրոնացումը ծրագրավորման առաջադրանքը բաժանելն է: օբյեկտներ, որոնք ներառում են տվյալներ և մեթոդներ:Առավել ուշագրավ տարբերությունը կարող է լինել այն, որ մինչ ընթացակարգային ծրագրավորումն օգտագործում է ընթացակարգեր՝ ուղղակիորեն տվյալների կառուցվածքների վրա գործելու համար, OOP-ը կհամախմբի տվյալները և մեթոդները, որպեսզի օբյեկտը գործի իր սեփական տվյալների վրա: Երբ խոսքը վերաբերում է անվանակարգին, ընթացակարգը, մոդուլը, ընթացակարգի կանչը և փոփոխականը ընթացակարգային ծրագրավորման մեջ հաճախ կոչվում են մեթոդ, օբյեկտ, հաղորդագրություն և հատկանիշ OOP-ում: