Pular para o conteúdo principal

Questão de Programação — Desenvolvimento Mobile — Quadrix 2025

ProgramaçãoDesenvolvimento Mobile
Código
qg599997
Banca
Quadrix
Órgão
CRO-SP
Ano
2025
Nível
Superior
Cargo
Analista de Desenvolvimento de Sistemas de Informação
Acerca do desenvolvimento nativo para iOS, do desenvolvimento multiplataforma e da persistência de dados em dispositivos móveis, julgue o item seguinte.O Core Data é uma biblioteca multiplataforma, utilizada tanto em iOS quanto em Android, para a persistência de dados relacionais, geralmente com sintaxe SQL pura.
  1. CCerto
  2. EErrado
Revelar gabarito e comentário

GabaritoE — Errado

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Core Data: persistência no ecossistema iOS

Gabarito: E — ERRADO. O Core Data não é uma biblioteca multiplataforma — ele é um framework exclusivo do ecossistema Apple (iOS, macOS, tvOS e watchOS), e não utiliza SQL puro como linguagem de consulta; ele trabalha com um modelo de objetos e, por baixo dos panos, pode usar SQLite como armazenamento, mas a interação é feita por meio de uma API orientada a objetos (NSManagedObject). A afirmação mistura dois conceitos: multiplataforma (que se refere a ferramentas como Flutter e React Native) e persistência relacional com SQL (que é o papel de bibliotecas como SQLite ou Room no Android).

O Core Data é um framework da Apple para gerenciar o ciclo de vida de objetos e sua persistência. Ele não é um banco de dados em si, mas uma camada de abstração que pode usar SQLite, XML ou memória como armazenamento subjacente. O desenvolvedor interage com objetos gerenciados (NSManagedObject) e consultas são feitas com NSFetchRequest, não com comandos SQL. Isso significa que, embora o Core Data possa usar SQLite como repositório, o desenvolvedor não escreve SQL puro — ele usa uma API de objetos.

Para entender a pegadinha, é preciso distinguir os conceitos:

  • Desenvolvimento nativo: cada plataforma tem suas próprias ferramentas. No iOS, usamos Swift/Objective-C com frameworks como Core Data; no Android, usamos Kotlin/Java com Room ou SQLite.

  • Desenvolvimento multiplataforma: ferramentas como Flutter (Dart), React Native (JavaScript) e Xamarin (C#) permitem escrever um código que roda em várias plataformas. O Core Data não se enquadra aqui, pois é exclusivo da Apple.

  • Persistência relacional com SQL: bibliotecas como SQLite (usada diretamente) ou Room (Android) permitem consultas SQL. O Core Data, apesar de poder usar SQLite, não expõe SQL ao desenvolvedor.

A banca explora a confusão entre "multiplataforma" e "persistência". O candidato que sabe que Core Data é do iOS já elimina a primeira parte; quem sabe que ele não usa SQL puro elimina a segunda. A questão é simples, mas exige conhecimento específico do ecossistema Apple.

Na prática, se você está desenvolvendo um app iOS e precisa persistir dados, pode usar Core Data (orientado a objetos) ou SQLite diretamente (com SQL). No Android, o equivalente ao Core Data seria o Room, que também abstrai o SQL, mas é específico do Android. Nenhum desses é multiplataforma.

Critério

Core Data

SQLite

Room

Plataforma

Exclusivo Apple (iOS, macOS, etc.)

Multiplataforma

Exclusivo Android

Linguagem de consulta

API orientada a objetos (NSFetchRequest)

SQL puro

SQL (com abstração via DAO)

Papel

Camada de abstração (pode usar SQLite como armazenamento)

Banco de dados relacional

Biblioteca de persistência (abstrai SQLite)

1Core Data
Exclusivo iOS/Apple
Orientado a objetos (NSManagedObject)
Consultas via NSFetchRequest
Pode usar SQLite por baixo
2SQLite
Multiplataforma
SQL puro
3Room
Exclusivo Android
Abstrai SQL
4Flutter/React Native
Multiplataforma
Não são persistência
Persistência de dados mobile
LEVELsoulevel.com.br
Persistência de dados mobile: Core Data (Exclusivo iOS/Apple, Orientado a objetos (NSManagedObject), Consultas via NSFetchRequest, Pode usar SQLite por baixo); SQLite (Multiplataforma, SQL puro); Room (Exclusivo Android, Abstrai SQL); Flutter/React Native (Multiplataforma, Não são persistência)

Item — ❌ ERRADO

A afirmação está incorreta por dois motivos: (1) o Core Data é um framework exclusivo da Apple, não multiplataforma — ele não roda em Android; (2) ele não usa SQL puro — a interação é via objetos e consultas com NSFetchRequest, embora possa usar SQLite como armazenamento interno. A banca troca o Core Data por uma ferramenta multiplataforma genérica e atribui a ele uma característica (SQL puro) que pertence a bibliotecas como SQLite.

NÃO CAIA NESSA!

Para não errar, lembre-se: Core Data = iOS, orientado a objetos; SQLite = multiplataforma, SQL puro; Room = Android, abstrai SQL. Se a questão falar em "multiplataforma" e "SQL puro", desconfie — provavelmente é uma pegadinha.

Gabarito: E — ERRADO.

Link permanente: /questoes/qg599997