Programmation
Le webmapping et l’administration système m’ont amené à me former et apprendre à programmer. Ci dessous, les langages que j’utilise le plus fréquemment et leur contexte d’utilisation :
Côté Serveur :
- PHP : Le langage de script que j’utilise côté serveur. Il me permet d’interroger la base de données avec des requêtes SQL. Je l’utilise également pour manipuler GeoServer via son API REST grâce à l’extension PHP CURL permettant d’exécuter des requêtes CURL. Il me sert aussi à créer des mapfiles (les fichiers de configuration des cartes MapServer) et à manipuler toutes sortes de fichiers texte.
- Symfony : Symfony est un framework PHP fournissant des modules et composants prêts à l’emploi. Il permet de gagner un précieux temps lors du développement d’une appli ou d’un site web et d’organiser et de structurer son code en MVC.
- NodeJs : Plateforme permettant d’exécuter du JavaScript côté serveur. Je l’utilise sur certains projets pour réaliser certaines opérations côté serveur. Notamment pour exécuter des requêtes SQL, essentiellement par la mise en place d’API, grâce au framework Express et à l’ORM Sequelize.
- Python : est un langage de script qui peut être utilisé pour toutes sortes de tâches simples, mais répétitives. Je l’utilise pour manipuler GeoServer via son API REST en dehors d’un contexte WEB. Il me sert aussi à convertir et formater des données SIG en lots via des scripts souvent couplés à des utilitaires comme ogr2ogr ou shp2pgsql.
- Curl : Curl n’est pas un langage de programmation, mais un exécutable qu’on peut utiliser en ligne de commande pour envoyer des requêtes à un serveur. Je l’utilise surtout à travers des scripts PHP, Python, DOS ou Bash pour manipuler GeoServer via son API REST, sans passer par l’interface.
Côté Client (Javascript) :
Le Javascript me permet de dynamiser les pages HTML. Je l’utilise très fréquemment à travers des bibliothèques ou frameworks.
- JQuery : je l’utilise très fréquemment pour dynamiser des pages HTML. Le plugin AJAX me permet notamment de passer les requêtes SQL sur la base de données par le biais le plus souvent de scripts PHP. Les sélecteurs CSS sont très pratiques pour modifier le contenu ou la forme d’un élément du DOM de la page sans avoir à la recharger totalement.
- DataTables : j’utilise ce plugin de JQuery pour mettre en page et dynamiser des tableaux souvent volumineux.
- ChartJs : bibliothèque Javascript qui permet de réaliser des graphiques divers et variés (diagramme, histogramme, camembert…). Elle permet de réaliser assez facilement des rendus statistiques dynamiques de qualité.
- VueJs : ce framework Javascript est très pratique pour réaliser des applications web assez poussées, avec beaucoup d’interactions. Son système de composant et de store permettent de faire gagner un temps précieux au développeur. Il a également l’avantage de structurer le code, ce qui en permet une meilleure maintenance.
- OpenLayers : La bibliothèque Javascript qui me permet de faire des applications webmapping évoluées, avec des fonctionnalités très spécifiques et contextualisées. C’est à travers cette bibliothèque que j’ai découvert et appris le langage Javascript.
- Leaflet : L’autre bibliothèque Javascript. Je l’utilise nettement moins, mais elle m’a permis de mettre en place des mini applications webmapping assez simples.
Le webmapping et l’administration système m’ont amené à me former et apprendre à programmer. Ci dessous, les langages que j’utilise le plus fréquemment et leur…