Abstraction procédurale ( fonction) Flashcards
Quels sont les avantages d’une fonction
1)Évite la repetition et promouvoir la réutilisation
2)Premier Niveau d’abstraction ( programme plus simple a comprendre )
3)facilite la detection d’erreur/correction d’erreur
4)facilite le travail d’équipe ( étant donne que chacun peut travailler sur une fonction )
qu’est ce que la cohesion dans une fonction
C’est le degré d’interaction au sein du module , chaque fonction accomplit UNE seule tache
Qu’est ce que le couplage dans une fonction
c’est le degré d’interaction entre les modules , chaque méthode effectue une tache de façon indépendante du reste du programme
exemple d’un problème de Cohesion?
une fonction qui effectue plusieurs taches( lire rayon , calcul d’une circonférence et affichage du résultat)
De plus ca rend le code difficile a lire, comprendre, corriger et maintenir
exemple de problème de couplage ?
une dependance des variables globales car pour comprendre leur fonctionnement , il faut comprendre les roles de variables , en plus certains fonctions dependent d’autre fonction pour fonctionner donc il ne sont pas réutilisable
quelles sont les bonnes pratiques pour écrire des méthodes ( fonctions ) ?
éviter le plus possibles les variables globales sauf quand pour stocker une information générale et commune dans tout le programme , écrire des fonctions indépendantes , tout informations devraient être le plus possibles être rajouter avec des paramètres
vrai ou faux : une fonction peut avoir un paramètre , aucun paramètre ou plusieurs
vrai
il est possible d’avoir des paramètres par défauts dans une fonction
ex : langue=”fr”
vrai ou faux , il existe des paramètres obligatoire et optionnel
vrai , quand on établit des valeurs par defaults a nos fonctions ( sexe=”m” etc..)
Quel est la difference entre des arguments(paramètres) positionnels Vs par mots-clés
les arguments positionnels doivent respecter un ordre , car l’ordre des arguments determine les valeurs des paramètres , tandis-que l’argument par mot-clés n’oblige pas d’ordre , car on assigne les valeurs a tout nos paramètres dans la fonction ( ex = def jean(age=28 , sexe=”m”)
vrai ou faux : on ne peut pas utiliser different type d’arguments , par exemples un/des arguments par mots-clés avec un/plusieurs arguments positionnels
faux , on peut mélanger les deux
qu’elle est l’utilité d’un argument variable ?
lorsque nous ne savons pas combien d’argument que peut recevoir la fonction
ou est placer un argument variables dans une fonction?
après les paramètres réguliers (arguments positionnels et mots-clés)
quelles sont les deux types d’Arguments variable
1) *args = utile pour recevoir les arguments positionnels
2) **kwargs = utile pour recevoir les arguments mots-clés
Quels sont les étapes nécessaire à la conception d’un programme?
Tout d’abord il faut trouver les caractéristiques du problème et établir un plan de résolution clair.
1) objectif : quel est la tache a accomplir
2) entités cibles: identifier avec precisions ce qu’il faut manipuler ( structure ou entités)
3) prérequis : determiner ce qui est minimalement nécessaire pour la manipulation