To-date, gebruikers hebben gedownload meer dan 140 miljard apps op hun iPhones.1 het succes van de iPhone is gekoppeld aan het ecosysteem van apps van derden., Toen de App Store in 2008 debuteerde, werden alle apps geschreven in een programmeertaal die maar weinigen buiten de Apple-gemeenschap ooit hadden gebruikt: Objective-C. sindsdien is het gebruik van Objective-C geëxplodeerd in een goudkoorts van ontwikkelaars die apps maken. Hoewel Apple introduceerde zijn nieuwe Swift taal in 2014, het grootste deel van Apple ‘ s iOS-besturingssysteem is nog steeds geschreven in Objective-C, dus het zal op Apple-apparaten voor de komende jaren.hoewel de meeste programmeurs Objective-C pas ontdekten tijdens de revolutie van de iPhone-app, bestaat Objective-C al meer dan 30 jaar., Objective-C is de basis van Apple ’s desktop-besturingssysteem, Mac OS X, sinds zijn debuut in 2001, en was ook de basis voor NeXTSTEP — OS X’ S onmiddellijke voorouder — gemaakt door Steve Jobs ‘ NeXT Computer Inc. Echter, Objective-C werd noch door Apple noch NeXT gecreëerd. De oorsprong was een kleine Connecticut startup in de vroege jaren 1980 genaamd Stepstone.
Follow Computer History Museum Facebook | Twitter
Objective-C ‘ S vroege geschiedenis en latere evolutie op NeXT zijn niet goed bekend, en er zijn zeer weinig beschikbare bronnen., Bij CHM, we onlangs verworven een essay over de” geschiedenis van Objective-C, ” co-geschreven door Brad Cox en Steve Naroff, voorgelegd aan de derde geschiedenis van programmeertalen conferentie in 2007, maar nooit gepubliceerd. Ik heb ook een mondelinge geschiedenis uitgevoerd met Cox, de oorspronkelijke maker van de taal, en met Blaine Garst, een volgende ingenieur die later bijdroeg aan Objective-C. Deze bronnen, in aanvulling op een eerder interview dat ik met Naroff uitvoerde, zijn de basis voor de volgende geschiedenis.,de ideeën die leidden tot Objective-C zijn ontstaan in een afdeling van International Telephone and Telegraph (ITT), waar Tom Love en Brad Cox op zoek waren naar manieren om de productiviteit van programmeurs te verbeteren. In 1981 beschreef een speciale uitgave van Byte magazine Een revolutionaire nieuwe programmeertaal, Smalltalk, die was ontwikkeld door Alan Kay ‘ s team bij Xerox PARC. Smalltalk vertegenwoordigde een radicaal nieuwe manier om na te denken over het creëren van programma ‘ s, die Kay noemde “object-georiënteerd.,”In plaats van een programma te schrijven als een reeks acties (“procedures”), die gegevens als input nemen, zou een programma opnieuw worden georiënteerd rond de gegevens zelf, gegroepeerd binnen “objecten.”Smalltalk voorzag programma’ s als verzamelingen van objecten, die berichten naar elkaar zouden sturen, waardoor ze” methoden ” zouden aanroepen (acties uitvoeren). De gebruikte methoden werden geselecteerd “dynamisch,” dat wil zeggen, terwijl het programma werd uitgevoerd. Zo kan een Smalltalk-programma zichzelf in real-time wijzigen, in reactie op de input van de gebruiker.,
Cox zag enorme productiviteitsvoordelen in een taal als Smalltalk. Hij stelde zich voor dat het hem en liefde zou toestaan om bibliotheken van objecten die kunnen worden gemengd en matched als Lego te creëren., In plaats van alles vanaf nul te moeten schrijven, zou een programmeur bestaande, of “geprefabriceerde” objecten kunnen gebruiken om snel een nieuw programma te maken. Cox voorzag een toekomst waarin objectbibliotheken zouden worden gekocht en verkocht, wat een software-industriële revolutie inluidde met deze “verwisselbare” onderdelen.
Smalltalk had echter een aantal nadelen. Het was traag, het was de technologie van Xerox, en het vereiste dat alle programma ‘ s die erin zijn geschreven in een speciale omgeving moesten draaien., Cox en Love waren toegewijd aan het gebruik van Bell Labs ‘UNIX, een relatief open systeem, met een grote bestaande basis van programma’ s geschreven in C. C was een taal die maakte voor snelle, efficiënte programma ‘ s. Cox kwam met het idee om de objectgeoriënteerde ideeën van Smalltalk te combineren met C en publiceerde dit werk in een paper uit 1983, genaamd de objectgeoriënteerde Precompiler (OOPC). Cox maakte het met opzet zo eenvoudig mogelijk, waarbij hij het zag als een “soldeerpistool” dat objectgeoriënteerde programmering op C zou lassen., Cox contrasteerde dit met Bell Labs ‘ nieuwe taal C++, die ook C en objectgeoriënteerd programmeren combineerde, maar op een veel complexere manier, die Cox vergeleek met een fabricage fabriek.na een korte periode bij Schlumberger, begonnen Love en Cox hun eigen bedrijf om deze ideeën op de markt te brengen, oorspronkelijk Productivity Products International, en later Stepstone. Cox herschreef de OOPC met een nieuwe compiler en hernoemde de taal Objective-C. niettemin, het ging nog steeds om een vertaling van Objective-C code in reguliere C code., Liefde bepaalde aspecten van het ontwerp, met inbegrip van de beslissing om het een hybride taal te maken met twee conceptuele niveaus, met een hoger niveau object-georiënteerde code letterlijk tussen haakjes van procedurele C-code door vierkante haakjes karakters.Met de focus van het bedrijf op het verkopen van objectbibliotheken geschreven met behulp van Objective-C, verplaatste Cox zijn focus naar deze bibliotheken. Stepstone heeft ook de Objective-C taal gelicentieerd aan klanten, van wie velen om wijzigingen of nieuwe functies vroegen., Cox huurde een groep om de ontwikkeling van de taal te behandelen, en het begon functies toe te voegen zoals garbage collection en een tolk. Deze waren aan de gang toen de objectbibliotheken van Stepstone opdroogden en het bedrijf stopte.