Objective-C: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
mNessun oggetto della modifica
Morry39 (discussione | contributi)
Fix link
Etichetta: Editor wikitesto 2017
Riga 49:
 
=== Objective C 2.0 ===
Alla [[Worldwide Developers Conference]] del [[2006]], [[Apple]] ha annunciato l'uscita di "Objective C 2.0" i cui contenuti sono la [[garbage collection]], migliorie nella sintassi<ref>{{cita web | url=http://lists.apple.com/archives/Objc-language/2006/Aug/msg00039.html | titolo=documento Apple | lingua=en}}</ref>, miglioramenti delle prestazioni del run-time<ref>{{cita web | url=http://lists.apple.com/archives/Objc-language/2006/Aug/msg00018.html | titolo=documento Apple | lingua=en}}</ref> e il supporto ai [[64-bit]]<ref>{{cita web | url=http://developer.apple.com/leopard/overview/tools.html | titolo=documento Apple | lingua=en}}</ref>. Non è ancora noto quando queste evoluzioni saranno supportate nel run-time GNU, sebbene lo siano già in [[Mac OS X 10.5 Leopard]]<ref>{{cita web | url=http://www.apple.com/macosx/features/300.html#xcode3 | titolo=documento Apple | lingua=en}}</ref>.
 
==== Garbage collection ====
Riga 541:
Questo intercetta ogni invocazione a setMainMenu di NSApplication.
 
Il posing è stato dichiarato deprecato con [[Mac OS X 10.5 Leopard]] e non è disponibile nei run-time a 64 bit.
 
=== #import ===
Riga 579:
Il linguaggio può essere implementato con un compilatore C (in [[GNU Compiler Collection|GCC]], prima come un [[preprocessore]] ed in seguito come un modulo del compilatore) piuttosto che con un nuovo compilatore. Ciò consente all'Objective C di sfruttare l'enorme mole di codice, librerie e strumenti già esistenti in C che può essere adattata in Objective C per fornire un'interfaccia object-oriented. Tutte questi fattori riducono le barriere d'ingresso al nuovo linguaggio, fattore che costituì il problema principale di Smalltalk negli [[anni 1980|anni ottanta]].
 
Le prime versioni di Objective C non supportavano la [[garbage collection]]. Al tempo questa scelta fu oggetto di discussioni e in molti (ai tempi di Smalltalk) la consideravano un lungo "tempo morto" in cui il sistema era reso inusabile. Anche se qualche implementazione di terze parti (principalmente [[GNUstep]]) aveva già aggiunto questa caratteristica, è stata implementata da [[Apple]] una tecnica simile tramite [[Automatic Reference Counting|ARC]] in [[Mac OS X 10.5Leopard]], ma non è disponibile per applicazioni implementate per versioni precedenti del [[sistema operativo]].<ref>{{Cita web | url=http://www.apple.com/macosx/developertools/xcode.html | titolo=Mac OS X Leopard – Xcode 3.0 | autore=Apple, Inc. | anno=22 agosto 2006 | sito=apple.com | accesso=22 agosto 2006 | lingua=en}}</ref>
 
Un'altra critica comunemente fatta all'Objective C è quella di non avere un supporto nativo per i [[namespace]].