Utilisation des bibliothèques .NET JAVA est possible?


La divulgation récente de services Web semble pour résoudre presque tous les problèmes d'interopérabilité entre Java et .NET en raison de l'indépendance de plateforme et le canal de transport universel. Et ce est vrai, la flexibilité et l'universalité des solutions de services Web en combinaison avec les normes définies technologie en font un gagnant dans près de 80%, peut-être 90% des cas. Mais en réalité, il ya des inconvénients?

Bien sûr, il ya des cas et intraitable avec le pop service Web de temps à autre à de nombreux projets critiques. La principale raison pour laquelle les services Web ne tombent pas dans tous les cas est généralement les frais de l'exécution, l'entretien et le développement. La décision sur la façon de résoudre ces problèmes est généralement basée sur les architectes système et pourrait être l'une des décisions les plus importantes dans le projet qui implique beaucoup de conséquences différentes.

Comment identifier si votre cas devrait être résolu avec les services Web?

Si vous êtes le seul à décider, vous devriez envisager au moins les points suivants. Disons que nous NET avec une certaine logique héritage d'affaires ou algorithme de chiffrement/critiques commercial ou API .NET seule société CRM, voici comment nous analysons ceci:

  • Vérifiez si votre besoin est intéressant de construire serveur dédié de client infrastructure. Vous devrez effectuer les exécutions transversale à la machine? Rappelez-vous que le service web est client-serveur. Dans notre cas, nous aurions besoin de construire un service sur le Web .NET et envelopper méthodes choisies dans notre WCF interface SVC ou ASMX. Si ce est juste une méthode et dll situé sur la même machine que notre application Java valeur de serveur d'hébergement Web et de le consommer sur l'hôte local? Certainement pas.
  • Vérifiez si vous pouvez vous le permettre. Chaque appel de service Web a à peu grosse tête sur chaque message de demande si en utilisant le protocole XML chaque méthode simple est enveloppé dans une enveloppe et remis requête http xml consommer des ressources du serveur web, et y compris tous les autres retards dans le canal de transport, sérialisation/dé-sérialisation et web traitement de la demande, en réalité, il se négocie algorithme qui place les opérations de change sur le marché boursier ou devrions-nous l'éviter ... la même dans tous les autres cas, nous avons eu beaucoup de demandes dans un court laps de temps, ou se appuient simplement sur la vitesse il faut ajouter que beaucoup de buzz dans notre communication.
  • Vérifiez se il ne est pas trop simple. Si la bibliothèque que nous utilisons contient une seule méthode pour le cryptage ou de calculer quelque chose, nous devrions faire: service web, client, serveur, serveur Web permettent la communication http, créer des projets Web .NET suffit de charger une méthode à partir d'une DLL et appeler une fois dans la vie de notre JAVA projet? Je N'ai Pas.
  • Vérifiez se il ne est pas trop compliqué. Parfois, la quantité de code que nous voulons réutiliser en JAVA pourrait être opposée trop grand. Emballage des milliers de méthodes dans le service Web et passer des milliers d'emplois en cours d'exécution via le client de service Web pourrait nous coûter beaucoup dans le développement et la maintenance. Exemple simple serait le cas était de vouloir construire des applications Java avec une interface WPF, je ne peux pas imaginer exposer toutes les classes du framework WPF par le web mise en œuvre des services de rappel et de construire hors de lui interface réactive.


Nous pouvons supposer que nous avons jusqu'à présent décidé si notre solution peut et doit être mis en œuvre avec l'approche de l'interopérabilité des services Web, mais que devons-nous faire si elle ne rentre pas là-dedans? La plupart des développeurs ne respectent généralement pas ces problèmes, mais se ils le font il est difficile de trouver une bonne solution. Il ne est pas si facile à obtenir JAVA et .NET travailler ensemble sur leur propre, sans dépenser plus de temps que pour l'ensemble de notre projet est prévue pour. Et bien sûr, nous devons nous rappeler que ce est une bonne pratique de réinventer la roue.

Quelles sont les alternatives à l'utilisation des bibliothèques d'applications .NET Java?

