Le petit cours de programmation pour les nuls - Chapitre 1, pour les nuls-nuls.

Avant d'ouvrir les ordinateurs et vous faire cracher vos neurones sur du code, on va rapidement survoler le "pourquoi" de la chose. Programmer c'est compliqué à ce que l'on en dit. Sauf qu'un bon développeur est forcément un gros paresseux. En gros, programmer, c'est apprendre à se compliquer la vie un poil, pour pouvoir buller un max. D'entrée de jeu, paf ! un paradoxe. D'autant que c'est fastoche quand même si on ne cherche pas à intégrer un programme spatial.

Programmer c'est vachement utile, vous le faites d'ailleurs dès que vous ouvrez un œil le matin, sauf que vous appelez ça: faire du café, acheter à bouffer, zieuter facebook, ou lire la presse.

Pour ce faire, vous établissez des algorithmes. Un algorithme est juste une cheminement de pensée, la mise en application d'habitudes bien ancrées, de brefs protocoles de réflexions, la recherche du truc qui va faire qu'on ne sera plus emmerdé de faire ça à chaque fois. C'est un outil pour pas se salir les mains et gaspiller l'eau de la planète alors que tu as des gants posés sur l'étagère à côté de toi.
Comme c'est long à écrire tout ça, et que forcément c'est restrictif. Pour pas tout réécrire, on appelle ça "algorithme".
Astuce de paresseux.

Fonction café
Vous avez besoin de X tasses de café.
Chaque tasse contient Y cl de liquide.
X fois Y cl = quantité d'eau à mettre dans le récipient qui va chauffer l'eau.
Dégager le filtre sale d'hier.
Mettre un filtre propre.
une tasse de café = 1 dose de café moulu
la dose est de Z/10 de petite cuillère.
je dois mettre dans le filtre dose fois X de café.
Appuyer sur le bouton.
C'est un algorithme.

