Quan escriviu un programa Objective-C per a les vostres aplicacions per a iPhone o Mac OS X, tot el que feu és proporcionar un conjunt d'instruccions perquè l'ordinador segueixi. Fonamentalment, els programes manipulen els números i el text, i tot plegat, un programa d'ordinador només té dues parts: variables (i altres estructures), que "retenen" les dades, i instruccions , que realitzen operacions sobre aquestes dades.
Fer una declaració Objective-C
Programar aplicacions per a iPhone i Mac a Objective-C consisteix a fer una declaració. Podeu reconèixer una afirmació a Objective-C immediatament anotant el punt i coma al final:
declaració;
Veureu altres línies de codi, però tret que la línia acabi amb un punt i coma, no és una instrucció Objective-C.
Objectiu-C Tipus de dades integrats i nous tipus de dades
Les variables que declareu a Objective-C, tipus de dades Objective-C, han de ser un tipus que el compilador pugui reconèixer. Objective-C inclou una sèrie de tipus de dades integrats, així com mecanismes per crear-ne de nous, per programar les aplicacions del vostre iPhone o Mac OS X.
Tipus incorporats
Tipus |
Descripció |
Mida |
char |
Un personatge |
1 byte |
int |
Un nombre enter: un nombre sencer |
4 bytes |
flotar |
Número de coma flotant de precisió única |
4 bytes |
Doble |
Nombre de coma flotant de doble precisió |
8 bytes |
curt |
Un nombre enter curt |
2 bytes |
llarg |
Un doble curt |
4 bytes |
llarg llarg |
Un llarg doble |
8 bytes |
BOOL |
Booleà (caràcter signat) |
1 byte |
Tipus d'enumeració
enum typeName { identificador1, ... identificador};
Els identificadors són de constants de tipus int.
typedef
typedef identificador typeName;
Associa un identificador amb un tipus específic.
Constants
identificador de tipus const = valor;
#definir el valor de l'identificador
Permet definir noms per a constants.
Operadors Objective-C
Els operadors Objective-C, com els d'altres llenguatges de programació, us permeten realitzar operacions sobre variables (d'aquí el nom). Objective-C ofereix molts operadors, i fer un seguiment de tots ells pot ser difícil mentre programeu les vostres aplicacions per a iPhone o Mac OS X. Utilitzeu les taules següents per fer córrer la memòria sobre quin operador realitza quina tasca.
Operadors aritmètics
Operador |
Què fa |
+ |
Addició |
– |
Resta |
* |
Multiplicació |
/ |
Divisió |
% |
Mòdul |
Operadors relacionals i d'igualtat
Operador |
Què fa |
== |
Igual a |
!= |
No igual a |
> |
Més gran que |
< |
Menys que |
>= |
Major o igual a |
<= |
Menor o igual a |
Operadors lògics
Operador |
Què fa |
! |
NO |
&& |
I lògic |
|| |
OR lògic |
Operadors d'assignació composta
Operador |
Què fa |
+= |
Addició |
-= |
Resta |
*= |
Multiplicació |
/= |
Divisió |
%= |
Mòdul |
&= |
I per bits |
|= |
OR inclòs per bits |
^= |
OR exclusiu |
<<= |
Canvi a l'esquerra |
>>= |
Canvia a la dreta |
Operadors d'increment i disminució
Operador |
Què fa |
++ |
Addició |
— |
Resta |
*= |
Multiplicació |
/= |
Divisió |
%= |
Mòdul |
&= |
I per bits |
|= |
OR inclòs per bits |
^= |
OR exclusiu |
<<= |
Canvi a l'esquerra |
>>= |
Canvia a la dreta |
Operadors bit a bit
Operador |
Què fa |
& |
I per bits |
| |
OR inclòs per bits |
^ |
OR exclusiu |
~ |
Complement unari (inversió de bits) |
<< |
Canvi a l'esquerra |
>> |
Canvia a la dreta |
Altres operadors
Operador |
Què fa |
() |
Cast |
, |
coma |
Mida de () |
Mida de |
? : |
Condicional |
& |
adreça |
* |
Direcció |
Sentències de control i bucles a Objective-C
A la programació, com a la vida, cal prendre decisions i actuar en conseqüència. Objective-C proporciona declaracions de control i bucles per ajudar el vostre programa a prendre mesures. És possible que vulgueu repetir un conjunt d'instruccions basades en alguna condició o estat, per exemple, o fins i tot canviar la seqüència d'execució del programa. Aquí teniu la sintaxi bàsica per a les declaracions i bucles de control Objective-C.
si una altra cosa
if (condició) {
declaració(s) si la condició és certa;
}
altrament {
declaració(s) si la condició no és certa;
}
per
per (comptador; condició; actualització comptador) {
declaració(s) a executar mentre la condició és certa;
}
per dins
for (Escriviu novaVariable a l' expressió ) {
declaració(s);
}
o
Escriviu variable existent;
for (existingVariable en expressió) {
declaració(s);
}
Expression és un objecte que s'ajusta al protocol NSFastEnumeration.
-
Una enumeració NSArray i NSSet supera el contingut.
-
Una enumeració de NSDictionary està sobre les claus.
-
Una enumeració NSManagedObjectModel és sobre entitats.
mentre
mentre (condició) {
declaració(s) que s'executaran mentre la condició sigui certa
}
Fer mentre
fer {
declaració(s) que s'executaran mentre la condició sigui certa
} mentre (condició);
Declaracions de salt
tornar;
Atura l'execució i torna a la funció de trucada.
trencar;
Deixa un bucle.
continuar;
Omet la resta del bucle i comença la següent iteració.
anar a labelName;
...
labelName:
Un salt absolut a un altre punt del programa (no l'utilitzeu).
sortir();
Finalitza el programa amb un codi de sortida.
Declaració de classes i enviament de missatges a Objective-C
Els llenguatges de programació orientats a objectes us permeten declarar classes, crear classes derivades (subclasse) i enviar missatges als objectes creats des d'una classe. Aquesta és l'essència de la programació orientada a objectes i part de les extensions orientades a objectes que Objective-C afegeix a C. Per garantir que tot funcioni sense problemes, hi ha disponibles directrius del compilador que us permeten informar al compilador de les vostres classes mitjançant @class. i #import.
Interfície
#import "Superclass.h"
@interface ClassName: Superclass {
declaracions de variables d'instància;
}
declaracions de mètodes
@property(atributs) declaració de variables d'instància;
–d
Implementació
#import "ClassName.h"
@implementation ClassName
@synthesize variable d'instància;
definicions de mètodes
–d
Sintaxi del missatge
[missatge del receptor]
#importar
#import "filename.h"
Garanteix que un fitxer de capçalera només s'inclourà una vegada.
@classe
@class ClassName;
Indica el compilador en tipus definits per l'usuari.