La plupart d'entre nous ne se rendent pas compte qu'il ya des ponts Java Native .NET disponibles sur le marché ces solutions ne exactement que ce que le service Web ne remplissent parfaitement que notre écart de 20% des cas.

JAVA natif .NET Bridge utilise Java méthodes natives appelant capacités avec des canaux de communication indigènes de plate-forme spécifique et des appels directs d'objets .NET. De cette façon, nous obtenons .NET hébergé nativement traiter pour notre application JAVA nous donnant accès à ne importe quelle bibliothèque .NET directement à partir du code Java, comme se ils étaient des objets Java natif. En raison de l'invocation directe passe entre les processus vous obtenez la mise en œuvre immédiate, sans délai, les frais généraux et d'infrastructure supplémentaires.

Nous recevons également de nombreux avantages supplémentaires, ceux-ci sont: mécanisme efficace pour rappel afin que vous puissiez facilement vous abonner épreuves de cross plate-forme, l'accès à ne importe quelle bibliothèque .NET sans boîtiers et mise en œuvre sur le .NET, le cycle de vie des objets et processus liés en une seule des solutions d'exécution et les produits client-serveur puis latéral supplémentaire pour soutenir et surveiller.
JAVA .NET pour le marché de l'interopérabilité ne est pas grande. Il ya seulement quelques vendeurs qui sont en mesure de fournir suffisamment de solutions efficaces et flexibles qui peuvent être fiables pour des projets de toute taille.

Choisissez pont à droite devrait être guidé par la facilité d'utilisation, performance et flexibilité. Cette année, il y avait une nouvelle solution appelée Javonet publié. Il semble être très attrayant pour plusieurs raisons. Le projet a été initialement né comme la recherche académique pour les systèmes de base de données de l'objet à l'Institut polonais-japonais de technologies de l'information. De très beginnig avait adressé un rendement élevé.

Lors de la commercialisation a été amélioré avec un fonctionnalités utiles beaucoup API programmeur-amicales et beaucoup. Javonet donne accès à ne importe quelle bibliothèque de .NET est adapté toutefois partie du cadre de .NET ou livré par des sociétés tierces. Il ya des changements dans le code .NET et les bibliothèques peuvent être chargés à partir des répertoires locaux ou GAC. Il prend en charge les x86 et x64.

Avoir accès à ne importe quelle bibliothèque instantanément nous pouvons simplement référence de notre code Java et de travailler sur des objets et des classes de cette collection, comme se ils étaient des objets Java natif. API expose Javonet NObject variable spéciale pour Java qui fonctionne comme une poignée pour objet .NET. Depuis tous les appels et les références sont faites dans l'exécution peut initialiser et utiliser ne importe quel objet, une méthode, une propriété ou un champ en utilisant la réflexion de style de syntaxe fournissant noms littéraux de chaîne.

Java Bridge NET que Javonet gère en interne collecteur actions des ordures et des exceptions afin d'intercepter les exceptions sur le .NET et JAVA si notre NObject poignée est recueilli sur l'objet Java correspondant est placé sur le côté de .NET ainsi. Toutes ces caractéristiques font de cette solution une technologie grand pont qui nous transporte dans tout-en-un pour l'aide .NET pour Java.

Les possibilités de ces solutions méritent d'être explorées comme une haute performance et une utilisation faciles conduit à de nouvelles idées sur la façon dont nous pourrions appliquer cela dans nos projets. Dans tutoriel et des échantillons peut lire guide étape par étape comment faire des applications Java avec WinForms complets ou WPFinterface ou comment étendre la classe .NET en JAVA, parfois même pour les développeurs ayant une vaste expérience de ce type de solution est présentée comme la magie.

Encourage fortement tous les développeurs Java à découvrir et à tester ces solutions de garder à l'esprit les nouvelles alternatives que l'interopérabilité et émet CLR JVM pourraient être résolus dans le monde moderne.




Voir comment appeler des méthodes de .NET JAVA

(0)
(0)

Commentaires - 0

Sans commentaires

Ajouter un commentaire

smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile
Caractères restants: 3000
captcha