# Concepts de la programmation

### Où sont les programmes?

* Communications : Internet, courriel, téléphonie mobile.
* Traitement de texte : édition et impression des documents.
* Traitement de données géographiques et statistiques.
* Collecte de données et télédétection.
* Applications de gestion.
* Systèmes d’Information Géographiques.
* Jeux et multimédia.
* Robotique.
* Autres applications.

### Qu'est-ce qu'un programme informatique ?

Il s'agit d'une suite d'instructions précises et ordonnées qui peuvent être exécutées (interprétées) par un ordinateur pour résoudre un problème.

### Quel est le rôle du programmeur ?

La tâche du programmeur consiste essentiellement à rechercher et à écrire une séquence correcte d’instructions pour chaque énoncé qui lui est soumis.

* Il construit les étapes à suivre qui permettent de solutionner un problème;
* Il vérifie la logique de la solution du problème; et
* Il traduit sa logique en une série d’instructions interprétables par l’ordinateur.

### Qu'est-ce que la programmation ?

<details>

<summary>Description vulgarisée</summary>

La programmation, c'est de donner des instructions à un ordinateur pour qu'il fasse ce que tu veux. Imagine que tu donnes des étapes précises à un ami pour construire une tour avec des blocs. De même pour le GPS, il te donne l'itinéraire détaillé pour que tu rendes à ta destination. Tu dois être très clair et détaillé pour qu'il suive tes instructions correctement. De la même manière, en programmation, tu écris des lignes de code pour dire à l'ordinateur quoi faire étape par étape. Une fois que tu as écrit le bon code, l'ordinateur exécute ces instructions et accomplit la tâche que tu lui as demandée, que ce soit pour créer un jeu, un site web, ou même contrôler un robot.

</details>

Le but de la programmation est de résoudre un problème. Ainsi, la programmation est l’art de commander à un ordinateur de faire exactement ce que l’on veut qu’il fasse en lui fournissant un ensemble d’instructions détaillées, précises et ordonnées servant à résoudre un problème donné.

Le travail d'un ordinateur, quant à lui, consiste essentiellement à *traiter des données* qui lui sont fournies, en suivant les étapes d'un programme préenregistré en mémoire. En fait, un ordinateur n’est rien d’autre qu’une machine qui effectue des opérations simples.

{% hint style="info" %}
*L'ordinateur exécute le travail qu'on lui fournit et non pas ce qu'on pense lui avoir fourni*.
{% endhint %}

Les principaux types de traitement dont un ordinateur est capable sont:

* La lecture (entrée) de données
* L’écriture (sortie) de données (ou résultats)
* La gestion de données en mémoire
* Le calcul et la comparaison logique

Quoique les types de traitement de base dont un ordinateur est capable soient peu nombreux, la *programmation est un art difficile*. Les difficultés proviennent principalement de l'ensemble des détails d'une activité complexe dont il faut tenir compte, de les ordonnancer adéquatement et surtout, de ne pas en oublier.

Il ne doit exister aucune ambiguïté dans la nature et la séquence des instructions du programme, car l'ordinateur n'est qu'une machine peu futée à qui l'on doit fournir à l'avance les moindres détails des tâches que l'on souhaite lui faire exécuter.  Le moindre oubli et c'est la panne ou l'erreur.

L’ensemble de ces instructions est appelé un ***algorithme***. Un mode d’emploi, une procédure, un itinéraire routier ou encore une recette culinaire, sont des exemples d’algorithme.

### Qu'est-ce qu'un bon programme ?

* **Correct** : S'assurer qu'il fait ce qu'il doit faire.
* **Robustesse** : S'assurer qu'il s’exécute sans erreur et donne toujours les bons résultats.
* **Interface facile à utiliser** : S'assurer que l'interface est simple à utiliser.
* **Simplicité** : Garder le code le plus simple possible et facilement modifiable en fonction de nouvelles exigences.
* **Présentation et Documentation** : S'assurer que le code est bien documenté.
* **Efficacité** : S'assurer que l'utilisation du temps et de la mémoire soit efficace.

***

## Qu'est-ce que Python?

C'est un langage de programmation qui permet aux gens de donner des instructions aux ordinateurs de manière facile et compréhensible. Il s'agit de parler une nouvelle langue avec l'ordinateur pour lui dire quoi faire.

En utilisant Python, tu écris des lignes de code qui ressemblent un peu à des phrases spéciales que l'ordinateur comprend. Ces lignes de code disent à l'ordinateur comment effectuer certaines actions, comme réaliser des calculs, gérer des données, créer des jeux, etc.&#x20;

Python utilise des mots et des règles qui sont assez proches du langage humain, ce qui le rend facile à apprendre et à utiliser.

***

## Qu'est-ce que PyCharm ?

PyCharm est un IDE.

Un IDE (Integrated Development Environment) est un environnement de développement intégré. Il s'agit d'une boîte à outils spéciale pour les programmeurs qui leur permet de construire des programmes informatiques. C'est le même principe que pour construire une maison, on utilise des outils comme des marteaux, des clous et des scies.

Une fois l'IDE (PyCharm) ouvert, il donne un espace où tu peux écrire ton code, l'exécuter et te montrer les résultats. Il fournit également des raccourcis et des astuces pour éviter les erreurs et rendre la programmation efficace.
