Macro guardia in Objective-C

0

Ho notato che molte librerie famose scritte in Objective-C (ad esempio AFNetworking) usano la macro guardia nei loro file di intestazione. Sono consapevole che la direttiva #import, che funziona esattamente come #include, include ogni file una sola volta, ovviando alla necessità di #include guards. Per quale motivo sono ancora utilizzati?

    
posta maross 22.08.2014 - 14:10
fonte

1 risposta

2

Perché la soluzione che è già lì funziona al 100%, e cambiarla richiederebbe uno sforzo e avrebbe un (leggero) rischio di introdurre accidentalmente dei difetti.

In generale, la sostituzione di costrutti deprecati con costrutti più moderni è impopolare con gli utenti e la maggior parte non lo fa mai finché non li imponi rimuovendo il costrutto deprecato. E dal punto di vista del business hanno perfettamente ragione: modernizzare il codice costa denaro e non produce assolutamente alcun beneficio per loro, quindi perché farlo? L'unico a trarne vantaggio è il fornitore di piattaforme, perché possono semplificare il compilatore e la maggior parte dei programmatori di applicazioni non si preoccupa molto del benessere del loro fornitore di strumenti.

    
risposta data 22.08.2014 - 14:16
fonte

Leggi altre domande sui tag