banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Fri 19 September 2014 09:49

grunt
Participant actif
Date d'inscription: 9 Nov 2010
Messages: 90

Formations de programmation Java SIG : à quelles API forme t-on ?

Bonjour,

Je suis un informaticien Java expérimenté dans la programmation "classique" de gestion.
Et le monde des systèmes d'informations géographiques m’intéresse beaucoup.

Mais comment mettre le pied à l'étrier ?
Il existe de nombreuses API Java différentes pour lire, créer des cartes, faire différentes analyses. Alors est-ce que seulement une formation est possible ?
Mais peut-être ont-elles maintenant un tronc commun, et répondent à des interfaces établi par un consortium ?

Existe t-il une formation pour appréhender certaines d'entre-elles, apprendre à s'en servir ?

Merci !

Hors ligne

 

#2 Fri 19 September 2014 10:34

Pascal Boulerie
Participant assidu
Lieu: France
Date d'inscription: 12 Sep 2005
Messages: 2947
Site web

Re: Formations de programmation Java SIG : à quelles API forme t-on ?

Dans la liste http://georezo.net/wiki/formation/diplomevise
je vois des formations longues diplômantes, parfois ouvertes à l'apprentissage pour ceux ayant déjà un pied dans le monde du travail :
- ingénieurs 2000
- Master M2 IASIG de l'AUF (ouvert aux titulaires d'un niveau universitaire Master M1 en informatique, y compris informatique de gestion de bases de données)
- un Master M2 de Université de la Rochelle.

Il y a aussi une filière GTSI des ingénieurs de 3e année de l'ENSG, qui n'est pas encore listée en raison de son caractère tout récent.



Il y a aussi des formations courtes (formations continues), de quelques jours.

Dernière modification par Pascal Boulerie (Fri 19 September 2014 10:36)


« L'État est désormais quasi déliquescent. » (José Cohen-Aknine, ingénieur X-Ponts, IGPEF, dans Déliquescence et renaissance de l'État.)

En ligne

 

#3 Fri 19 September 2014 10:53

grunt
Participant actif
Date d'inscription: 9 Nov 2010
Messages: 90

Re: Formations de programmation Java SIG : à quelles API forme t-on ?

J'ai parcouru la liste : il y a des formations générales aux logiciels SIG, mais quelles sont les formations apprenant à programmer en Java en utilisant les API d'un SIG avec les  API GIS qui prédominent aujourd'hui ? (GeoTools ? GeoAPI ?, autre ?).
Toute la difficulté consiste à découvrir les objets et méthodes qu'elles proposent. Comment les mettre en œuvre de bonne manière. Elles sont souvent peu ou mal documentées, et à mon sens, il faut vraiment qu'un programmeur SIG passe les billes à un autre (dans le cadre d'une formation, justement) pour pouvoir s'en sortir. Seul, devant des javadocs inexistantes et deux sources d'exemples, on est très vite bloqué : On ne voit pas l'esprit, la philosophie de ce qui est proposé, ni les bonnes pratiques qui vont avec.

Dernière modification par grunt (Fri 19 September 2014 10:54)

Hors ligne

 

#4 Fri 19 September 2014 11:41

Pascal Boulerie
Participant assidu
Lieu: France
Date d'inscription: 12 Sep 2005
Messages: 2947
Site web

Re: Formations de programmation Java SIG : à quelles API forme t-on ?

Je pense qu'un ingénieur ou Master ayant suivi une année entière de formation générale de niveau Master M2 en informatique SIG devrait savoir s'en sortir.

Sinon, je pensais à la formation continue : "Formation API Géoportail"
http://www.ensg.eu/IMG/pdf/catalogue-fo … 015.pdf#33
(page 33 de ce catalogue 2015)

IDGEO http://www.idgeo.fr - trouvé via : http://georezo.net/wiki/tag/reg73?do=sh … ;tag=REG73 - a peut-être aussi ce genre de formation courte ?


« L'État est désormais quasi déliquescent. » (José Cohen-Aknine, ingénieur X-Ponts, IGPEF, dans Déliquescence et renaissance de l'État.)

En ligne

 

#5 Sun 21 September 2014 12:06

grunt
Participant actif
Date d'inscription: 9 Nov 2010
Messages: 90

Re: Formations de programmation Java SIG : à quelles API forme t-on ?

La première formation que tu proposes vise à programmer un afficheur de cartes, ce n'est pas exactement cela que je recherche.
Ce que je demande n'est pas du tout évident, je le sais bien. Je vais essayer d'illustrer ainsi :

