Arquitetura do IronBarcode (2025.2+)

This article was translated from English: Does it need improvement?
Translated
View the article in English

A partir da versão 2025.2, o pacote IronBarcode é dividido em camadas separadas de gestão, nativa e de machine learning. A estrutura espelha as convenções de nomenclatura já usadas pelo IronOCR e IronPDF, o que proporciona suporte multiplataforma mais limpo e manutenção mais fácil.

Estrutura do Pacote

Distribuição Principal

Os pacotes NuGet de nível superior são mapeados para uma plataforma-alvo:

  • BarCode: o pacote padrão para Windows, e o principal NuGet para uso geral.
  • BarCode.Linux, BarCode.MacOS e semelhantes: distribuições específicas de OS que seguem a mesma convenção de nomenclatura que IronOCR e IronPDF.

Camadas de Pacote Internas

Cada pacote de nível superior é montado a partir de vários subpacotes internos, cada um responsável por uma preocupação.

1. BarCode.Slim

Contém o núcleo gerenciado: o código C#, a camada de interoperação, todo o código relacionado a PDF e todas as dependências de terceiros em C#. Esta é a camada central de lógica e ligação que impulsiona os recursos gerenciados do IronBarcode.

2. IronSoftware.ReaderInternals.XXX

Contém o código nativo C++ para leitura, escrita e detecção de códigos de barras. Existem variantes específicas de plataforma para Windows, Linux, Mac e outros.

3. BarCode.Detection

Transporta a lógica de detecção de machine learning, atualmente escrita em C# sobre o ONNX Runtime. Não depende do sistema operacional nesta fase.

BarCode.Detection acabará por se mudar para o ncnn, uma biblioteca nativa de inferência ML em C++, o que então introduzirá variantes específicas de SO.

Exclusões da Plataforma Móvel

BarCode.Detection não está incluído em Barcode.iOS ou Barcode.Android. A omissão é deliberada: a detecção de ML levanta preocupações de desempenho e limitações de compatibilidade em plataformas móveis.

Benefícios

A arquitetura reestruturada oferece:

  • Uma separação modular entre o código gerenciado e o nativo.
  • Empacotamento limpo e direcionado ao OS.
  • Prova de futuro para detecção nativa de ML de alto desempenho.
  • Alinhamento mais próximo com as outras bibliotecas Iron Software.
  • Manutenção e resolução de problemas mais fáceis.
Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais ...

Leia mais
Pronto para começar?
Nuget Downloads 2,317,217 | Versão: 2026.7 recém-lançado
Still Scrolling Icon

Ainda está rolando a tela?

Quer provas rápidas? PM > Install-Package BarCode
executar um exemplo Veja seu fio se transformar em um código de barras.