Objective-C
Fra Wikipedia, den frie encyklopedi
Objective-C – ofte forkortet Obj-C – er et objektorientert programmeringsspråk som er realisert som en utvidelse av ANSI C. Det anvendes fremfor alt i programmermiljøene Cocoa (Mac OS X) og GNUstep, som begge to er realiseringer av den OpenStep-standarden.
Innhold |
[rediger] Beskrivelse
Objective C er en svært liten utvidelse av C. Der finnes bare en tilleg av syntaks og omtrent ti nye kodeord. Sånn er det veldig enkelt å laeres til kjenner av C.
[rediger] Meldinger
Objektorientert programmer er bygged opp av objekter som sender verandre meldinger, dvs. anvisninger å utføre metoder. Meldinger i Objective-C baserer seg på Smalltalk og ser ut på folgende måte:
[objekt metode]
for eksempel:
textLengde = [@"Hallo verden!" length]; // textobjekten "Hallo verden!" skal kjøre metoden "length"
meldinger kan pakkes i verandre og gis argumenter etter koloner:
[resultat setFloatValue: [belop floatValue]*[verd floatValue]];
[rediger] Klasser
For å skape objekter av sin egen typ bør man beskrive den i en såkalt klasse. Det består av en interface-del som innholder statusen og evnene objektene av klassens typen har, dvs. interfacen deklarerer dets variabler og metoder:
#import <objc/Object.h> @interface lampe : Object { BOOL lyser; // statusen } - (BOOL) lyser; // evnen: svar om lyser - settLyser: (BOOL) nyeStatus; - init; // sett startstatus @end
og en implementation som beskrivier hvordan evnene skal utføres:
@implementation lampe - (BOOL) lyser { return lyser; // returner variablen (som lever i en annen navnrom enn metodene) } - settLyser: (BOOL) nyeStatus { lyser = nyeStatus; return self; // returnere objekten selv tillater pakking av meldinger liksom nede } - init { return [self settLyser: NO]; } @end
nå nye objekter kan bygges idet man sender meldingen å utføre metoden «alloc» til klassen. ─ Klasser er også spesjelle objekter med metoder. ─ Altså klassen fra oven kan brukes sånn:
#include <stdio.h> // bruk normale C-inn-/utgave i eksemplen main () { id objekten; // id mener "en eller annen objekt" objekten = [[[lampe alloc] init] settLyser: YES]; // kompleks pakking av meldinene printf ("Den lampen i variablen \"objekten\" %s.", [objekten lyser]?"lyser":"er dunkel"); }
[rediger] Eksterne lenker
- The Objective-C Programming Language
- http://www.dekorte.com/Objective-C/
- Objective-C kurs til begynnerer
Ada | Algol60 | Algol-68 | APL | Assembler | awk | BASIC | BETA | BLISS | C | C++ | C# | Caml | Cobol | Concurrent C | Delphi | Erlang | Forth | Fortran | Haskell | HyperTalk | INTERCAL | Java | Lisp | ML | Modula | Objective-C | OCaml | O'Haskell | Pascal | Perl | PHP | Pike | PL/I | Plankalkül | Prolog | Python | Ruby | Scheme | Simula | SML | Visual Basic