Quand on suit une formation sur un outil SIG (GeoConcept, ArcGis, MapInfo, QGIS...) on apprend à créer des cartes, faire des agrégats, de la rasterisation / vectorisation, du géoréferencement, de l'analyse, et beaucoup d'autres choses que j'oublie. J'ai suivi un cours, et il faut bien plusieurs dizaines d'heures avec de bons conseils parce que bien sûr, on pourrait prendre un guide sur Internet et profiter des forums de discussions, mais ce serait nettement plus fastidieux.

Quand on suit une formation Java, on suit également un enseignement qui apprend à se servir des bases du langage, des bases de données, à bâtir un site web, des services SOAP, REST, EJB ou Spring, et j'en passe, et là aussi il faut une formation importante pour parvenir à être assez à l'aise. Certes, les purs auto-dictactes qui n'ont utilisé que les livres et se sont formés sur le tas existent, mais ils y ont consacré une énergie démesurée.

Mettre Java et le monde des SIG en rapport, c'est réclamer que des programmes analysent des cartes, en produisent de différentes natures, extraient, créent, simulent, selon des règles élaborées. Nous avons besoin de programmer lorsque les opérations manuelles ou semi-automatisées que l'on peut faire avec son logiciel SIG ne suffisent plus et que l'on désire un traitement capable d'étudier des situations et d'agir en conséquence de manière complexe, variable ou répétitive, dans des conditions particulières et même parfois dégradées (où une source de données sera incomplète, par exemple, et qu'il faudra pallier avec une autre, ou faire face à d'autres aléas), et un déclenchement dans des situations précises.

Et parvenir à faire cela réclame une expertise à part entière, distincte de celle de maîtriser seulement un SIG ou de maîtriser seulement Java, et elle réclame d'y consacrer un grand nombre d'heures, à la suite d'un enseignement dédié que je recherche.

Dernière modification par grunt (Sun 21 September 2014 17:43)

Hors ligne

 

#6 Mon 22 September 2014 08:25

Laurent Jégou
Participant assidu
Lieu: Toulouse
Date d'inscription: 5 Sep 2005
Messages: 447
Site web

Re: Formations de programmation Java SIG : à quelles API forme t-on ?

Bonjour, à ma connaissance ce type de formation n'existe pas, les deux domaines sont trop pointus pour se rapprocher dans une formation de ce type.
Je pense qu'il faut tout d'abord bien connaitre les spécificités de la géomatique (types de données et de traitements, besoins des utilisateurs, représentation des données) puis y aller progressivement.

Pour commencer bas niveau je vous conseille de regarder du côté de GeoTools http://www.geotools.org/ et de la Java Topology Suite http://sourceforge.net/projects/jts-topo-suite/, bibliothèques qui ont inspiré beaucoup de développements (dans d'autres langages notamment). Ensuite, regarder les applications qu'elle ont permis de construire, comme GeoServer, GeoNetwork, uDig, OpenJump...


Enseignant-Chercheur en Géomatique
UT2J - Dept Géo / CNRS UMR LISST-Cieu / Master Sigma - Revue Mappemonde

Hors ligne

 

#7 Mon 22 September 2014 11:34

grunt
Participant actif
Date d'inscription: 9 Nov 2010
Messages: 90

Re: Formations de programmation Java SIG : à quelles API forme t-on ?

Je suis proche de faire ce constat également !
Mais j'espérais que peut-être par le biais de ce forum, il y aurait quelques directions pour me détromper. Bien sûr, tout ce qui est dit ici est possible, mais lourd et source d'erreurs et de découragement. Car du coup, on en revient à la documentation que l'on peut trouver à droite et à gauche et à des séries d'expérimentations personnelles. L'esprit pionnier a du bon, mais il est aussi source d'impasses : ce que j'étudierai ne sera pas ce qu'un autre aura pris le temps d'observer, et en fin de compte, cela fait seulement quelques centaines de personnes en France dotées de la capacité de programmer des logiciels autour des SIG en Java, mais dont on ne peut être sûr qu'elles auront un tronc de connaissances commun.

Cela dit, la situation n'est pas inexplicable. Jusqu'à il y a peu, rien n'était normalisé en terme d'API géographiques. Et chaque éditeur d'un logiciel veillait à avoir sa propre API, fût-elle incompatible avec les autres. L'interopérabilité étant le dernier souci, l'enseignant qui aurait consacré ses efforts à enseigner la programmation avec GeoTools se serait retrouvé à les refaire entièrement pour ArcGis (avec d'autres joies et d'autres déboires) et n'aurait pas trouvé rentable d'y consacrer autant de temps.

