Glossário de Desenvolvimento de Aplicativos: fique por dentro dos principais termos

Glossários - Desenvolvimento de Aplicativos - UDS Tecnologia 3

No mundo dinâmico do Desenvolvimento de App, estar familiarizado com os termos e conceitos mais comuns é essencial para profissionais da área. Seja você um desenvolvedor iniciante, um gestor de projetos ou um profissional experiente, compreender a terminologia utilizada pode fazer uma enorme diferença na eficiência e na qualidade dos seus projetos.

Neste glossário, exploramos os termos-chave relacionados ao mercado de Desenvolvimento de Aplicativos. Ao entendê-los, você poderá aprofundar seu conhecimento sobre a área e suas práticas, e sobre os serviços prestados pela UDS Tecnologia.

Nota: muitos termos do setor são frequentemente usados em inglês, por isso optamos por mantê-los nesse idioma. Os termos que podem aparecer tanto em português quanto em inglês estão organizados pelo termo em português.

Glossário

A

API (Application Programming Interface):
Conjunto de rotinas e ferramentas para construir software e aplicações que permitem a comunicação entre diferentes sistemas.

APK (Android Package Kit):
O formato de arquivo usado para distribuir e instalar aplicativos em dispositivos Android.

A/B Testing:
Método de comparar duas versões de uma aplicação ou funcionalidade para determinar qual tem melhor desempenho.

Agile:
Metodologia de Desenvolvimento de Software e desenvolvimento de app que promove entregas incrementais e iterativas, focando na colaboração contínua e na capacidade de resposta a mudanças.

AWS (Amazon Web Services):
Plataforma de serviços de computação em nuvem que oferece armazenamento, poder computacional e outros serviços para desenvolvimento de aplicativos.

B

Backend:
Parte de um aplicativo que lida com a lógica do servidor, banco de dados e integração com outros sistemas.

Beta Testing:
Fase de teste em que uma versão do aplicativo é liberada para um grupo restrito de usuários para identificar bugs e coletar feedback.

Bug: Um erro ou falha no software que causa comportamentos inesperados ou indesejados.

Boilerplate:
Código repetitivo e padronizado usado como base para novos projetos de software.

C

Cross-Platform:
Desenvolvimento de App que pode ser executado em várias plataformas (por exemplo, iOS e Android) com uma única base de código.

CI (Continuous Integration):
Prática de integrar código continuamente em um repositório compartilhado, onde cada integração é verificada por uma construção automatizada.

CD (Continuous Deployment):
Prática de liberar código em produção automaticamente sempre que uma alteração é feita e passa por testes automáticos.

Codebase:
Conjunto completo de arquivos de código-fonte de um projeto de software.

Caching:
Técnica para armazenar dados temporariamente para acesso rápido, melhorando o desempenho do aplicativo.

D

Debugging:
O processo de identificar, analisar e corrigir bugs no software.

Deployment:
Processo de disponibilizar uma aplicação para uso, seja em um ambiente de teste, homologação ou produção.

Design Pattern:
Soluções recorrentes para problemas comuns de design de software.

DPI (Dots Per Inch):
Medida de densidade de pixels, importante para o design de interfaces em diferentes dispositivos.

Data Binding:
Técnica que conecta elementos da interface do usuário a dados de fontes subjacentes, permitindo atualizações automáticas.

E

Emulador:
Software que permite executar aplicações em um ambiente simulado, imitando o comportamento de outro dispositivo.

Error Logging:
Registro de erros e falhas que ocorrem durante a execução do aplicativo, usado para diagnóstico e correção.

Event Loop:
Estrutura de programação que espera e despacha eventos ou mensagens em um programa.

End-to-End Testing:
Teste que valida o fluxo completo do aplicativo, desde a interface do usuário até a comunicação com o backend.

F

Framework:
Conjunto de ferramentas e bibliotecas que facilitam o desenvolvimento de software ao fornecer estrutura e funcionalidades básicas.

Firebase:
Plataforma de desenvolvimento de apps móveis e web oferecida pelo Google, que fornece uma variedade de ferramentas, incluindo banco de dados em tempo real e autenticação.

Frontend:
Parte de um aplicativo com a qual o usuário interage diretamente, geralmente composta por HTML, CSS e JavaScript.

Functional Testing:
Testes que verificam se cada função do software opera de acordo com os requisitos especificados.

G

Git:
Sistema de controle de versão distribuído usado para rastrear mudanças no código-fonte durante o desenvolvimento de software.

GUI (Graphical User Interface):
Interface gráfica do usuário que permite a interação com o software através de elementos visuais, como botões e ícones.

Gradle:
Sistema de automação de compilação usado para projetos Android.

H

Hybrid App:
Aplicativo que combina elementos de aplicativos nativos e da web, utilizando tecnologias como HTML, CSS e JavaScript.

Hotfix:
Correção rápida de um bug em produção, geralmente liberada como uma atualização emergencial.

HTTP (Hypertext Transfer Protocol):
Protocolo de comunicação para transferência de dados na web.

I

IDE (Integrated Development Environment):
Ambiente de desenvolvimento integrado que fornece ferramentas para escrever, depurar e testar código, como Visual Studio e Android Studio.

iOS:
Sistema operacional móvel desenvolvido pela Apple para dispositivos como iPhone e iPad.

In-App Purchase:
Modelo de monetização que permite aos usuários comprar conteúdos adicionais dentro do aplicativo.

J

