Objective-C
Տեսակ | ծրագրավորման լեզու, class-based programming language?, պծրագրավորման ռեֆլեքսիվ լեզու, օբյեկտ կողմնորոշված ծրագրավորման լեզու և բազմահարացուցային ծրագրավորման լեզու |
---|---|
Առաջացել է | 1984 |
Նախագծող | Brad Cox? |
Ընդլայնումներ | .h , .m , .mm և .C |
Ներշնչվել է | Սի (ծրագրավորման լեզու) և Smalltalk |
Կայք | developer.apple.com/library/archive/documentation/Cocoa/Conceptual/ProgrammingWithObjectiveC/Introduction/Introduction.html(անգլ.) |
Objective-C Վիքիպահեստում |
Objective-C, կազմված օբյեկտակողմնորոշված ծրագրավորման լեզու, որն օգտագործվում է Apple-ի կողմից։ Կառուցվել է ծրագրավորման C լեզվի և պարադիգմա Smalltalk-ի հիման վրա[1]։ Մասնավորապես, օբյեկտի մոդելը կառուցված է SmallTalk-ի ոճով, այսինքն, այն օբյեկտի ուղարկում է հաղորդագրություն։
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
Ծանոթագրություններ
[խմբագրել | խմբագրել կոդը]- ↑ 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-ին.