Objective-C

Objective-C
Paradigma objectgeoriënteerd
Verschenen 1986
Ontwerper Brad Cox en Tom Love
Ontwikkelaar Apple
Typesysteem statisch, zwak, duck-typing
Implementaties GCC, Apple
Beïnvloed door Smalltalk, C
Invloed op Java, TOM
Website https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/ProgrammingWithObjectiveC/Introduction/Introduction.html
Portaal  Portaalicoon   Informatica

Objective-C is een programmeertaal die een uitbreiding is van de programmeertaal C. Ze werd in de jaren 80 van de twintigste eeuw ontwikkeld door Brad J. Cox, en heeft qua syntaxis wel wat weg van Smalltalk. Tegenwoordig wordt de taal het meest gebruikt in Mac OS X (voor het Cocoa-framework), iOS en GNUstep, maar bijvoorbeeld ook in NeXTSTEP, van NeXT Computer, Inc.

Kenmerken

Objective-C is, in tegenstelling tot C++, een superset van C, wat inhoudt dat elk correct C-programma ook een correct Objective-C-programma is. Het voegt echter (net als C++) de mogelijkheid toe tot object-georiënteerd programmeren, door de toevoeging van klassen. Aan een instantie van een klasse kan een bericht (message) gestuurd worden, die een methode (een stuk code) aanroept, op de volgende manier:

NSString *string = @"Objective-C";
NSUInteger l = [string length];

In de eerste regel wordt object van het type NSString gedefinieerd met de inhoud "Objective-C". In de tweede wordt een bericht "length" naar dit object gestuurd. Dit heeft tot gevolg dat de lengte van de string teruggegeven wordt. Het is ook mogelijk berichten met parameters te sturen:

unichar ch = [string characterAtIndex:4];

Verder voegt Objective-C ook een nieuw soort pointer toe, die als volgt gedeclareerd wordt:

id var;

Hierdoor is tijdens het schrijven en compileren van de broncode niet bekend naar wat voor gegevenstype de pointer wijst; dit wordt beslist tijdens het uitvoeren van het programma, door de runtime-environment.

Compilers

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.

  1. 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:
  2. 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.
  3. 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.
  4. 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.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.