Java:
Linguagem de programação amplamente utilizada no desenvolvimento de aplicativos Android.

JSON (JavaScript Object Notation):
Formato de intercâmbio de dados leve e fácil de ler, usado frequentemente em comunicação entre cliente e servidor.

JUnit:
Framework para escrever e executar testes unitários em Java.

K

Kotlin:
Linguagem de programação moderna e concisa que é oficialmente suportada para o desenvolvimento de app Android.

Kubernetes:
Sistema de orquestração de contêineres usado para automatizar a implantação, escalabilidade e gerenciamento de aplicativos em contêineres.

L

Lifecycle:
Ciclo de vida do aplicativo, incluindo estados como criação, execução, pausa e destruição.

Localization:
Processo de adaptar um aplicativo para diferentes idiomas e regiões.

Linting:
Ferramenta que analisa o código-fonte para detectar erros, bugs e problemas de estilo.

M

MVP (Minimum Viable Product):
Versão mínima de um produto que permite uma rápida liberação para obter feedback dos usuários.

Microservices:
Arquitetura de software onde a aplicação é composta por pequenos serviços independentes que comunicam entre si.

Middleware:
Software que conecta diferentes componentes ou aplicações, facilitando a comunicação e a gestão de dados.

N

Native App:
Aplicativo desenvolvido especificamente para um sistema operacional, utilizando as linguagens e ferramentas nativas desse sistema (por exemplo, Swift para iOS e Kotlin para Android).

Node.js:
Ambiente de execução JavaScript que permite o desenvolvimento de aplicações do lado do servidor.

Notification:
Mensagem enviada para informar o usuário sobre eventos ou atualizações relevantes no aplicativo.

O

OAuth:
Padrão de autorização que permite aos usuários compartilhar informações de suas contas sem revelar suas credenciais.

Objective-C:
Linguagem de programação usada para desenvolvimento de aplicativos iOS antes do Swift.

Onboarding:
Processo de introdução de novos usuários a um aplicativo, geralmente através de tutoriais ou guias.

P

Push Notifications:
Mensagens enviadas do servidor para o aplicativo móvel para notificar o usuário sobre atualizações ou informações importantes.

PWA (Progressive Web App):
Aplicativos da web que utilizam tecnologias modernas para proporcionar uma experiência similar a um aplicativo nativo.

Provisioning Profile:
Arquivo usado no desenvolvimento de aplicativos iOS que associa o aplicativo a um dispositivo específico para teste.

Q

QA (Quality Assurance):
Processo de garantir a qualidade do software através de testes e revisões sistemáticas.

Query:
Solicitação de dados em um banco de dados.

Quirks Mode:
Modo de renderização em navegadores que emula comportamentos antigos para compatibilidade com sites antigos.

R

REST (Representational State Transfer):
Arquitetura de rede que utiliza padrões HTTP para comunicação entre cliente e servidor.

React Native:
Framework de desenvolvimento de app mobile que permite a criação de aplicativos nativos usando JavaScript e React.

Rollback:
Reversão de um sistema ou aplicação para um estado anterior devido a falhas ou bugs.

Repository:
Local onde o código-fonte de um projeto é armazenado e gerenciado.

S

SDK (Software Development Kit):
Conjunto de ferramentas e bibliotecas fornecidas para ajudar no desenvolvimento de aplicativos para uma plataforma específica.

Scrum:
Framework ágil de gerenciamento de projetos que utiliza sprints curtos e entregas frequentes.

SSL (Secure Sockets Layer):
Protocolo de segurança que criptografa a comunicação entre cliente e servidor.

SaaS (Software as a Service):
Modelo de entrega de software onde o aplicativo é hospedado pelo provedor de serviços e acessado pelos usuários via internet.

T

TestFlight:
Plataforma da Apple para distribuição e teste de aplicativos iOS antes da publicação na App Store.

TDD (Test-Driven Development):
Metodologia de desenvolvimento onde os testes são escritos antes do código funcional.

Telemetry:
Coleta e análise de dados sobre o uso e o desempenho do aplicativo.

Thread:
Unidade básica de execução dentro de um processo, permitindo a execução simultânea de várias operações.

U

UI (User Interface):
Interface do usuário, composta pelos elementos visuais com os quais os usuários interagem.

UX (User Experience):
Experiência do usuário, focada em como os usuários percebem e interagem com o aplicativo.

Unit Testing:
Testes que verificam o funcionamento correto de pequenas partes individuais do código.

V

Version Control:
Sistema que registra alterações no código ao longo do tempo, permitindo reverter para versões anteriores e colaborar com outros desenvolvedores.

Virtual Machine (VM):
Emulação de um sistema de computador que permite a execução de um sistema operacional como se fosse um programa em outro sistema operacional.

ViewModel:
Componente do padrão MVVM (Model-View-ViewModel) que separa a lógica de apresentação da interface do usuário.

W

Widget:
Componente de interface gráfica que exibe informações ou permite interação, como um botão ou um campo de texto.

Wireframe:
Esboço visual básico de um layout de interface, usado para planejar a estrutura e a funcionalidade de uma aplicação.

WebSocket:
Protocolo que permite comunicação bidirecional em tempo real entre o cliente e o servidor.

X

XML (eXtensible Markup Language):
Linguagem de marcação usada para definir regras de codificação de documentos em formato legível por máquina e humano.

Xcode:
IDE da Apple para desenvolvimento de app iOS e macOS.