Linux Pratique Hors-série N°
Numéro
42

Découvrir la programmation

Temporalité
Juin/Juillet 2018
Image v3
Dossier : Découvrir la programmation
Article mis en avant

Dans ce numéro...


Vous tenez entre vos mains le premier numéro qui inaugure la nouvelle formule de nos hors-séries ! Vous l’avez sans doute remarqué, le magazine a changé de forme, 5 ans après la sortie de notre premier mook (livre-magazine) en août 2013. Il était temps désormais d’apporter un brin de modernité à tout cela, sans pour autant faire l’impasse sur le fond, bien au contraire ! Cette nouvelle formule vise à mettre en valeur un contenu encore plus riche et varié.
GitHub fête ses 10 ans ! / Les formations au numérique ont le vent en poupe
Le « hackathon » est un mot-valise composé de hack et de marathon. Il désigne initialement un évènement – interne à une organisation ou une société ou ouvert au public – durant lequel des développeurs sont amenés à se réunir pendant plusieurs jours pour travailler sur un projet.
Rencontres Mondiales du Logiciel Libre / EclipseCon France / Initiation à la programmation et à la robotique / Initiation à la programmation et à la robotique / Educode.be
Ce hors-série étant consacré à la programmation, voici une petite sélection d’ouvrages – non exhaustive – qui vous permettront d’aller encore plus loin sur le sujet et/ou de vous familiariser avec d’autres aspects de ce domaine.
Les premiers langages de programmation firent leur apparition à la même période que les premiers ordinateurs dans les années 1950. Ils se sont évidemment largement multipliés depuis. Wikipédia liste à ce jour plus de 700 langages de programmation différents [1]. La présentation de chacun d’entre eux couvrirait plusieurs hors-séries. Nous avons donc réalisé ici une petite sélection parmi ceux généralement présentés comme les plus populaires.
Comme il n'existe pas un langage, il n'existe pas un type de programmation qui s'applique à tous les langages. Dans cet article, nous allons effectuer un tour rapide des principaux types de programmation, ce qui vous permettra de comprendre les caractéristiques d'un langage que vous souhaitez utiliser.
Pourquoi et comment se mettre à la programmation ? Rencontre avec 4 développeurs qui nous partagent leur parcours, mais aussi leurs préférences en matière de langage de programmation...
Avant de saisir et exécuter notre premier programme, commençons par présenter, installer et prendre en main l’environnement de programmation de Processing. Cette étape est indispensable pour partir sur de bonnes bases et affronter la prochaine séquence.
Je vous propose ici de découvrir les principaux éléments de syntaxe de Processing. En effet, programmer implique de respecter, tout comme en français, un certain nombre de règles assez strictes. Autant régler cela dès le départ. Ensuite, nous ferons un premier tour d’horizon des modes graphiques 2D et 3D. Cela sera, je pense, une approche intéressante pour vous familiariser avec ce langage. Pour l’instant, pas de variables ou de structures de programmation complexes, mais vous ne perdez rien pour attendre...
L’objectif de tout programme informatique, y compris de jeu, est de traiter des données. Pour être utilisables par le microprocesseur, celles-ci doivent être stockées dans la mémoire vive (RAM). C’est le rôle des variables que de réserver des emplacements en mémoire, comme des tiroirs dans une vaste armoire, dans lesquels nous pourrons placer des nombres, du texte et plein d’autres choses. Le sujet de cet article est donc de savoir quand utiliser des variables, comment les déclarer et les manipuler.
À la fin de ce dossier, il faut envisager que notre jeu fera plus de 300 lignes de code, ce qui est déjà relativement conséquent pour un premier essai. Dans la suite des bases que nous sommes en train de poser, vous devez d’ores et déjà avoir à l’esprit, avant même d’aborder la suite, que votre code doit être bien organisé afin de vous y retrouver, de faciliter la mise au point et de le faire évoluer. Nous allons consacrer cet article à voir comment découper de façon logique et cohérente un programme en sous-programmes (à rapprocher du concept de fonction déjà évoqué).
Bon allez, maintenant ça ne rigole plus ! On se retrousse les manches, car nous allons mettre en place les principaux objets 3D de notre jeu : le décor, la raquette, la balle et la brique. Oui, j’ai bien dit « la » brique ;-) Vous allez comprendre pourquoi : nous découvrirons dans le prochain article comment faire des actions répétitives ainsi que des conditions, ce qui nous permettra de programmer la construction du mur.
Impossible d’apprendre à programmer sans aborder les deux structures de contrôle que sont les boucles et les conditions. Pour avancer dans la réalisation de notre jeu, nous allons être confrontés à des cas concrets qui vont vous aider à comprendre leur utilité et les différentes façons de les utiliser.
Nous allons consacrer cet article à finaliser le jeu sur les aspects esthétiques et sonores : mettre des couleurs sur les briques en utilisant une petite astuce de programmation, afficher du texte avec une police de caractères sympa et dynamiser le jeu en ajoutant de la musique et des bruitages.
Depuis le tout début, j’essaie de vous inciter à programmer « proprement », à respecter certaines normes (commentaires, indentation, découpage en fonctions, noms explicites, etc.). Mais sachez que de nos jours, la programmation juste « procédurale » ne répond plus aux critères de qualité recherchés. Il faut passer à la programmation orientée objet. Mais rassurez-vous ! Vous n’allez pas repartir de zéro et tout ce que vous avez acquis va vous servir ! Vous allez juste organiser votre code différemment pour créer des objets.
L’apprentissage du code s’est introduit récemment dans les établissements scolaires. Ce mouvement, encore assez timide dans l’Hexagone a pourtant déjà été bien amorcé dans les pays voisins où les initiatives se sont développées depuis de nombreuses années. La sensibilisation à l’informatique au sens large à l’école pose de nombreuses questions : quid de la formation des enseignants ? Sur quels outils baser cet enseignement ? Comment intéresser les enfants ? Réalisons un petit tour d’horizon des moyens mis actuellement à disposition.
David enseigne entre autres la programmation à l’École d’ingénieur en Chimie et Sciences du Numérique de Lyon. Il a bien voulu nous parler de son parcours, sa passion pour ce domaine et pour l’enseignement. Il partage également avec nous sa vision de la programmation.
Lorsque l’on apprend à programmer, une question se pose rapidement dès lors que l’on s’y met à plusieurs. Mais comment diable réussir à écrire du code ensemble, sans se marcher sur les pieds et surtout en se structurant un minimum afin d’avoir un suivi des différentes versions de ce dernier ?
Comment financer un projet ? Vous avez créé un projet génial, mais manquez de fonds pour pouvoir pleinement le développer. Voici quelques pistes qui devraient vous permettre de trouver des solutions.
Pour tout créateur – qu’il soit développeur ou artiste – tôt ou tard se posera la question du choix de la licence utilisée pour diffuser son projet. Ce n’est évidemment pas un aspect à prendre à la légère, puisqu’il aura un impact direct sur la vie de l’« œuvre ». Nous vous proposons ici un panorama de quelques-unes des solutions qui s’offrent à vous en la matière avec un focus tout particulier sur les licences libres à votre disposition.

