Architecture IronBarcode (2025.2+)

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

Depuis la version 2025.2, le paquet IronBarcode est séparé en couches gérées, natives, et d'apprentissage machine. La structure reflète les conventions de nommage déjà utilisées par IronOCR et IronPDF, ce qui offre un support multiplateforme plus propre et une maintenance plus facile.

Structure du paquet

Distribution principale

Les paquets NuGet de niveau supérieur se répartissent sur une plateforme cible :

  • BarCode : le package par défaut pour Windows, et le principal NuGet pour une utilisation à usage général.
  • BarCode.Linux, BarCode.MacOS, et similaires : distributions spécifiques au système d'exploitation qui suivent la même convention de nommage que IronOCR et IronPDF.

Couches de paquet internes

Chaque paquet de niveau supérieur est assemblé à partir de plusieurs sous-paquets internes, chacun possédant une seule préoccupation.

1. BarCode.Slim

Contient le cœur géré : le code C#, la couche d'interopérabilité, tout le code lié aux PDF et chaque dépendance tierce en C#. C'est la logique centrale et la couche de liaison qui alimente les fonctionnalités gérées d'IronBarcode.

2. IronSoftware.ReaderInternals.XXX

Contient le code C++ natif pour lire, écrire et détecter des codes-barres. Il existe des variantes spécifiques à la plateforme pour Windows, Linux, Mac et d'autres.

3. BarCode.Detection

Porte la logique de détection d'apprentissage machine, actuellement écrite en C# sur ONNX Runtime. Elle ne dépend pas du système d'exploitation à ce stade.

BarCode.Detection sera éventuellement déplacé vers ncnn, une bibliothèque d'inférence ML native en C++, qui introduira alors des variantes spécifiques au système d'exploitation.

Exclusions de plateforme mobile

BarCode.Detection n'est pas intégré dans Barcode.iOS ou Barcode.Android. L'omission est délibérée : la détection ML soulève des préoccupations de performance et des limitations de compatibilité sur les plateformes mobiles.

Avantages

L'architecture restructurée offre :

  • Une séparation modulaire entre le code géré et natif.
  • Un conditionnement propre, ciblé sur l'OS.
  • Une pérennité pour la détection ML native haute performance.
  • Un alignement plus étroit avec les autres bibliothèques Iron Software.
  • Une maintenance et un dépannage facilités.
Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite
Prêt à commencer?
Nuget Téléchargements 2,317,217 | Version : 2026.7 vient de sortir
Still Scrolling Icon

Vous faites encore défiler ?

Vous voulez une preuve rapidement ? PM > Install-Package BarCode
exécuter un échantillon regarder votre chaîne devenir un code-barres.