> Tech > Dossier System i : Au-delà  de RPG : Réfléchissez bien aux différentes options (3/3)

Dossier System i : Au-delà  de RPG : Réfléchissez bien aux différentes options (3/3)

Tech - Par Don Denoncourt - Publié le 30 novembre 2010
email

RPG est vieux d’un demi-siècle et le moment est peut être venu de considérer ce qui vient après.

Si vous êtes un inconditionnel de RPG, ne jetez quand même pas tout de suite ce numéro à la corbeille : écoutez-moi plutôt.

Dossier System i : Au-delà  de RPG : Réfléchissez bien aux différentes options (3/3)

Mais alors, quelles sont les alternatives à RPG ? Java est la plus évidente. D’ailleurs, voilà une décennie qu’IBM le pousse. Java a été, est et continuera à être très apprécié. Il est numéro un de l’index TIOBE et son taux d’adoption continue d’augmenter.

Il existe une grande quantité d’API et de frameworks Java, depuis les API entrée de gamme, comme Log4j, jusqu’à la programmation orientée aspect, pour développement sur le Web, et des frameworks ORM (object-relational mapper) tels que Spring et Hibernate. Java couvre vraiment toutes les plates-formes.

Ce langage a révolutionné le déploiement d’applications. Son architecture thread est incomparable et le threading est très important pour deux raisons : l’accès utilisateur simultané à des applications Web et la prolifération de machines multiprocesseurs.

Mais, comme le dit Paul Touhy, à propos du System i, « Java, pour de multiples raisons, n’a pas tenu ses promesses ». La principale raison de cet échec est peut-être qu’il est difficile pour des développeurs de gestion d’apprendre Java. Il a été écrit comme un meilleur C++, mais sur une machine virtuelle.

Quoi qu’il en soit, Java est un langage de programmation puissant, souple, hétérogène, qui a fait toutes ses preuves dans le développement d’applications Web hautement évolutives. Carson Soule me glisse à l’oreille,
« L’explication de l’échec de Java se trouve dans ma dernière phrase : C’est un langage de programmation systèmes, tout comme C++. Ce n’est pas un bon choix pour la programmation d’applications de gestion ». PHP a été écrit dans un but précis : le développement sur le Web. Il a été initialement créé comme « Personal Home Page » avec un jeu de scripts Unix Perl, mais il a rapidement été rebaptisé « PHP: Hypertext Processor » et un ensemble de première classe de bibliothèques C.

Sur l’index TIOBE, PHP est en quatrième position. Mais, en raison de sa simplicité, c’est le langage Web le plus facile à aborder. A mes yeux, PHP pose toutefois un problème : pour écrire des applications de gestion de qualité, il faut choisir, apprendre, puis utiliser divers frameworks. PHP soulève d’autres questions, comme l’évolutivité, la performance, et l’utilisation dans des applications non Web.

.NET est une plate-forme qui héberge une variété de langages. Il a été développé comme une alternative Windows à J2EE. Pour certains, .NET est un J2EE amélioré. Les langages .NET de C# et Visual Basic sont classés en huitième et troisième position, respectivement, sur l’index TIOBE. Et, bien que je ne sois pas un vrai fan de Visual Basic, je considère que C# est, pour l’essentiel, un meilleur Java.

C# est très semblable à Java mais avec un certain nombre de fonctions que j’aimerais bien pouvoir utiliser dans des applications Java. Mais, comme je suis un défenseur de System i et Linux, je ne saurais recommander la solution .NET, spécifique à un fournisseur et une plate-forme.

EGL est un langage soigné, facile à apprendre par un programmeur RPG ou Cobol. L’un de ses points forts est la possibilité de définir des structures d’enregistrements (qui ressemblent beaucoup aux structures Cobol) puis à les utiliser pour communiquer avec la base de données et les anciens programmes. La syntaxe d’EGL est très simple. Le code EGL est généré en code Java, lequel peut ensuite être déployé sur WebSphere.

Téléchargez cette ressource

Travail à distance – Guide IT et Métiers

Travail à distance – Guide IT et Métiers

Le travail à distance met à l'épreuve la maturité numérique des entreprises en termes de Cybersécurité, d'espace de travail, de bien-être des collaborateurs, de communication et gestion de projet à distance. Découvrez, dans ce nouveau Guide Kyocera, quels leviers activer prioritairement pour mettre en place des solutions de travail à domicile efficaces, pérennes et sécurisées.

Tech - Par Don Denoncourt - Publié le 30 novembre 2010