Kur shkruani një program Objective-C për aplikacionet tuaja iPhone ose Mac OS X, gjithçka që po bëni është të ofroni një grup udhëzimesh që kompjuteri duhet të ndjekë. Në thelb, programet manipulojnë numrat dhe tekstin, dhe duke pasur parasysh të gjitha gjërat, një program kompjuterik ka vetëm dy pjesë: variabla (dhe struktura të tjera), të cilat "mbajnë" të dhënat dhe udhëzimet , të cilat kryejnë operacione mbi ato të dhëna.
Bërja e një deklarate Objektivi-C
Programimi i aplikacioneve iPhone dhe Mac në Objective-C ka të bëjë me bërjen e një deklarate. Ju mund të njihni një deklaratë në Objektivi-C menjëherë duke vënë në dukje pikëpresjen në fund:
deklaratë;
Do të shihni rreshta të tjerë kodi, por nëse rreshti nuk përfundon me një pikëpresje, nuk është një deklaratë Objective-C.
Objective-C Llojet e integruara të të dhënave dhe Llojet e reja të të dhënave
Variablat që deklaroni në llojet e të dhënave Objective-C, Objective-C, duhet të jenë një lloj që përpiluesi mund të njohë. Objective-C vjen me një sërë llojesh të dhënash të integruara, si dhe mekanizma për të krijuar të reja, për programimin e aplikacioneve tuaja iPhone ose Mac OS X.
Llojet e integruara
Lloji |
Përshkrim |
Madhësia |
karakter |
Një personazh |
1 bajt |
ndër |
Një numër i plotë - një numër i plotë |
4 bajt |
noton |
Numri i vetëm me pikë lundruese me saktësi |
4 bajt |
Dyfishtë |
Numri i pikës lundruese me saktësi të dyfishtë |
8 bajt |
shkurt |
Një numër i plotë i shkurtër |
2 bajt |
gjatë |
Një e shkurtër e dyfishtë |
4 bajt |
gjatë e gjatë |
Një e gjatë e dyfishtë |
8 bajt |
BOOL |
Boolean (shkronjë e nënshkruar) |
1 bajt |
Llojet e numërimit
enum typeEmri { identifier1, ... identifiern};
Identifikuesit janë konstante të tipit int.
typedef
typedef typeName identifikues;
Lidh një identifikues me një lloj specifik.
Konstante
identifikuesi i tipit const = vlera;
#define vlerë identifikuese
Ju lejon të përcaktoni emrat për konstantet.
Operatorët e Objektivit-C
Operatorët Objective-C, si ata në gjuhët e tjera të programimit, ju lejojnë të kryeni operacione në variabla (prandaj emri). Objective-C ofron shumë operatorë dhe mbajtja e të gjithë tyre mund të jetë e vështirë ndërsa programoni aplikacionet tuaja iPhone ose Mac OS X. Përdorni tabelat e mëposhtme për të lëvizur kujtesën tuaj se cili operator kryen çfarë detyre.
Operatorët aritmetikë
Operatori |
Çfarë bën |
+ |
Shtimi |
- |
Zbritja |
* |
Shumëzimi |
/ |
Divizioni |
% |
Modulo |
Operatorët e marrëdhënieve dhe të barazisë
Operatori |
Çfarë bën |
== |
E barabartë me |
!= |
Jo e barabartë me |
> |
Më e madhe se |
< |
Më pak se |
>= |
Më e madhe ose e barabartë me |
<= |
Më pak ose e barabartë me |
Operatorët Logjikë
Operatori |
Çfarë bën |
! |
JO |
&& |
Logjike DHE |
|| |
OSE logjike |
Operatorët e Përbërjes së Përbërjes
Operatori |
Çfarë bën |
+= |
Shtimi |
-= |
Zbritja |
*= |
Shumëzimi |
/= |
Divizioni |
%= |
Modulo |
&= |
Bitwise DHE |
|= |
Bitwise Inclusive OSE |
^= |
Ekskluzive OSE |
<<= |
Zhvendos majtas |
>>= |
Zhvendos djathtas |
Operatorët e rritjes dhe zvogëlimit
Operatori |
Çfarë bën |
++ |
Shtimi |
- |
Zbritja |
*= |
Shumëzimi |
/= |
Divizioni |
%= |
Modulo |
&= |
Bitwise DHE |
|= |
Bitwise Inclusive OSE |
^= |
Ekskluzive OSE |
<<= |
Zhvendos majtas |
>>= |
Zhvendos djathtas |
Operatorët bitwise
Operatori |
Çfarë bën |
& |
Bitwise DHE |
| |
Bitwise Inclusive OSE |
^ |
Ekskluzive OSE |
~ |
Komplement unar (inversion bit) |
<< |
Zhvendos majtas |
>> |
Zhvendos djathtas |
Operatorë të tjerë
Operatori |
Çfarë bën |
() |
Cast |
, |
presje |
Madhësia e () |
Madhësia e |
? : |
E kushtëzuar |
& |
Adresë |
* |
Indirekt |
Deklaratat e kontrollit dhe sythe në objektivin-C
Në programim, si në jetë, duhet të marrësh vendime dhe të veprosh sipas tyre. Objective-C ofron deklarata kontrolli dhe sythe për të ndihmuar programin tuaj të ndërmarrë veprime. Ju mund të dëshironi të përsërisni një grup udhëzimesh bazuar në një kusht ose gjendje, për shembull, ose madje të ndryshoni sekuencën e ekzekutimit të programit. Këtu është sintaksa bazë për deklaratat dhe sythe të kontrollit të Objective-C.
nese Tjeter
nëse (kusht) {
deklarata(t) nëse kushti është i vërtetë;
}
tjeter {
deklarata(t) nëse kushti nuk është i vërtetë;
}
për
për (counter; kusht; numërues përditësimi) {
deklarata(t) për t'u ekzekutuar ndërkohë që kushti është i vërtetë;
}
për në
for (Type newVariable në shprehje ) {
deklarata(s);
}
ose
Lloji ekzistuesVariable ;
për (ExistingVariable në shprehje) {
deklarata(t);
}
Shprehja është një objekt që përputhet me protokollin NSFastEnumeration.
-
Një numërim NSArray dhe NSSet është mbi përmbajtjen.
-
Një numërim i NSDictionary është mbi çelësat.
-
Një numërim NSmanagedObjectModel është mbi entitetet.
derisa
ndërsa (kushti) {
deklaratat për t'u ekzekutuar ndërkohë që kushti është i vërtetë
}
bej Nderkohe
bej {
deklaratat për t'u ekzekutuar ndërkohë që kushti është i vërtetë
} while (kusht);
Deklaratat e kërcimit
kthimi ;
Ndalo ekzekutimin dhe kthehet në funksionin e thirrjes.
pushim;
Lini një lak.
vazhdo;
Kapërceni pjesën tjetër të ciklit dhe filloni përsëritjen tjetër.
Goto labelEmri;
...
Emri i etiketës:
Një kërcim absolut në një pikë tjetër të programit (mos e përdorni).
dalje ();
Përfundon programin tuaj me një kod daljeje.
Deklarimi i klasave dhe dërgimi i mesazheve në Objektivi-C
Gjuhët e programimit të orientuara nga objektet ju mundësojnë të deklaroni klasa, të krijoni klasa të prejardhura (nënklasë) dhe të dërgoni mesazhe tek objektet e instancuara nga një klasë. Ky është thelbi i programimit të orientuar nga objekti dhe një pjesë e shtesave të orientuara nga objekti që Objective-C i shton C. Për të siguruar që gjithçka funksionon pa probleme, janë të disponueshme direktivat e përpiluesit që ju mundësojnë të informoni përpiluesin e klasave tuaja duke përdorur @class dhe #import.
Ndërfaqja
#import "Superclass.h"
@interface Emri i klasës: Superclass {
deklaratat e variablave të shembullit;
}
deklaratat e metodave
Deklarata e variablit të shembullit @property(atribute);
–d
Zbatimi
#import "ClassName.h"
@implementation ClassName
ndryshorja e instancës @synthesize ;
përkufizimet e metodave
–d
Sintaksa e mesazheve
[mesazh marrësi]
#import
#import "filename.h"
Garanton që një skedar me kokë do të përfshihet vetëm një herë.
@klasë
@class Emri i klasës;
Tregon përpiluesin në llojet e përcaktuara nga përdoruesi.