Vagrant
1
7.7/10
Vagrant
GÉNIE LOGICIEL / 27 mai 2017

Vagrant est un logiciel libre et open-source pour la création et la configuration d’environnements virtualisés. En effet, il permet de créer des machines virtuelles qui seront utilisées pendant la phase de développement d’une application. Elles permettent d’obtenir l’environnement souhaité sans pour autant changer la configuration de la machine du développeur. De plus, la configuration de la machine virtuelle sera simple à exporter ou à importer. En effet, le logiciel va stocker la description complète de l’environnement de développement dans un fichier écrit en Ruby. Développé par Mitchell Hashimoto et John Bender depuis début 2010, le groupe HashiCorp a été créé afin d’assurer le développement du logiciel à temps plein. Ce logiciel s’avère être un outil qui simplifie la création ainsi que la gestion d’environnements virtualisés. Vagrant permet de travailler dans un environnement reproductible avec les mêmes versions quelles que soient les dépendances. Il s’avère d’ailleurs compatible avec la majorité des systèmes d’exploitation actuels, puisqu’il utilise le principe de virtualisation. Ainsi, un développeur travaillant sous Mac aura accès au même environnement qu’un développeur travaillant sous Windows ou , et ceci en conservant son IDE favori. Comment Vagrant fonctionne-t-il ? Vagrant est une surcouche développée sur des solutions de virtualisation telles que…

VPN (Virtual Private Network)
1
7.2/10
Les VPN (Virtual Private Network)
RÉSEAUX / 27 mai 2017

Un VPN ou Virtual Private Network (Réseau Privé Virtuel) est une technique dont l’objectif est de permettre à plusieurs postes distants de communiquer. Elle est apparue avec la nécessité pour les entreprises de relier leurs différents sites, de façon simple mais aussi peu coûteuse. Avant l’arrivée des VPN, les entreprises devaient utiliser des liaisons appelées TRANSPAC, ou bien des lignes louées. Les VPN ont alors permis de démocratiser ce type de liaison. Le terme VPN sera notamment utilisé dans un contexte de travail à distance, ainsi que pour l’accès à des structures de type cloud computing. Principes de fonctionnement d’un Virtual Private Network (VPN) Le principe même des VPN repose sur un protocole appelé “protocole de Tunneling“. Il permet notamment de faire circuler les informations de façon cryptée d’un bout à l’autre du tunnel qui relie deux postes. Une fois identifiés l’émetteur et le destinataire, le principe du Tunneling consiste donc à construire un chemin virtuel entre eux. Par la suite, l’émetteur chiffre les données et les envoie afin que celles-ci soient acheminées grâce à ce chemin virtuel. Simuler ainsi un réseau privé permet d’assurer un accès simple et économique aux intranets ou aux extranets d’entreprise. Mais les échanges reposent…

Web services REST
1
8.7/10
Web Services REST
WEB SERVICES / 25 mai 2017

Les web services REST font partie de la grande famille des services basés sur une technologie permettant à des applications de dialoguer à distance via Internet. Ceci se fait indépendamment des plates-formes et des langages sur lesquelles elles reposent. Pour ce faire, les services Web s’appuient sur un ensemble de protocoles Internet très répandus (XML, HTTP), afin de communiquer. Cette communication est basée sur le principe de demandes et réponses, effectuées avec des messages XML. Ce sont les documents WSDL (Web Service Description Language) qui décrivent les services web. Ceux-ci précisent les méthodes que le système peut invoquer, leurs signatures et les points d’accès du service (URL, port). Les services Web sont accessibles via SOAP, la requête et les réponses sont des messages XML transportés sur HTTP. Il existe probablement autant de définitions des Web Services que d’entreprises qui les créent. Mais presque toutes ces définitions ont un certain nombre de points communs. Premièrement, les services web proposent aux utilisateurs du Web des fonctionnalités pratiques grâce à un protocole Web standard (dans la plupart des cas, le protocole utilisé est SOAP). Deuxièmement, les Web Services offrent un moyen de décrire leurs interfaces suffisamment en détail pour permettre à un utilisateur…

Architectures n-tiers
1
7.7/10
Architectures N-tiers
ARCHITECTURE LOGICIELLE / 25 mai 2017

Les architectures n-tiers doivent permettre de pallier les limites des architectures trois tiers et de concevoir des applications puissantes et simples à maintenir. Ce type d’architecture permet de distribuer plus librement la logique applicative, ce qui facilite la répartition de la charge entre tous les niveaux. Cette évolution des architectures trois tiers met en œuvre une approche objet pour offrir une plus grande souplesse d’implémentation et faciliter la réutilisation des développements. Théoriquement, ce type d’architecture supprime tous les inconvénients des architectures précédentes. Elle permet l’utilisation d’interfaces utilisateurs riches et sépare nettement tous les niveaux de l’application. Elle offre de grandes capacités d’extension et facilite la gestion des sessions. L’appellation “n-tiers” peut laisser penser que cette architecture met en œuvre un nombre indéterminé de niveaux de services. Mais ces niveaux restent à un nombre maximum de trois (les trois niveaux d’une application informatique). En fait, l’architecture n-tiers qualifie la distribution d’applications entre de multiples services et non la multiplication des niveaux de service. Ainsi, l’architecture prend toujours en compte les trois niveaux d’abstraction d’une application. Rôle de la POO dans les architectures n-tiers Cette distribution est facilitée par l’utilisation de composants métier, spécialisés et indépendants, introduits par les concepts orientés objets…

Google App Engine
1
6.5/10
Google App Engine
GÉNIE LOGICIEL / 24 mai 2017

Une “Platform as a Service”, ou PaaS, est une catégorie de services de Cloud computing qui fournit la plateforme et l’environnement informatique nécessaire aux développeurs pour mettre en place leurs différents services et applications sur Internet. Google App Engine est la solution de PaaS (Platform as a Service) fournie par Google. Le but principal d’App Engine est d’offrir la mise à l’échelle automatique des applications. Ceci peut se faire en allouant les ressources en fonction de la fluctuation du trafic. App Engine fournit un environnement de développement Java basé sur la technologie standard Servlet. Google App engin fournit également une solution de persistance non relationnelle adaptée aux applications “dans le cloud”. Les nombreux services App Engine (Mail, Memcache, Tasks, Users…) offrent ainsi un écosystème riche. C’est cet écosystème qui facilite l’hébergement et le développement d’applications en bénéficiant de l’infrastructure de Google. Google App Engine constitue une alternative rationnelle à des besoins de plus en plus courants : haute disponibilité, réplication, pics de fréquentation saisonniers. Google App Engine est gratuit jusqu’à un certain niveau de ressources consommées. Actualités récentes de Google App Engine En mars 2017, Google a annoncé qu’une nouvelle version révisée d’App Engine était disponible. L’annonce a eu lieu…