# 3.01 - Introduction au développement

<table id="bkmrk-dur%C3%A9e-approximative-" style="border-collapse:collapse;width:100%;height:265.797px;"><colgroup><col style="width:99.881%;"></col></colgroup><tbody><tr style="height:237px;"><td style="background-color:rgb(194,224,244);border-style:none;height:237px;">**Durée approximative :** <span style="color:rgb(35,111,161);">***8h***</span>

**Eléments du référentiel adressé :**

- <span style="color:rgb(132,63,161);">***U5 - Exploitation et maintenance de réseaux informatiques***</span>
    - <span style="color:rgb(132,63,161);">***R4 : Gestion de projet et d'équipe***</span>
        - <span style="color:rgb(132,63,161);">***C03 : Gérer un projet***</span>
            - <span style="color:rgb(132,63,161);">***Méthodes de conduite de projet (Agile Scrum, Kanban, Cycle en V)***</span>
- <span style="color:rgb(132,63,161);">***U6 - Valorisation de la donnée et cybersécurité***</span>
    - <span style="color:rgb(132,63,161);">***D2 : Développement et validation de solutions logicielles***</span>
        - <span style="color:rgb(132,63,161);">***C06 : Valider un système informatique***</span>
            - <span style="color:rgb(132,63,161);">***Ingénierie logicielle (UML)***</span>
        - <span style="color:rgb(132,63,161);">***C08 : Coder***</span>
            - <span style="color:rgb(132,63,161);">***Spécificités des environnement de développement, de test, de production***</span>
            - <span style="color:rgb(132,63,161);">***Outils de modélisation***</span>
            - <span style="color:rgb(132,63,161);">***Outils de documentation***</span>

</td></tr></tbody></table>

#### <span style="text-decoration:underline;color:rgb(35,111,161);">I. Les types de langages</span>

Aborder et décrire les différents types de langages :

- Procéduraux (batch, basic, etc...)
- orienté objet (Powershell, python, C++)
- Descriptif (YAML, JSON, XML)
- Web (html, css)
- BDD (SQL)

Indiquer le niveau de maîtrise attendu pour chaque type et contextualiser leur utilisation.


#### <span style="text-decoration:underline;"><span style="color:rgb(35,111,161);text-decoration:underline;">II. Les bonnes pratiques en développement</span></span>

Expliquer la nécessité de bien commenter et documenter son code. Notamment dans un contexte de travail collaboratif.

Aborder la normalisation sur les scripts (Powershell par exemple, avec les en-têtes, sections, etc...)

Introduire les logiques de DevSecOps. La méthode agile vs cycles en V.

Expliquer le cycle dev to prod avec les différents environnements : DEV --&gt; UAT --&gt; PROD

#### <span style="text-decoration:underline;"><span style="color:rgb(35,111,161);text-decoration:underline;">III. La logique algorithmique</span></span>

Réfléchir au langage le plus adapté au besoin

Faire dérouler un processus simple.

Introduire progressivement les élément conditionnel :

- if
- if,else
- if,then if, elif
- switch, cases

Introduire les boucles :

- for, foreach
- while, do while, do until

<p class="callout info">**TP** : commencer sur un notepad ou un vscode à faire écrire des programmes simples en langage naturel.</p>

<p class="callout success">**Conseil** : Pour faire intégrer la logique d'évolution du code, procéder au développement de manière itérative en faisant évoluer le besoin de base. De plus, pour évoquer le besoin, passer par des diagrammes UML/SYSML si possible.</p>

#### <span style="text-decoration:underline;"><span style="color:rgb(35,111,161);text-decoration:underline;">IV. Recherche de documentation</span></span>

Expliquer comment rechercher la documentation sur les langages.

A travers les Man pages (local ou en ligne) et les documentations éditeurs.

---

*Ressources associées :*

*<span style="color:rgb(132,63,161);">**&lt;n/a&gt;**</span>*