Dernière modification par grunt (Mon 22 September 2014 11:38)

Hors ligne

 

#8 Mon 22 September 2014 15:29

ChristopheV
Membre
Lieu: Ajaccio
Date d'inscription: 7 Sep 2005
Messages: 3197
Site web

Re: Formations de programmation Java SIG : à quelles API forme t-on ?

Bonjour,

Je ne programme pas du tout en JAVA, je n'ai donc qu'une connaissance théorique de ce langage. Ce qui m'a conduit à ne pas utiliser ce langage est la problématique inhérente à l'impression de cartes à l'échelle (ou plus exactement de plans). JAVA (d'après ce que j'ai lu) ne garantissant que le ratio 72 dpi = 1 inch au contraire des API Windows permettant de garantir (en mode HighMetric) qu'une unité logique = 0.01 mm quelque soit le périphérique.
De cela découle une remarque, par rapport à l'informatique de gestion la partie visualisation est plus qu'importante en matière de SIG (une évidence certes mais à souligner car c'est un pan entier de la programmation).
En suite il s'agit de savoir si l'on veut développer un SIG à part entière ou si l'on souhaite développer des plug-in ou add-on pour des logiciels existants. Logiciels : client lourds ou légers (appli WEB) ?

ArcGis par exemple c'est .Net ...

Il faut de plus considérer des questions de perfs, la problématique du Garbage Collector est à considérer.

Mettre Java et le monde des SIG en rapport, c'est réclamer que des programmes analysent des cartes, en produisent de différentes natures, extraient, créent, simulent, selon des règles élaborées.


Je pense que tout cela est du ressort de l'utilisateur, non du logiciel, le logiciel offre des possibilités, une sorte de boîte à outils, l'utilisateur s'en sert, pour fabriquer des cartes, les analyser ....

JAVA étant par essence un langage objet, je pense qu'il est bon de ce mettre du coté "client" et d'analyser les différents cas d'utilisation, ce pour commencer à avoir une vision des outils nécessaires à un SIG. Une façon gratuite et libre de le faire est par exemple d'utiliser QGis avec une BD postgresql/postgis, GeoRezo pour avoir des sources de données et ce fixer un but simple (afficher les départements français par exemple), le compliquer un peu ensuite : ajouter une couche image géoréférencée en dessous, l'imprimer à l'échelle. Rien qu'avec cela il y a la majorité des contraintes et difficultés techniques en matière de programmation (en pas qu'en JAVA).

Nota: je fais partie de ces gens qui ont consacré une énergie démesurée ....


Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close

Hors ligne

 

#9 Mon 22 September 2014 15:30

Pascal Boulerie
Participant assidu
Lieu: France
Date d'inscription: 12 Sep 2005
Messages: 2947
Site web

Re: Formations de programmation Java SIG : à quelles API forme t-on ?

Il me semble que c'est pour ça qu'il y a des cursus longs de type ingénieur en géomatique, ou technicien supérieur (2 ans, dans ce dernier cas, dans lequel certains diplômés peuvent évoluer vers un poste de programmeur Java).

Même l'école 42 a un cursus long, en 3 ans :
https://fr.wikipedia.org/wiki/42_%28%C3 … #Programme
avec une prolongation optionnelle vers une 4e et une 5e année.


« L'État est désormais quasi déliquescent. » (José Cohen-Aknine, ingénieur X-Ponts, IGPEF, dans Déliquescence et renaissance de l'État.)

En ligne

 

#10 Mon 22 September 2014 15:35

Pascal Boulerie
Participant assidu
Lieu: France
Date d'inscription: 12 Sep 2005
Messages: 2947
Site web

Re: Formations de programmation Java SIG : à quelles API forme t-on ?

Côté des formations longues, je signale qu'il existe aussi un Mastère Spécialisé Architecture des Systèmes d’Information Géographique (ASIG).
10 000 euros l'année d'études.

http://georezo.net/wiki/formation/master_asig
http://www.ensg.eu/Mastere-Architecture … hique-ASIG


« L'État est désormais quasi déliquescent. » (José Cohen-Aknine, ingénieur X-Ponts, IGPEF, dans Déliquescence et renaissance de l'État.)

En ligne

 

#11 Tue 23 September 2014 08:42

grunt
Participant actif
Date d'inscription: 9 Nov 2010
Messages: 90

Re: Formations de programmation Java SIG : à quelles API forme t-on ?

