Ho già letto alcuni post su perché uso il linguaggio di script incorporato ma voglio chiedere a quando di usarlo.
Ho implementato un framework di binding Objective-C / Javascript che mi consente di scrivere Javascript per usare qualsiasi classe Objective-C e metodi. L'ho trovato molto utile per scopi di debug perché posso verificare / modificare lo stato interno della mia app in fase di runtime. Ma ho anche scoperto che preferisco ancora scrivere codice ObjC anziché codice JS quando costruisco la mia app per alcuni motivi:
- Completamento del codice. Se voglio chiamare un metodo
UIKit
froom JS, spesso devo controllare il documento per il suo nome compare per scrivere solo le prime lettere e lasciare che Xcode lo completi per me in ObjC. - Tutti i vantaggi del linguaggio tipizzato statico. ObjC è un linguaggio tipizzato in modo statico e dinamico, quindi il compilatore può eseguire molti tipi di controllo quando possibile.
- Performance?
- Il collegamento C a JS non è ancora pronto (questo è necessario per analizzare l'intestazione e generare il codice per esporre la funzione C, enum, struct, ecc.)
- Più naturale scrivere ObjC quando si gestiscono i metodi ObjC. (ad esempio nel codice di scrittura JS come
view.setEdit_animated(true, true)
confronta con ObjC[view setEdit:YES animated:YES]
Ma sento che dovrei scrivere più codice JS in modo da poter utilizzare il linguaggio di scripting del vantaggio (ad esempio, sostituire i metodi con correzioni di bug in fase di runtime)
Non sono sicuro di quale parte della mia app debba essere scritta in JS e quale parte dovrebbe essere scritta in ObjC. Qualche consiglio?
È inoltre possibile utilizzare qualsiasi modello di progettazione per il linguaggio di script incorporato?