Magazines précédents

Créez votre réseau local
Linux-Pratique Hors-série N°40
Créez votre réseau local
Mémo ligne de commandes
Linux-Pratique Hors-série N°39
Mémo ligne de commandes
Je personnalise mon site WordPress
Linux-Pratique Hors-série N°36
Je personnalise mon site WordPress

Les derniers articles Premiums

Les derniers articles Premium

La place de l’Intelligence Artificielle dans les entreprises

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

L’intelligence artificielle est en train de redéfinir le paysage professionnel. De l’automatisation des tâches répétitives à la cybersécurité, en passant par l’analyse des données, l’IA s’immisce dans tous les aspects de l’entreprise moderne. Toutefois, cette révolution technologique soulève des questions éthiques et sociétales, notamment sur l’avenir des emplois. Cet article se penche sur l’évolution de l’IA, ses applications variées, et les enjeux qu’elle engendre dans le monde du travail.

Petit guide d’outils open source pour le télétravail

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Ah le Covid ! Si en cette période de nombreux cas resurgissent, ce n’est rien comparé aux vagues que nous avons connues en 2020 et 2021. Ce fléau a contraint une large partie de la population à faire ce que tout le monde connaît sous le nom de télétravail. Nous avons dû changer nos habitudes et avons dû apprendre à utiliser de nombreux outils collaboratifs, de visioconférence, etc., dont tout le monde n’était pas habitué. Dans cet article, nous passons en revue quelques outils open source utiles pour le travail à la maison. En effet, pour les adeptes du costume en haut et du pyjama en bas, la communauté open source s’est démenée pour proposer des alternatives aux outils propriétaires et payants.

Sécurisez vos applications web : comment Symfony vous protège des menaces courantes

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Les frameworks tels que Symfony ont bouleversé le développement web en apportant une structure solide et des outils performants. Malgré ces qualités, nous pouvons découvrir d’innombrables vulnérabilités. Cet article met le doigt sur les failles de sécurité les plus fréquentes qui affectent même les environnements les plus robustes. De l’injection de requêtes à distance à l’exécution de scripts malveillants, découvrez comment ces failles peuvent mettre en péril vos applications et, surtout, comment vous en prémunir.

Bash des temps modernes

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Les scripts Shell, et Bash spécifiquement, demeurent un standard, de facto, de notre industrie. Ils forment un composant primordial de toute distribution Linux, mais c’est aussi un outil de prédilection pour implémenter de nombreuses tâches d’automatisation, en particulier dans le « Cloud », par eux-mêmes ou conjointement à des solutions telles que Ansible. Pour toutes ces raisons et bien d’autres encore, savoir les concevoir de manière robuste et idempotente est crucial.

Body