Objective-C, կազմված օբյեկտակողմնորոշված ծրագրավորման լեզու, որն օգտագործվում է Apple-ի կողմից։ Կառուցվել է ծրագրավորման C լեզվի և պարադիգմա Smalltalk-ի հիման վրա[1]։ Մասնավորապես, օբյեկտի մոդելը կառուցված է SmallTalk-ի ոճով, այսինքն, այն օբյեկտի ուղարկում է հաղորդագրություն։

Objective-C
Տեսակծրագրավորման լեզու, class-based programming language?, պծրագրավորման ռեֆլեքսիվ լեզու, օբյեկտ կողմնորոշված ծրագրավորման լեզու և բազմահարացուցային ծրագրավորման լեզու
Առաջացել է1984
ՆախագծողBrad Cox?
Ընդլայնումներ.h, .m, .mm և .C
Ներշնչվել էC և Smalltalk
Կայքdeveloper.apple.com/library/archive/documentation/Cocoa/Conceptual/ProgrammingWithObjectiveC/Introduction/Introduction.html(անգլ.)
 Objective-C Վիքիպահեստում

Objective-C լեզուն ենթաբազմությունն է C լեզվի, այնպես, որ C կոդ կազմողը հասկանում է Objective-C։

Objective-C կոմպիլյատորը ընդգրկված է GCC-ի մեջ և հասանելի է մեծամասնությունը կազմող բոլոր ծրագրերում։ Լեզուն առաջին հերթին օգտագորխվում է Mac OS X (Cocoa)-ի և GNUstep-ի համար։

Պատմություն խմբագրել

1980-ականների սկզբին հայտնի էր կառուցվածքային ծրագրավորումը, որը թույլ էր տալիս ալգորիթմը բաժանել փոքր մասերի։ Կառուցվածքային ծրագրավորման մեջ դժվար խնդիրների աճը հանգեցրել է կոդի որակի նվազման և անհրաժեշտություն առաջացավ գրել ավելի ու ավելի շատ հատկանիշներ, որոնք հազվադեպ են օգտագորխվում այլ ծրագրերում։

Շատերն են տեսել օբյեկտակողմնորոշված ծրագրավորման բարդ խնդիրների լուծման պոտենցիալը։ Մի կողմից Smalltalk-ը օգտագործում է բոլոր գրեթե քինչ թե շատ բարդ համակարգերը։ Objecyive-C ծրագրավորման լեզուն ստեղծվել է Բրեդ Քոքսոնի կողմից 1980-ական թվականներին իր Stepstone ընկերությունում։ Նա փորձել է լուծել կրկնակի կոդի օգտագործման խնդիրը։ Բրեդ Քոքսի նպատակը ստեղծելու լեզուն այն էր, որ նա ցանակնում էր ստեղծել հնարավորություն կառուցելու ծրագրերի նախնական կառուցվածքը, ճիշտ այնպես, ինչպես մի բարդ էլեկտրոնային սարք,որը կարող է հավաքել մի շարք պատրաստի ինտեգրացված սխեմաներ։ Այս լեզուն պետք էր լինել պարզ, որպեսզի իր վրա կենտրոնացներ օգտագործողների մեծամասնությանը։ Ներկայումս Objective-C ծրագրավորման լեզուն համոգործակցում է Clang և GCC կոմպիլյատորների հետ։

Լեզվի շարահյուսություն խմբագրել

Objective-C ծրագրավորման լեզվում օբյեկտների նշանակումների համար օգտագործվում է հատուկ տիպի ID։ ID փոփախականի տեսակը, իրականում, կամայական օբյեկտի ցուցիչ է։ Զրոյական նշանակումների համար օգտագործվում է nil(=NULL) հաստատունը։ Այս ID-ն կարող է օգատգործվել սովորական նույնականացման նշումով դասի փոխարեն։ Մասնավորապես, վերջինս թույլ է տալիս օգտագործողին իրականացնել որոշ փորձնական հնարավորություններ։

Հաղորդագրությունների ուղարկման համար օգտագործվում է հաջրոդ շարահյուսությունը՝

   [receiver message];

Հաղորդագրության մեջ կարող են օգտագործվել նաև պարամետրեր՝

   [myRect setOrigin:30.0 :50.0];

Objective-C ծրագրավորման լեզուն պիտակներ է մատակարում յուրաքանչյուր արգումնետին, որը մեծապես բարելավում է կարդալու հնարավորությունը և սխալ պարամետրի հաղորդման հավանականությունը։ Հենց այս ձևից են օգտվում շատ կազմողներ՝

   [myRect setWidth:10.0 height:20.0];

Այսպես նաև ապահովում է կամայական թվով արգումնտի փոխանցում հաղորդագրության մեջ՝

   [myObject makeGroup: obj1, obj2, obj3, obj4, nil];

Ինչպես ֆունկցիաները, հաղորդագրությունը կարող է հետ բերել անվանումը, տիպը և լռելյայնը՝

   float area = [myRect area];

Որևէ հաղորդագրության արդյունքը կարող է օգտագործվել այլ հաղորդագրության մեջ՝

   [myRect setColor:[otherRect color]];

Հատկություններ խմբագրել

Օրինակ Company դասը կապ ունի փոփոխական անունի հետ՝

{
     NSString *name;
}

Նոր դասերի ստեղծում խմբագրել

Objective-C ծրագրավորման լեզվի բոլոր բանալի բառերը սկսվում են @ սիմվոլով։ Կառուցվածքի նոր դասի նկարագրությունը հետևյալն է՝

@interface ClassName : SuperClass
{
    instance variable declarations
}

method declarations
@end

Ծանոթագրություններ խմբագրել

  1. Cox, Brad (1983). «The object oriented pre-compiler: programming Smalltalk 80 methods in C language». ACM SIGPLAN Notices. New York, NY: ACM. 18 (1). doi:10.1145/948093.948095. Վերցված է 2011 թ․ փետրվարի 17-ին.