Fonction bouffer
Choix du menu [végan, viandosaure, apéro, sandwich à l'arrache]
Choix de confort [Vite prêt, j'ai une heure, je met le paquet]
Choix critique [Frigo plein, frigo ordinaire, frigo de fin de mois, rien de comestible]
Disponibilités végétales [tomates, oignons, poivrons, haricots blancs, haricots rouges, haricots péteurs XXL, patates à l'eau, patates au four, patates au beurre]
Disponibilités animales [Lait, fromage, filet de carotte, steack de beef, rôti de gnou, bébé mouton]

"""Commentaire ajouté dans le code et qui n'a aucune incidence sur son déroulé, juste pour dire qu'on peut, en ouvrant trois fois les guillemets, ajouter des commentaires au code qui n'auront aucune incidence sur le code, à condition de fermer trois fois les guillemets à la fin. Ça apparaît en gris, et ça permet de noter dans votre langue maternelle, même avec pleins de fautes (le logiciel s'en cogne), ce que vous voulez faire à ce moment précis dans votre algorithme. Evidemment, vous n'êtes pas obligé d'écrire des commentaires à rallonges comme moi. Faite simple et clair, entraînez vous à être paresseux"""

On peut mettre aussi des espaces entre les morceaux de code pour aérer un peu, sauf que là j'ai pas mis de guillemets et je risque fort de faire planter le code à cause de cet oubli.

Quel choix de menu vais-je réaliser aujourd'hui : entrer votre choix (1,2,3,4...)
Quel choix de confort : entrer votre choix 1,2 ou 3
Quel choix critique : entrer votre choix 1,2,3 ou 4

Supposons maintenant que le choix soit Menu:1, confort:3, critique:4
Ici ça donne : vegan, je met le paquet, rien de comestible

Le "rien de comestible" créera un "break" dans le code et vous affichera sur l'écran:
C'est mort, va faire les courses. et mettra fin à l'algorithme.

Bon vous allez me dire qu'écrire un code pour savoir quoi se faire à manger est complètement idiot.
Pour le plus grand nombre, je vous l'accorde.

je laisse en suspends cet algorithme là, c'était pour le principe.

Et je me met à réfléchir à un autre, je reste dans l'alimentaire.

Maintenant, si c'est vous qui faite à manger pour toute une tribu aux goûts hétéroclites et jamais synchronisés. Dans ce cas, la programmation peut vous sauver la santé mentale.

Vous pouvez coder par exemple un algorithme qui permet de jouer en votre faveur au moment de préparer les repas. C'est l'application qui va se faire engueuler, pas vous. Pratique.

Prenons par exemple le cas d'une famille de 5.

Le premier à rentrer ses données c'est votre conjoint(e). On imagine que le code du dessus fonctionne et propose divers petits menus à réaliser en fonction de ce que vous avez mis dans le frigo et dans votre petite base de données (vous prenez pas la tête sur "base de donnée", on verra ça quand tout le monde sera alcoolisé, sinon c'est pas marrant).
Vous pouvez lui accorder un accès prioritaire (ou au contraire rétrograder ses droits). Donc attribuer une forme de coefficient d'importance à ses choix. Moi je verrai bien ça comme une fonction cachée qui permet de paramétrer le logiciel de façon secrète histoire de garder le contrôle de la cuisine, (bravo ! vous avez deviné qui fait la cuisine chez moi). On verra comment coder ça plus tard.

En pratique: si le logiciel s'est souvenu que vous avez fait trois fois du vegan dans la semaine, la 4ème fois le mode "barbaque" se déclenche automatiquement et n'affiche plus les menus de bouffeurs de racines. (on dira que c'est un bug, en fait c'est de l'IA).
Le menu vegan ne sera plus proposé dans les choix de façon temporaire, le temps de pouvoir vous restaurer de chaires mortes.

Viens l’aîné, qui lui veut des "pâtes au beurre, avec du fromage rappé" pour pouvoir retourner au plus vite à sa console. Le logiciel prend note.
Viens le second, qui lui choisi "riz au beurre avec du fromage rappé". le logiciel va détecter qu'il va falloir que vous fassiez bouillir une deuxième casserole d'eau, c'est chiant et totalement irresponsable pour les ressources en eau. ça va déclencher un sous programme très efficace de manipulation mentale.
Le message suivant s'affiche : "Bravo Kevin (Kevin c'est connecté à l'appli avec son identifiant, c'est pour ça qu'elle le reconnaît), vous êtes le deuxième a réclamer des sucres lents, souhaitez vous confirmer votre choix et faire la vaisselle ou préférez vous revenir sur votre choix et laisser la vaisselle à un autre ?
Confirmer choix oui/non
Autres choix possible: pâtes.
Valider changement.
"Bravo Kevin, la planète te remercie, tes pâtes seront prête dans 15 mn, je n'appellerai qu'une fois pour passer à table, après vous vous démerdez pour faire réchauffer votre assiette. Et bravo au fait, Vous avez perdu à la loterie vaisselle"

C'est pas formidable ?

Viens le plus jeune:
On adapte le menu:
Menu du jour: pâtes au beurre.
On lui laisse l'impression d'un choix, c'est pédagogique.
Avec ou sans fromage rappé ?


Ça simplifie beaucoup la vie familiale.
Une loterie est organisée quand tout le monde a fait son choix pour savoir qui se colle la vaisselle, le logiciel tient compte que Kevin a changé son choix initial pour des pâtes, il est exclu de la loterie. Vous pouvez modifier les valeurs pour que votre tour de vaisselle surviennent aussi moins souvent.

C'est tout bénéfices de savoir coder, surtout quand vous êtes le seul.

Pour écrire du code il faut connaître les principes de base.

1- Principes de base

  1. Les constantes et les variables.

Les constantes désignent les données uniques et immuables, qui ne changerons jamais fidèles à elles mêmes. je ne m'en sers jamais, on peut tout déclarer en variables.

les variables désignent les données susceptibles de changer souvent, tout le temps, à des vitesses de dingue, des fois sans que vous ne puissiez rien y faire.

En général on commence son programme en déclarant les constantes et les variables.
Moi je fais comme ça, ça marche.

En voici quelques exemples:

Syntaxe de la constante est con, un peu comme Juste, sauf qu'ici c'est con. C'est tout con, c'est juste.

con qui_porte_la_culotte = "moi"
con gravite_terrestre = 9.81 (on se fiche de l'unité, même si je sais que c'est en newton).

On notera, (si si, on le note quelque part), qu'on n'utilise pas d'accent, de ponctuation ni même d'espace lorsque l'on nomme une constante ou une variable. On reste simple et paresseux. On verra en pratique plus tard que le logiciel à la même philosophie, il va reconnaître sans qu'on est rien à faire, certains mots, il va les mettre tout seul en gras et en couleur, c'est très joli et pratique.

Syntaxe de la variable est var, ça par contre ça ne change jamais, curieux pour une variable.

var age_du_cuistot = 18
var liste_quelconque = ["chat","chien","poulet", 12 , 145.19 , true]
var dico_menus_tout_fait ={}

Là j'ai écris des trucs un peu plus tordus, mais en fait c'est juste pour embrouiller les cartes un peu.
Une variable ou une constante on d'abord un nom suivi du signe "=".
Le plus chiant étant d'inventer les noms.

var mavariable =
var ma_variable =
var m_a___v_a_r_i_a_b_l_e =
con maconstante =
con macon_stante =
con macron-degage = true

Faites bien gaffe de ne pas sortir des noms à rallonge, vous risquez de la payer cher plus tard.
Pensez paresseux.

var ma_var =
ou
var v01 =

C'est bonnard.

Bon on va voir ce qu'on peut mettre derrière le "=" des variables.
du plus simple au plus compliqué:

  • un chiffre entier: 358 (qui n'a pas de virgule).
  • un chiffre décimal (on utilise le point pas la virgule, SURTOUT pas la virgule): 17.53
  • un booléen. true ou false (vrai ou faux , éq: oui /non)
  • un résultat nul: null
  • un mot ou une phrase : "mon mot" (là on met ce qu'on veut, accents, espace) l'important c'est d'ouvrir et de fermer les guillemets.
  • des listes de trucs
  • des dictionnaires de trucs.
  • j'en oublie peut-être, on verra.
Ensuite on va parler de listes.

var ma_liste = []
là je déclare simplement: "Oyé! je vais probablement utiliser une liste qui s'appelle "ma_liste", mais j'ai rien mis dedans.

le principe d'une liste, c'est de lister des trucs, même si au début on a rien à mettre dedans.

Mais on peut aussi faire une vrai liste:

var ma_liste = [1, 2, 4, 8, 17]

Là, j'ai listé cinq chiffres entiers. La virgule sépare les éléments de la liste.

var ma_liste = [3.15, 4.78, 9.11]

Là c'est des chiffres à virgule (décimaux), sauf qu'on utilise un point pour faire la virgule, puisque la virgule sert à autre chose. Relisez 3 fois la phrase précédente. la virgule sert de séparateur, on peut également utiliser les espaces pour séparer les séparateurs.

var ma_liste = [3.15,4.78,9.11]
var ma_liste = [   3.15   ,   4.78,    9.11      ]
var ma_liste = [3.15 , 4.78 , 9.11]

les trois marchent très bien. le dernier est un poil plus clair.

Faites une petite pause 5 mn

On continue ça bientôt.








Commentaires

Posts les plus consultés de ce blog

La permaculture c'est bio ?

Les trois petits cochons.