Langages de programmation

Articles et liens liés à l'informatique, mon bouquin, mes travaux en tant qu'hobbyiste et d'autres ressources liés à la programmation.


Mon livre Java avec le Raspberry Pi 3 est décrit sur un site Wordpress séparé (janvier 2019)

Nous y trouverons des outils comme Eclipse, Putty, WinScp, Fritzing, Notepad++ et les langages de programmation Java et Python.

Modèles concernés:  Raspberry Pi 3 B, B+, A+ et Zero WH.

Le Sudoku est le jeu idéal pour un programmeur débutant dans un langage de programmation comme Java.

Ce n'est pas trop compliqué et on est vite content du résultat. En préparant cet article en 2017, j'ai cherché une référence du Sudoku sur Wikipedia, et découvert plein de choses sur les méthodes de résolution, méthodes que je ne connaissais pas, quand j'ai écrit, en 2005, un programme en Java pour déterminer les solutions intermédiaires et finales.

En 2005, j'avais choisi Netbeans comme outil de développement Java, car il m'a permis d'écrire rapidement une interface graphique permettant de lire des fichiers grilles, de les éditer et de jouer moi-même ou de demander au programme de m'aider dans la recherche suivant certains algorithmes.

Début 2017, il m'est venu à l'idée de reprendre ce programme pour non seulement le corriger pour le présenter ici, l'améliorer, nettoyer le code source pour qu'il soit présentable et importable dans Netbeans, mais principalement y implémenter un mode textuel d'apprentissage.


Je ne suis pas trop mauvais dans la résolution de grille, mais il m'arrive d'être bloqué. Je ne retrouve plus l'algorithme qui me permet de continuer. Je dois absolument m'améliorer. C'est donc le but que je me suis fixé: entrer la grille ou je suis bloqué et recevoir du programme une indication simple, textuel, sans donner de solution, pour pouvoir continuer.

Mon projet Netbeans de 2005 a été réimporté sans difficulté dans la dernière version de Netbeans. J'ai choisi la version Java EE, car il m'arrive de coder de l'HTML5 et du Javascript. Ma première surprise a été de constater que mes classes et méthodes Java n'étaient pas si mal écrites afin d'y intégrer ce mode particulier.

Le premier gros travail a été de récolter le maximum de partie en cours, dans des fichiers, afin de me préparer pour l'analyse des différentes solutions.
Je me suis aussi amusé à utiliser un API de Java pour l'OCR à partir de photos prises par mon Smartphone et en découpant l'image préalablement cadrée en la morcellant en 9*9 images, sans les bords de la grille, pour la reconnaissance des chiffres entre 1 et 9! Il faut juste monté au max l'intensité et le contraste. Le code de l'API Tess4J a pu être intégré à Netbeans en un clique de souris. 

A suivre ....

Mon nouveau livre, aussi chez Eyrolles, sur Java, Python, Eclipse et le Raspberry Pi 3 est terminé.

Il est en commande, par exemple sur Amazon: https://www.amazon.fr/Java-pour-Raspberry-Pi-P…/…/2212677464

 

 

La première édition de ce livre a été publiée en l'an 2000 et a subi plusieurs révisions jusqu'à la 4ème et dernière édition parue en 2008.

La référence indiquée dans le livre http://www.boichat.ch/javacpp/index.html nous permet d'y retrouver quelques commentaires ainsi que le lien chez Eyrolles.

Bien qu'il date un peu, les exemples restent tout de même généraux et d'actualité.

 

Une bonne idée serait d'intégrer les exemples et les exercices dans Eclipse ou Netbeans.

Voir mon article Eclipse ou Netbeans

Choisir Eclipse ou Netbeans pour programmer en Java peut être un choix difficile.

On trouvera sur http://www.developpez.com et http://www.developpez.net/forums/ de nombreuses discussions ou débats.

Un peu le même genre de discussion que Java ou C++ comme choix de langage de programmation.

Le problème se pose également lors du choix du langage et de l'outil lorsque qu'on développe sur une plateforme embarquée comme le Raspberry Pi 3

Pour un débutant en programmation Netbeans est vraisemblablement le choix correct. On pourra alors écrire très rapidement une application GUI avec nos exercices d'apprentissage. Par contre l’environnement avec Eclipse est généralement utilisé par les entreprises et développeurs d'applications ou produits complexes avec plusieurs programmeurs.

On trouvera sur le Web de nombreux exemples en Java ou C++ où le code est directement intégré dans un projet Netbeans ou Eclipse et on aura pas forcément le choix.