Objective-C
Objective-C, ofte kaldet ObjC, Objective C og Obj-C, er et objektorienteret programmeringssprog implementeret som en udvidelse til C
Objective-C, ofte kaldet ObjC, Objective C og Obj-C, er et objektorienteret programmeringssprog implementeret som en udvidelse til C
Det er primært brugt i Mac OS X og GNUStep, to miljøer baseret på OpenStep-standarden, og er det primære sprog brugt i NeXTSTEP, OPENSTEP og Cocoa programmeringsbibliotekerne. Almindelig objektorienterede programmer, som ikke anvender disse biblioteker, kan også kompileres på ethvert system understøttet af gcc – gcc omfatter en Objective-C compiler.
Historie
I 1980'erne var struktureret programmering begyndt at være for begrænset til større softwareprojekter, som krævede en stor grad af genbrug af generiske elementer. Xerox havde implementeret Smalltalk, men da det kørte i en virtuel maskine, var det alt for langsomt til praktisk anvendelse.
Det satte Brad Cox sig for at ændre, og begyndte at udvikle et objektorienteret sprog, som byggede videre på det allerede på det tidspunkt kendte sprog C. Han udgav i 1986 bogen "Object-oriented Programming – An evolutionary approach".
Sprogets grundlag
Sproget er implementeret på et meget tyndt lag oven på C, og Objective-C bruger både C og Smalltalk's syntaks. OpenStep er implementeret i Cocoa og GNUStep.
Beskeder og eksempel
Objective-C anvender beskeder mellem objekter. Beskedsyntaksen er:
[objekt metode: parametre]
Et simpelt eksempel på et basalt objekt, som anvender OpenStep-bibliotekerne ser sådan ud:
eksempel.m
#import <Foundation/Foundation.h>
#import <stdio.h>
@interface Messenger : NSObject {
char message[50];
}
– (void) setMessage: (char *)Message;
– (char*) getMessage;
@end
@implementation Messenger
– (void) setMessage: (char*)Message {
strcpy( message, Message );
}
– (char*) getMessage {
return message;
}
@end
int main() {
Messenger * message = [[Messenger alloc] init];
[message setMessage: "Hello, World"];
printf( "%s\n", [message getMessage] );
[message release];
}
I eksemplet ses, hvorledes der kommunikeres med den nye instans af Messenger objektet, der nedarver NSObjekt-klassen.
Programmet kan kompileres på Mac OS X i en terminal med syntaksen:
gcc eksempel.m -framework Foundation -o eksempel
Se Også
- C++, et andet objekt-orienteret programmeringssprog baseret på C
Eksterne henvisninger
Da sproget ikke er så vidtbredt som C og C++, er de fleste bøger og tutorials på engelsk.
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.