@ChristopheV :
Java n'a jamais été très facile pour l'impression. Ça a peut-être changé depuis mes anciennes expérimentations, mais je m'en souviens peu commode.

"ArcGis par exemple c'est .Net ..."
Néanmoins un SDK Java et son API sont proposés : https://developers.arcgis.com/java/api-reference/

@Pascal Boulerie :
La partie Java ne me pose pas de problèmes (je suis déjà Ingénieur Informaticien Java). C'est la partie accaparation d'une nouvelle API qui est à prendre de manière différente selon les logiciels proposés qui est source de difficulté. geotools et geotoolkit vont l'un et l'autre proposer deux jeux d'API différentes de celles d'ArcGis, par exemple. De sorte que si j'aboutis suivant le cheminement proposé par ChristopheV, ce que j'aurais appliqué pour une de ces API devra ensuite être reproduit sur une autre en trouvant pour chaque fonctionnalité unitaire que j'aurai su mettre en œuvre son équivalent. L'absence de standardisation poussée entre les API verrouille le développeur. Pour transiter de l'une à l'autre, il doit réaliser une migration. Et bien sûr, c'est dissuasif.

10 000 euros. Oui... dès qu'il y a le mot "spécialisé" derrière Mastère, ça entonne vite le chant du tiroir-caisse. Néanmoins, la formation est attrayante !

Hors ligne

 

#12 Tue 23 September 2014 09:28

ChristopheV
Membre
Lieu: Ajaccio
Date d'inscription: 7 Sep 2005
Messages: 3197
Site web

Re: Formations de programmation Java SIG : à quelles API forme t-on ?

Bonjour,

J'ajoute une petite précision, en matière de SIG on utilise beaucoup les rasters et les images. Ceux ci sont en général de grande taille, ou dans des formats spécifiques (ECW, JPG2000). La gestion d'une image de grande taille (mémoire, pas disque bien entendu) n'est pas forcément possible dans un contexte managé. Pour ma part, en développant en .Net, il y a eu obligation de faire appel à du code non managé pour gérer ces images.

L'absence de standardisation poussée entre les API verrouille le développeur.


Exact.


Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close

Hors ligne

 

#13 Wed 24 September 2014 09:07

ChristopheV
Membre
Lieu: Ajaccio
Date d'inscription: 7 Sep 2005
Messages: 3197
Site web

Re: Formations de programmation Java SIG : à quelles API forme t-on ?

Bonjour,

Peut-être regarder du coté de FDO.


Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close

Hors ligne

 

#14 Wed 24 September 2014 10:19

Pascal Boulerie
Participant assidu
Lieu: France
Date d'inscription: 12 Sep 2005
Messages: 2947
Site web

Re: Formations de programmation Java SIG : à quelles API forme t-on ?

ChristopheV a écrit:

FDO.


Qu'est-ce que "FDO" ?


« L'État est désormais quasi déliquescent. » (José Cohen-Aknine, ingénieur X-Ponts, IGPEF, dans Déliquescence et renaissance de l'État.)

En ligne

 

#15 Wed 24 September 2014 10:44

ChristopheV
Membre
Lieu: Ajaccio
Date d'inscription: 7 Sep 2005
Messages: 3197
Site web

Re: Formations de programmation Java SIG : à quelles API forme t-on ?

Bonjour

Feature Data Object

http://fdo.osgeo.org/


Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close

Hors ligne

 

#16 Wed 24 September 2014 11:56

grunt
Participant actif
Date d'inscription: 9 Nov 2010
Messages: 90

Re: Formations de programmation Java SIG : à quelles API forme t-on ?

Grmlll.... En plus, il faut voir la qualité des API qu'on nous propose...
GeoTools :
DataStore dataStore = DataStoreFinder.getDataStore(shape-file des hauts de seine Open data)
datastore.getFeature("92-Hauts-de-Seine")

donne ceci, si Geotools est seul :
java.lang.AbstractMethodError: org.geotools.metadata.iso.citation.ContactImpl.getOnlineResource()Lorg/opengis/metadata/citation/OnlineResource;
(et encore, j'ai mis neuf dépendances de constructions supplémentaires, en plus des deux seules qui auraient du suffire...)

Mais si par malheur on a mis en plus en dépendance de son projet, dans un autre but et s'en même s'en servir, l'API Geotoolkit,
c'est un ClassCastException que l'on obtient : Geotools se met à essayer d'instancier des classes de Geotoolkit.

Un véritable gag...

Dernière modification par grunt (Wed 24 September 2014 12:09)

Hors ligne

 

Pied de page des forums

Powered by FluxBB