Frameworks Flashcards
Qual é a sua experiência com o core Data? Pode dar exemplos?
Abordagem sugerida: Core Data é um tópico enorme e complexo, mas você deveria ter tentado pelo menos uma vez. Você pode achar útil falar sobre como o NSPersistentContainer tornou o Core Data mais fácil de usar a partir do iOS 10 ou comparar e contrastar o Core Data e o CloudKit.
Para obter uma resposta realmente excelente, fale sobre coisas que o Core Data faz bem, como pesquisa, classificação e relacionamentos, mas também fale sobre lugares onde o Core Data enfrenta dificuldades, como opcionalidade e extensas APIs digitadas em string.
Quais são as diferentes maneiras de mostrar conteúdo da web aos usuários?
Abordagem sugerida: você não precisa nomear todos eles, mas certamente ajuda: UIWebView, WKWebView, SFSafariViewController e chamar openURL() no UIApplication. Não apenas liste-os: pelo menos mencione que UIWebView está obsoleto, mas se puder, você também deve comparar e contrastar WKWebView e SFSafariViewController.
Que classe você usaria para listar arquivos em um diretório?
Abordagem sugerida: Esperamos que sua resposta tenha sido FileManager. Se o seu entrevistador parecia querer mais, você pode querer falar sobre sandbox: diretórios importantes, como documentos e caches, uso de grupos de aplicativos para compartilhar dados entre alvos em seu aplicativo e muito mais.
Para que serve o UserDefaults? Para que o UserDefaults não serve?
Abordagem sugerida: isso deve fazer você pensar imediatamente em velocidade, tamanho e segurança: UserDefaults é ruim para grandes quantidades de dados porque retarda o carregamento do aplicativo, é irritante para tipos de dados complexos por causa do NSCoding e uma má escolha para informações como cartões de crédito e senhas – recomende o chaveiro. Se você usa o SwiftUI extensivamente, pode mencionar @AppStorage aqui.
Qual é o objetivo do NotificationCenter?
Abordagem sugerida: a maioria das pessoas usa isso para receber mensagens do sistema, por exemplo, para ser notificado quando o teclado aparece ou desaparece, mas você também pode usá-lo para enviar suas próprias mensagens dentro do seu aplicativo. Depois de descrever o básico, tente compará-lo com os delegados.
Que etapas você seguiria para fazer uma chamada de api?
Abordagem sugerida: Existem muitas maneiras de responder a isso (incluindo “use Alamofire”), mas o principal é demonstrar que você sabe que precisa ser assíncrono para evitar o bloqueio do thread principal. Não se esqueça de mencionar a necessidade de enviar o trabalho de volta ao thread principal quando chegar a hora de atualizar a interface do usuário.
Para ganhar pontos extras, mencione que esse é o tipo de trabalho que Combine simplesmente consome.
Quanta experiência você tem com GCD?
É uma api fornecida pela Apple para gerenciar operações concorrentes usando dispatch queue.