Interface
WPF no Windows, AppKit no macOS, ou Electron e Tauri quando uma base única atende melhor. A escolha sai dos critérios, não da moda.
Uma aplicação de posto é uma pilha de camadas que precisam envelhecer bem juntas. Esta página mostra o que roda em cada uma delas, por que escolhemos assim e o que isso significa para quem vai manter o sistema daqui a três anos.
A pergunta certa não é qual tecnologia é melhor. É quem vai conseguir mexer nisso daqui a três anos.
Toda escolha de linguagem e de biblioteca numa aplicação desktop é uma aposta sobre o futuro: quem vai manter, com que facilidade se encontra profissional, se o fornecedor da biblioteca continua existindo e quanto custa mudar de ideia depois. Por isso não temos uma pilha única para todo projeto — temos critérios, e a decisão sai deles com você presente.
O eixo principal é o peso da integração com o equipamento e o desempenho exigido no posto. Operação com muito periférico e volume alto costuma pedir aplicação nativa. Sistema de gestão com muita tela, pouca leitura de hardware e equipe já acostumada a tecnologias web costuma ser bem atendido por multiplataforma, que entrega mais rápido e mantém uma base única. Nos dois casos, a camada de comunicação com o hardware fica isolada — trocar um modelo de balança não pode implicar mexer na regra de negócio.
E tudo o que sustenta o parque vem junto. Banco local, fila de sincronização, canal de atualização assinado, registro de erro com contexto e painel de versão por posto não são extras: são o que faz a diferença entre um sistema instalado e um sistema que se consegue operar e evoluir.
Aplicação desktop sem canal de atualização e sem registro de erro remoto não é um sistema entregue: é um sistema que vai depender de visita a cada problema.
O que compõe uma aplicação desktop da YveTech, da tela ao painel do parque.
WPF no Windows, AppKit no macOS, ou Electron e Tauri quando uma base única atende melhor. A escolha sai dos critérios, não da moda.
A regra de negócio isolada da tela e do hardware — é ela que sobrevive a uma troca de interface ou de periférico.
SQLite como padrão: rápido, sem administração e com o arquivo do banco fácil de copiar em diagnóstico.
Um driver por equipamento, com simulador, permitindo testar tudo sem o aparelho ligado e trocar de modelo sem tocar no núcleo.
Fila persistente, tentativa com espera crescente, reconciliação com regra escrita e alerta quando a espera passa do combinado.
Pacote assinado, atualização automática, registro de erro com contexto e o painel que mostra a versão de cada posto.
Três recortes da infraestrutura que sustenta o parque de estações.
Quatro perguntas que respondemos com você antes de fixar qualquer tecnologia.
Muita leitura de periférico e protocolo incomum puxam para nativo. Pouca integração e muita tela abrem espaço para multiplataforma.
Só Windows, só macOS ou os dois. Atender os dois com base única muda o cálculo de custo de construção e de manutenção.
Se a sua equipe assume a sustentação, a pilha precisa ser uma que ela consiga contratar e manter — mesmo que não seja a nossa preferida.
Sistema para durar anos exige biblioteca com histórico e comunidade. Ferramenta que resolve um ciclo específico aceita escolha mais enxuta.
O sistema é seu — inclusive o conhecimento necessário para mantê-lo sem nós.
Escolhas que barateiam hoje e cobram caro na manutenção.
Não há vencedor absoluto. Há o que se sustenta melhor no seu caso — e o critério fica registrado.
| Situação do projeto | Caminho que costuma vencer | O que pesa na decisão |
|---|---|---|
| Muito periférico e protocolo incomum | nativo | acesso direto a porta e biblioteca do fabricante, sem camada intermediária |
| Volume alto e cálculo intensivo | nativo | controle fino de memória e uso previsível dos núcleos |
| Muitas telas, pouca leitura de hardware | multiplataforma | entrega mais rápida e uma base única para os dois sistemas |
| Windows e macOS com a mesma regra | multiplataforma | metade do custo de manutenção ao longo dos anos |
| Equipe interna assume a sustentação | a pilha que ela já domina | contratar e manter pesa mais que a preferência técnica |
| Aparência do sistema em primeiro plano | nativo | comportamento e detalhes de cada sistema saem de graça |
O que combinamos antes de começar — e cobramos de nós mesmos durante o projeto.
As dúvidas que mais aparecem nesta etapa. Sobre prazo, forma de cobrança e contrato, veja as perguntas frequentes da YveTech.
Depende do projeto, e o critério fica registrado no documento de arquitetura. No Windows, C# com .NET e WPF cobre bem operações com muito periférico. No macOS, Swift com AppKit. Quando a mesma regra precisa rodar nos dois sistemas e a integração com hardware é leve, Electron ou Tauri entregam mais rápido com uma base única. O que não fazemos é escolher antes de conhecer o posto.
Consome mais memória que uma aplicação nativa — isso é fato e não escondemos. A pergunta é se esse consumo importa no seu posto: numa estação com memória folgada e uso de tela, normalmente não; numa máquina modesta rodando outros sistemas ao lado, importa muito. Por isso a decisão vem depois da análise do posto, com a configuração real das máquinas na mesa. Tauri costuma ser a saída quando se quer base única com consumo menor.
Consegue, e o projeto é montado para isso. O repositório está no nome da sua empresa, a documentação de arquitetura sai junto com o código e entregamos o passo a passo para compilar e gerar o instalador do zero. O certificado de assinatura e o canal de atualização também ficam em nome da sua empresa. Não trabalhamos com código refém.
Pelo registro que a própria aplicação envia. Toda falha gera um relatório com o contexto do que estava acontecendo — versão, tela, operação em andamento e o estado da fila de sincronização — sem dado pessoal desnecessário. É o que permite diagnosticar sem depender da descrição de quem estava no balcão no meio do movimento, e é a diferença entre corrigir no mesmo dia e pedir para o operador tentar reproduzir.
Explicamos as opções com os critérios na mesa — inclusive os casos em que a nossa preferência técnica não é a melhor escolha para você.
As quatro etapas do método e os três recortes da operação — cada uma com o seu próprio detalhamento.