Se stai cercando un lavoro come uno sviluppatore di IOS, hai raggiunto il posto giusto, qui fornisco le 20 domande più comuni di Interview IOS.
Queste domande sarà utile, non solo ti aiuteranno a migliorare le tue abilità, ma ti prepareranno anche per la tua grande giornata.
Altre domande comuni di colloquio iOS:
Per domande di base devi essere preparato. Possono sembrare ovvi, ma sarei sorpreso di sapere quanti ingegneri hanno fallito durante le interviste tecniche.
L’intervistatore riesce a misurare il livello di esperienza del candidato iOS, attraverso queste domande, quindi, anche Se sembrano semplici, cerca di capirli molto bene.
Successivo, 20 domande più comuni domande iOS con le tue risposte:
1- Quali sono i principali vantaggi di Swift?
Questo può sembrare una domanda per i principianti, ma non lo è, ricorda che la cosa principale che interessa l’intervistatore è conoscere la tua esperienza nell’area.
Risposta prevista
Alcuni dei principali vantaggi di SWIFT sono:
- tipi opzionali, che rendono le applicazioni resistenti agli arresti anomali
- Gestione degli errori incorporato
- clausole / chiusure
- molto più veloce rispetto ad altre lingue
- linguaggio tipo di sicurezza
- supporta il modello Coincidenza
Ulteriori informazioni sulla domanda: 8 Vantaggi dell’utilizzo di Swift per lo sviluppo di iOS
2- Hai spiegato gli stili popolari per testare le applicazioni IOS?
La domanda è semplice, è necessario evidenziare i fatti importanti da tenere in considerazione durante il test delle applicazioni IOS.
Risposta prevista
È possibile testare le applicazioni in a simulatore o sui dispositivi stessi. Un simulatore è un software speciale che consente di eseguire applicazioni nel sistema riuscito.
Puoi goderti l’esperienza del vero utente senza danneggiare dispositivi reali, sono facili da installare, facile da usare e davvero più velocemente a dispositivi reali.
Assistenza in questa domanda:
In caso di utilizzo dei dispositivi, ci sono possibilità bloccate, ma queste situazioni possono essere evitate nel caso dei simulatori
3- Quali sono gli svantaggi dell’utilizzo del simulatore per testare le applicazioni IOS?
Con questa domanda, l’intervistatore vuole sapere come gestire i possibili svantaggi durante il test iOS in applicazioni di simulatore.
Risposta prevista:
Quando hai memoria Le perdite o qualsiasi altro problema relativo alla memoria, devono essere evitati simulatori.
Inoltre, il simulatore non può rilevare alcun problema relativo alla rete o Internet.
Assistenza su questa domanda:
Tutti i casi di test devono essere eseguiti sia nel simulatore che nel dispositivo effettivo e verificare l’applicazione nella versione diversa del sistema operativo IOS.
4- Come è la gestione della memoria in iOS?
Le domande di memoria rivelano molto sulla conoscenza di uno sviluppatore, specialmente perché molte persone si stanno sostenendo in Arc in questi giorni.
Risposta prevista:
Gestione della memoria È molto importante in qualsiasi applicazione, in particolare nelle applicazioni IOS che dispongono di memoria e di altri ferramenti e limitazioni del sistema.
Swift utilizza il conteggio automatico di riferimento (ARC). Questo è concettualmente lo stesso in rapido che nell’obiettivo-c.
cura su questa domanda:
Qui vogliono ascoltare un’idea generale del conteggio di riferimento. Come aumenta e cosa succederà se il “contatore” è uguale a 0.
Ulteriori informazioni sulla domanda: conteggio automatico di riferimento
5- Qual è il modello di design singleton?
Questa domanda sorge nelle interviste per valutare la tua esperienza con il singleton o scoprire se hai esperienza in qualcosa che non è solo iOS.
Risposta prevista
Singleton è un modello di design comune utilizzato in molti linguaggi di programmazione orientati agli oggetti.
Questo modello garantisce che vi sia solo un’istanza per una determinata classe ed è necessario concedere l’accesso globale a quel particolare istanza.
6- Dove useresti un modello di design singleton e dove no?
I singleton sono talvolta considerati un antipatrone. I suoi principali svantaggi sono lo stato globale, il ciclo di vita dell’oggetto e dell’iniezione di dipendenza.
Risposta prevista
Quando hai solo un’istanza di qualcosa, è molto allettante fare riferimento e usarlo dappertutto direttamente invece di iniettare nei tuoi oggetti, causando un accoppiamento non necessario del Implementazione nel tuo codice.
Spesso, il singleton consente di condividere lo stato globale e riprodurre il ruolo di una “borsa pubblica” che ogni oggetto utilizza per memorizzare lo stato, generando risultati ed errori imprevedibili o bloccando se è cancellato o cancellato da qualcuno.
Assistenza su questa domanda:
Sebbene in alcune lingue e piattaforme si ritiene che il singleton sia buono, il loro uso deve essere ridotto al minimo.
7- Quali schemi di progettazione sono comunemente usati nelle applicazioni IOS?
Per lavorare con la piattaforma IOS, è necessario avere familiarità con le tecniche, l’architettura e i modelli di progettazione.
Risposta prevista
Motivi tipici Quando si creano applicazioni IOS sono modelli di design “Competenza centralizzata”. Includono MVC, Singleton, Delegate e Observer.
Cura su questa domanda:
L’intervistatore Quello che vuoi sapere è ciò che altri modelli progettano comunemente Immediatamente, oltre a MVC.
8- Perché il modello di progettazione è importante?
i modelli di progettazione sono soluzioni riutilizzabili ai problemi comuni nella progettazione del software.
previsto Risposta
Sono modelli speciali progettati a seconda dell’uso e dei requisiti dell’applicazione. Il codice del modello può essere riutilizzato ogni volta che lavori con la nuova applicazione.
I modelli di progettazione di cacao più utilizzati sono: singleton, delega, fabbrica, decoratore, adattatore, facciata, osservatore, ricordo e Ci sono molte altre
Ulteriori informazioni sulla domanda: Pattern di design del cacao
9- Come determinare il luogo di usabilità nel design?
Un colloquio IOS non è solo un codice. Ci possono essere domande sulle aree di sviluppo.
Risposta prevista
Per determinare l’usabilità, è necessario dividere il processo di progettazione:
- Pensa come utente E poi disegna l’UX.
- Gli utenti sono persone, non i tuoi dati demografici.
- Pensa a tutte le situazioni in cui la domanda sarà utile.
- Segui Lavorando sull’usabilità anche dopo il rilascio.
10- Quali sono i principi solidi in un’applicazione iOS?
I principi solidi sono concetti relativamente vecchi, ma incredibilmente utili da applicare a qualsiasi base di codice OOP in qualsiasi lingua.
Risposta prevista
S: Principio di responsabilità unica (SRP), ogni classe una responsabilità unica.
o: PRINCIPIO APERTO / CHIUSO (OCP), Aprire entità per l’estensione, ma chiuso per la modifica.
l: Principio di sostituzione di Liskov (LSP), le funzioni del tipo di base dovrebbero essere in grado di utilizzare i sottotipi del tipo di base senza saperlo.
i: Principio di Segregazione dell’interfaccia (ISP), molte interfacce specializzate sono migliori di un universale.
D: Principio di investimento di dipendenza (DIP), i moduli di livello superiore sono indipendenti dai moduli di livello inferiore.
Assistenza su questa domanda:
lo faccio Non sai provare solo a nominare i principi, ma anche dare una breve descrizione di ciascuno.
Ulteriori informazioni sulla domanda:
Solid: 5 Principi essenziali Sviluppare il codice qualità
11- Quali sono gli stati di esecuzione comune in iOS?
Quasi nessuno risponde bene questa domanda. Normalmente è meglio fornire un esempio.
Risposta prevista
Inactive: l’applicazione funziona in primo piano senza ricevere alcun evento.
attivo: viene eseguita l’applicazione In primo piano e ricevere eventi.
Sfondo: l’applicazione esegue il codice sullo sfondo.
uiapplication.state
12- Che cosa è MVC?
Questo è un modello di progettazione fondamentale, è molto probabile che tutti gli intervistatori chiedano di questo indipendentemente dal tipo di posto vacante richiesto.
Risposta prevista
Visualizzazione del modello Il controller è un modello di progettazione software che Apple ha eletto i suoi inizi come focus principale per lo sviluppo delle applicazioni IOS.
I modelli sono responsabili dei dati del dominio o del livello di accesso ai dati, che possono manipolare i dati; Le opinioni disegnano cose sullo schermo; I controller gestiscono il flusso di dati tra il modello e la vista.
Il modello e la vista non comunicano mai con l’altro direttamente e dipendono da un controller per coordinare la comunicazione.
In questa domanda:
mvc è un modello di progettazione per uso generico, ma è solo un modello di progettazione per il livello di vista e utilizzarlo solo limita l’architettura e spesso porta al noto problema del “Driver Vista Massiccio “.
sapere quale mvc è essenziale per qualsiasi sviluppo di IOS, ma molto poco attualmente utilizzato, esplora le altre alternative: MVVM, MVP, Viper e VIP.
Ulteriori informazioni sulla domanda: massiccio Visualizza controller
13- Quali opzioni devi implementare lo stoccaggio e la persistenza in iOS?
Gli intervistatori fanno di questa domanda a comprendere la loro comprensione degli strumenti e dei moduli che ha a disposizione per la memorizzazione e la conservazione dei dati in iOS.
Risposta prevista
Così Generale , ci sono i seguenti modi per memorizzare i dati in ordine semplice a complesso:
- matrici di memoria, dizionari, dizionari e altre strutture di dati in memoria
- EsecutFaults / Keychain
- Archiviazione file su disco
- Dati core, regno
- sqlite
Assistenza in questa domanda:
Devi Conoscere i diversi modi in cui potresti memorizzare i dati in iOS e i tuoi vantaggi o svantaggi. Non è limitato a un’unica soluzione a cui è abituato (come dati chiave, ad esempio). Sapere quando uno è preferibile a un altro.
Ulteriori informazioni sulla domanda:
- tipi di raccolta (docs.swift.org)
- dati chiave ( sviluppatore.apple.com)
- realm (realm.io)
- sqlite con tutorial Swift: Guida introduttiva (raywenderlich.com)
14 . Qual è la differenza tra forte, debole, sconosciuto, readyly?
Un colloquio può anche affrontare questi problemi. Gli attributi delle proprietà assegnati determinano come la memoria verrà somministrata per questa proprietà.
Risposta prevista
forte significa che il conteggio di riferimento aumenterà a uno e il suo valore verrà mantenuto durante l’utile Vita dell’oggetto.
Debole significa che punta a un oggetto, ma senza aumentare il conteggio di riferimento. Viene spesso usato durante la creazione di relazioni tra genitori e figli.
Silentato: come riferimenti deboli, non aumentare il conteggio di riferimento. Tuttavia, ha il vantaggio aggiuntivo di non essere un’opzione.
Readonly: utilizzato per impostare la proprietà inizialmente, ma quindi non è possibile modificare.
Puoi trovare maggiori dettagli: Domande dell’intervista: quali sono le proprietà e le variabili di istanza in Objective-C e Swift?
Assistenza su questa domanda:
Non devi approfondire troppo sui dettagli del Implementazioni e caratteristiche immobiliari in Swift e Objective-C, ma è necessario conoscere almeno i concetti di base dei riferimenti.
15- Qual è la differenza tra limiti e cornice?
In linea di principio, un’intervista può iniziare con questa domanda. È una domanda abbastanza comune, quindi non tentare la fortuna, imparare!
Risposta prevista
C’è solo una piccola differenza tra questi due elementi. I limiti sono limitati al proprio sistema di coordinate, mentre una cornice è correlata al sondaggio in cui è contenuto.
Assistenza su questa domanda:
limiti in Uiriew ha una posizione (x , Y) e una dimensione (ampia, alta) relativa al proprio sistema di coordinate (0.0).
Un telaio in un UIView ha una posizione (X, Y) e una dimensione (alta, larghezza) in Relazione con l’oggetto che contiene.
16- Quali sono le migliori pratiche di sicurezza durante la programmazione di IOS?
Come sviluppatore professionista, dovresti sapere come prevenire gli attacchi dell’uomo in media negli attacchi pubblici.
Risposta prevista:
Comunicazione con i server remoti dovrebbe Essere stabilito solo tramite HTTP e SSL e assicurarsi che i dati riservati siano altamente sicuri e protetti da un processo di sovrascrivere.
Inoltre, verificare che tutte le convalide dei dati siano state inviate in esecuzione nel lato del server.
17- Cosa significa KVC e KVO in IOS?
Questa domanda valuta la conoscenza dei diversi modelli di messaggistica utilizzati in iOS.
Risposta prevista
KVC è la codifica dei valori chiave. Meccanismo utilizzato per accedere alle proprietà di un oggetto che utilizzano catene al runtime invece di dover sapere staticamente i nomi delle proprietà in tempo di sviluppo.
KVO significa osservazione dei valori chiave e consente un controller o una classe Osservare il controller o una classe Cambiamenti nel valore della proprietà.
Ulteriori informazioni sulla domanda: KVC e KVO in iOS
18- Come può essere definito un protocollo per la programmazione iOS?
Protocolli consentono di definire i metodi delle classi.
Risposta prevista
è simile all’interfaccia Java che definisce un elenco di metodi necessari che devono essere implementati per A classe. Può essere implementato da qualsiasi classe o metodi senza conoscere il suo tipo.
Assistenza su questa domanda:
può anche parlare dell’estensione del protocollo.Devi capire esattamente chi sono i delegati e come funziona questa relazione.
19- Qual è la differenza tra Delegati e KVO?
Con questa domanda, l’intervistatore sta valutando la sua conoscenza dei diversi modelli di messaggistica utilizzati in iOS.
Risposta prevista
Entrambi sono modi per avere relazioni tra oggetti . I delegati sono una relazione uno per uno in cui un oggetto implementa un delegato e un altro protocollo invia messaggi, utilizzando metodi definiti dal protocollo.
Il KVO è una relazione di molti a molti in cui un oggetto trasmette un messaggio e uno o Più oggetti ascoltano e reagiscono. KVO non è basato sui protocolli. KVO è il primo passo e il blocco fondamentale della programmazione reattiva (rxswift, reattivitàcoca, ecc.)
Ulteriori informazioni sulla domanda:
- delegazione (sviluppatore.apple .com )
- Valore chiave osservazione (nshipster.com)
- reattivo (reactivex.io)
20- Come e quando serializzare e mappare Dati in iOS?
La serializzazione dei dati è qualcosa di comune durante la creazione di applicazioni IOS. Gli intervistatori fanno di questa domanda per vedere se riconosce dove è adeguata e conosce le attività necessarie quando si lavora con i dati, in reti o in dati di archiviazione.
Risposta prevista
Ci sono altri due Scenari comuni in cui avrei bisogno di serializzare e mappare i dati nelle applicazioni IOS, al ricevimento o inviare dati nel livello di rete (come JSON o XML o altro) e persistono o recuperare i modelli nel livello di archiviazione (dati, nsmangettobject).
Ulteriori informazioni sulla domanda: NSJSonerialization
Suggerimenti per l’intervista:
Avanti, alcuni suggerimenti che possono aiutarti nel tuo intervista iOS:
- Devi essere esperto in teoria, perché l’apprendimento della codifica non è difficile.
- Indaga sulla società e mostra l’intervistatore che sei interessato a lavorare per lui.
- Pensa apertamente. Se dici solo la risposta, non significa nulla. Quando parli apertamente, l’intervistatore analizza come pensi e come stai cercando soluzioni in determinate situazioni.
- saggio prima di andare all’intervista. Preparati con le domande di intervista correlate e prova a rispondere chiaramente.
conclusione
Queste 20 domande più comuni dell’intervista iOS, sono progettate per aiutare tutti gli sviluppatori a trovare Una risposta.
Alcuni degli argomenti che ho commentato non sono così utilizzati o noti, dalla rapida uscita, ma per i programmatori con più esperienze sono ben note al momento della programmazione con Objective-C
Possono essere utilizzati, ad esempio, per riempire il vuoto prodotto quando vengono discussi argomenti tecnici complessi, quindi il candidato deve pensare immediatamente alle risposte prima dell’intervista.
Programmazione IOS appassionata
Scrivi la tua email e riceverai i contenuti di valore !
100% spam gratis 😉
- .