En aquest tema, aprendrem els fonaments de la sintaxi i l'estructura d'Objective-C. Aquest és un pas crucial per a qualsevol programador que vulgui dominar aquest llenguatge. Ens centrarem en els següents aspectes:
- Comentaris
- Directives de Preprocessador
- Declaració de Variables
- Estructura de les Funcions
- Estructura de les Classes
- Comentaris
Els comentaris són essencials per documentar el codi i fer-lo més llegible. Objective-C suporta dos tipus de comentaris:
- Comentaris de línia única: Utilitzen
//
. - Comentaris de múltiples línies: Utilitzen
/* ... */
.
Exemples:
- Directives de Preprocessador
Les directives de preprocessador són instruccions que es processen abans de la compilació del codi. Les més comunes són #import
i #define
.
#import
: S'utilitza per incloure fitxers d'encapçalament.#define
: S'utilitza per definir constants o macros.
Exemples:
#import <Foundation/Foundation.h> // Inclou la llibreria Foundation #define PI 3.14159 // Defineix una constant
- Declaració de Variables
Les variables en Objective-C es declaren especificant primer el tipus de dada i després el nom de la variable.
Exemples:
int age = 25; // Enter float height = 1.75; // Coma flotant NSString *name = @"John"; // Cadena de text
- Estructura de les Funcions
Les funcions en Objective-C es defineixen amb la següent estructura:
tipus_de_retorn nom_de_la_funció(tipus_de_paràmetre nom_del_paràmetre) { // Cos de la funció return valor_de_retorn; }
Exemple:
- Estructura de les Classes
Les classes en Objective-C es defineixen en dos fitxers: un fitxer d'encapçalament (.h
) i un fitxer d'implementació (.m
).
Fitxer d'Encapçalament (.h)
Conté la declaració de la classe, les seves propietats i mètodes.
Exemple:
#import <Foundation/Foundation.h> @interface Person : NSObject @property NSString *name; @property int age; - (void)displayInfo; @end
Fitxer d'Implementació (.m)
Conté la implementació dels mètodes declarats en el fitxer d'encapçalament.
Exemple:
#import "Person.h" @implementation Person - (void)displayInfo { NSLog(@"Name: %@, Age: %d", self.name, self.age); } @end
Exercicis Pràctics
Exercici 1: Declaració de Variables
Declara variables de diferents tipus i imprimeix els seus valors utilitzant NSLog
.
Solució:
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { int age = 30; float height = 1.80; NSString *name = @"Alice"; NSLog(@"Name: %@", name); NSLog(@"Age: %d", age); NSLog(@"Height: %.2f", height); } return 0; }
Exercici 2: Definició i Crida de Funcions
Defineix una funció que calculi el quadrat d'un nombre i crida-la des del main
.
Solució:
#import <Foundation/Foundation.h> int square(int number) { return number * number; } int main(int argc, const char * argv[]) { @autoreleasepool { int num = 5; int result = square(num); NSLog(@"The square of %d is %d", num, result); } return 0; }
Exercici 3: Creació d'una Classe
Crea una classe Car
amb propietats make
i model
, i un mètode displayInfo
que imprimeixi aquesta informació.
Solució:
Fitxer d'Encapçalament (Car.h):
#import <Foundation/Foundation.h> @interface Car : NSObject @property NSString *make; @property NSString *model; - (void)displayInfo; @end
Fitxer d'Implementació (Car.m):
#import "Car.h" @implementation Car - (void)displayInfo { NSLog(@"Make: %@, Model: %@", self.make, self.model); } @end
Fitxer Principal (main.m):
#import <Foundation/Foundation.h> #import "Car.h" int main(int argc, const char * argv[]) { @autoreleasepool { Car *myCar = [[Car alloc] init]; myCar.make = @"Toyota"; myCar.model = @"Corolla"; [myCar displayInfo]; } return 0; }
Conclusió
En aquesta secció, hem après els fonaments de la sintaxi i l'estructura d'Objective-C, incloent comentaris, directives de preprocessador, declaració de variables, estructura de funcions i estructura de classes. Aquests conceptes són essencials per a qualsevol programador que vulgui treballar amb Objective-C. En el següent tema, explorarem els tipus de dades i les variables amb més detall.
Curs de Programació en Objective-C
Mòdul 1: Introducció a Objective-C
- Introducció a Objective-C
- Configuració de l'Entorn de Desenvolupament
- Sintaxi i Estructura Bàsiques
- Tipus de Dades i Variables
- Operadors i Expressions
Mòdul 2: Flux de Control
Mòdul 3: Funcions i Mètodes
- Definició i Crida de Funcions
- Paràmetres de Funció i Valors de Retorn
- Sintaxi de Mètodes en Objective-C
- Mètodes de Classe i d'Instància
Mòdul 4: Programació Orientada a Objectes
Mòdul 5: Gestió de Memòria
- Introducció a la Gestió de Memòria
- Comptatge Automàtic de Referències (ARC)
- Retenció i Alliberament Manual
- Millors Pràctiques de Gestió de Memòria
Mòdul 6: Temes Avançats
Mòdul 7: Treballant amb Dades
- Gestió d'Arxius
- Serialització i Deserialització
- Conceptes Bàsics de Xarxes
- Treballant amb JSON i XML
Mòdul 8: Desenvolupament d'Interfícies d'Usuari
- Introducció a UIKit
- Vistes i Controladors de Vista
- Disseny Automàtic
- Gestió de l'Entrada de l'Usuari