Los principales lenguajes de programación en los SIG

lenguajes de programación

De vez en cuando oímos hablar de la importancia de la programación para los profesionales de los Sistemas de Información Geográfica (SIG), que se está convirtiendo rápidamente en una clave en la evolución de la carrera profesional. Se afirma que incluso los que tienen un conocimiento limitado de la programación pueden ver los beneficios.

Este artículo se dirige a un público más amplio de profesionales de los SIG que no sólo están ya familiarizados con la programación, sino que son para aquellos interesados en iniciarse o ampliar sus conocimientos.

Índice
  1. ¿Por qué son útiles?
  2. Python
  3. JavaScript
  4. SQL
  5. Otros lenguajes mas complejos
  6. Java
  7. C#
  8. C/C++

¿Por qué son útiles?

La programación se utiliza con muchos objetivos, ya sea la automatización de tareas de geoprocesamiento o la implementación de un algoritmo para todo tipo de tareas, la programación tiene un gran alcance en la resolución de problemas. Nos ayuda a abordar aquellas tareas que requieren un grado diferente de operaciones, en las que los problemas a los que nos enfrentamos necesitan alguna manipulación específica que no se proporciona.

Esta es una de las razones por las que muchos programas de SIG permiten acceder a la API para personalizar la aplicación según sus necesidades específicas.

programacion sig

¿Cómo va a ser esto? Empezaremos por explorar cuáles son los lenguajes de programación más utilizados en el sector. A continuación, analizaremos cada uno de ellos por separado para ver dónde es más útil y por qué. Por último, veremos cuáles son los ejemplos más notables de su uso.

Python

Siempre que pienso en la programación de SIG, me viene a la mente Python.

Mi experiencia me dice que los usuarios de QGIS, y sobre todo de ArcGIS, han oído hablar de los módulos para hacer scripts en Python. Dicho esto, Python se ha convertido en uno de los lenguajes más importantes utilizados en este campo. ¿Por qué? Es fácil de aprender, gracias a que cuenta con una excelente documentación y una sintaxis fácil de recoger, además de la variedad de tutoriales disponibles en línea de forma gratuita. Además, cuenta con un gran apoyo para el análisis y procesamiento de datos a través de programas como Numpy o Pandas.

Python está incorporado en ArcGIS, QGIS, GRASS GIS, gvSIG, y muchos otros proyectos de código abierto, que hacen que valga la pena conocer el lenguaje. Al mismo tiempo, hay un buen número de bibliotecas Shapely, Fiona y Rasterio, Folium, y muchos otros que aparecieron en el último par de años.

JavaScript

Sin duda, JavaScript es uno de los lenguajes centrales de la web. Al estar presente en casi todos los navegadores, sitios o aplicaciones web, lo convierte en una opción razonable para el desarrollo de aplicaciones de mapeo web. Piénsese que las aplicaciones más populares de los últimos años han aparecido gracias a las capacidades de este lenguaje.

Ejemplos: ArcGIS Web APIs, MapBox, CARTO, Google Maps API, OpenLayers, Leaflet, la lista puede continuar.

Lo que se está haciendo más evidente estos días es la tendencia de las aplicaciones a ofrecer más capacidades 3D basadas en la web. Y lo has adivinado, JavaScript viene al rescate. Basta con echar un vistazo a CesiumJS (¿Tienes un enlace para CesiumJS), el proyecto OSM Buildings, y MapBox GL soporta la visualización en 3D.

Es bastante seguro decir que si usted está considerando la cartografía web, webGIS o incluso 3D, entonces asegúrese de añadir JavaScript a su caja de herramientas. Los próximos años se presentan favorables para este lenguaje de programación.

SQL

¿Recuerdas aquellos cursos de iniciación al SIG en los que tenías que encontrar atributos o ubicaciones? Es posible que hayas tenido que introducir una consulta escrita en SQL. Es uno de los lenguajes con más historia en los SIG, que se está incorporando en muchas aplicaciones. Puedes echar un vistazo a la descripción general de la base de datos de OpenStreetMap en caso de que quieras saber más.

En resumen, SQL es esencial en los SIG, ya que te encontrarás trabajando con bases de datos geoespaciales y puede ayudarte a manipular las bases de datos.

Ejemplos destacados: ArcGIS, PostGIS, CARTO, QGIS, MapInfo y muchos otros programas de SIG.

Otros lenguajes mas complejos

Los lenguajes que hemos mencionado hasta ahora son probablemente los más prácticos desde el punto de vista del aprendizaje y la obtención de resultados rápidos. Los que siguen son los que podríamos llamar "de peso pesado", ya que suelen ser la columna vertebral de los programas de SIG más grandes.

Java

Seguramente, si alguna vez has oído hablar de Java, habrás oído hablar de su uso en empresas y en diversos sectores. Pero, ¿por qué aquí?

Java se utiliza cuando se desarrolla la columna vertebral de la aplicación, especialmente para aplicaciones de escritorio como alternativa a C/C++ o C#. Sin embargo, Java ha demostrado ser un lenguaje especialmente útil incluso para los servidores de mapas. Como puede que sepas o no, uno de los servidores de mapas web más populares, GeoServer, está escrito en Java.

Si bien, es más verboso y no es tan práctico como Python, es una programación de propósito general que puede ayudarte a recorrer un largo camino en el desarrollo de software. Tenga en cuenta que es uno de los lenguajes más populares utilizados hoy en día, con APIs fuertes y bien probadas, y una enorme base de código, por lo que no va a desaparecer pronto.

Ejemplos destacados: GeoServer, GeoTools, ArcGIS Runtime SDK, gvSIG, OpenJump, uDig, WhiteBox (GAT), Java Topology Suite, etc. Por último, pero no por ello menos importante, las aplicaciones de Android se construyen la mayoría de las veces con Java, por lo que tendrás que conocerlo si quieres ir en esa dirección.

C#

El bebé de Microsoft. Junto con .NET, representa un marco muy conocido para el desarrollo de software. Es posible que hayas oído hablar de él sin ser realmente un codificador, como ocurre con la mayoría de las cosas mencionadas en este artículo. Es popular entre las empresas de software propietario, especialmente para ESRI.

Ejemplos destacados: ArcGIS (ArcObjects), ArcGIS Runtime SDK .NET, NetTopologySuite, MapWindow.

C/C++

Uno de los lenguajes más conocidos entre los desarrolladores, y útil para las aplicaciones de escritorio. Ya sea para Windows o para Linux, C++ tiene una larga línea de aplicaciones exitosas que apoyó y aún lo hace. He incluido C junto a C++, ya que los ejemplos proporcionados no dependen necesariamente en su totalidad de uno u otro.

Si el software estaba incorporado en los años 90 o a principios del 2000, es más que probable que haya sido construido con C++.

Ejemplos destacados: ArcGIS, QGIS, SAGA GIS, GRASS GIS, MapServer, ILWIS, Mapnik, GDAL, Orfeo Toolbox, y la lista continúa. Incluso hoy en día sigue siendo un lenguaje popular entre los desarrolladores, pero no es el tipo de lenguaje que se utiliza a diario como usuario de SIG.

Entradas relacionadas de Geotermia

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Subir