From 48474c47a16d42797c33fbbff3983e9c8070406e Mon Sep 17 00:00:00 2001 From: Oscar Plaisant Date: Fri, 29 Mar 2024 20:11:44 +0100 Subject: [PATCH] update --- ...radigme programmation orientée tableaux.md | 0 3 types de notes.md | 3 +- Remplissage du plan de L3.md | 10 ++++ jenkisWhatFunctionalProgramming2015.md | 0 paradigme programmation orientée tableaux.md | 12 ++++ paradigme programmation structurée.md | 59 +++++++++++++++++++ programmation structurée.md | 27 --------- sources/Aaron Hsu — The Array Cast.md | 2 +- .../jenkisWhatFunctionalProgramming2015.md | 23 ++++++++ workshop array programming.md | 2 +- 10 files changed, 108 insertions(+), 30 deletions(-) create mode 100644 .trash/paradigme programmation orientée tableaux.md create mode 100644 jenkisWhatFunctionalProgramming2015.md create mode 100644 paradigme programmation orientée tableaux.md create mode 100644 paradigme programmation structurée.md delete mode 100644 programmation structurée.md create mode 100644 sources/zotero/jenkisWhatFunctionalProgramming2015.md diff --git a/.trash/paradigme programmation orientée tableaux.md b/.trash/paradigme programmation orientée tableaux.md new file mode 100644 index 00000000..e69de29b diff --git a/3 types de notes.md b/3 types de notes.md index 5771d94b..9a45fe05 100644 --- a/3 types de notes.md +++ b/3 types de notes.md @@ -13,4 +13,5 @@ title:: "idées : idées à noter, projets", "apprentissage : notions intéressa - choses à apprendre - prise de notes - todo - - choses à faire \ No newline at end of file + - choses à faire + diff --git a/Remplissage du plan de L3.md b/Remplissage du plan de L3.md index e884103d..b071ed9c 100644 --- a/Remplissage du plan de L3.md +++ b/Remplissage du plan de L3.md @@ -18,6 +18,7 @@ up:: [[plan du mémoire de L3]] ## les principaux paradigmes [[taxonomie des paradigmes de programmation]] + ### impératif #### procédural ##### orienté objet @@ -39,7 +40,16 @@ Tous les paradigmes sont équivalent puisqu'ils sont tous turing-complets ### Au sens commun # Paradigmes dans l'apprentissages ## avantages de la diversité +- ## problèmes de la diversité + +> [!cite]+ [10 Things Software Developers Should Learn about Learning](zotero://select/groups/5383243/items/E829XCHJ) - [Page 84](zotero://open-pdf/groups/5383243/items/SQN4T6Z8?page=7&annotation=588UCYYD) +> Knowing multiple languages can be beneficial once they have been mastered, but sometimes transferring knowledge from one programming language to another can lead to faulty knowledge +> +> > [!note] Notes +> > le transfert de connaissances d'un langage à un autre peut être avantageux, mais peut aussi créer de la connaissance fausse (si le transfert n'est pas pertinent à ce moment). +> ^588UCYYDaSQN4T6Z8g5383243p7 + # Paradigmes pour la résolution de problèmes ## diversité des approches La diversité est utile, de nouveaux paradigmes apportent de nouvelles façons de voir. diff --git a/jenkisWhatFunctionalProgramming2015.md b/jenkisWhatFunctionalProgramming2015.md new file mode 100644 index 00000000..e69de29b diff --git a/paradigme programmation orientée tableaux.md b/paradigme programmation orientée tableaux.md new file mode 100644 index 00000000..8d0a7006 --- /dev/null +++ b/paradigme programmation orientée tableaux.md @@ -0,0 +1,12 @@ +--- +aliases: + - array programming + - programmation orientée tableaux +--- +up:: [[paradigme de programmation]] +#informatique + +> [!definition] programmation orientée tableaux +> La programmation orientée tableaux est un paradigme de programmation dans lequel les programmes sont des manipulations par des opérateurs généralisés de tableaux. Le principe est donc de manipuler des tableaux entiers, plutôt que de s'occuper individuellement de leurs éléments. +^definition + diff --git a/paradigme programmation structurée.md b/paradigme programmation structurée.md new file mode 100644 index 00000000..9ff45bb1 --- /dev/null +++ b/paradigme programmation structurée.md @@ -0,0 +1,59 @@ +--- +aliases: + - programmation structurée +--- +up:: [[paradigme de programmation]] +#informatique + +> [!definition] programmation structurée +> La programmation structurée est un paradigme de programmation qui consiste en une méthode pour résoudre des problèmes. +> étant donné un problème, on utilise deux étapes pour le résoudre : +> 1. raffinement progressif +> - *top-down design* +> - découper en sous-problèmes simples +> - répéter jusqu'a ce que les sous-problèmes soient assez simples pour être implémentés directement +> 1. remonter les niveaux d'abstraction (cacher les détails) +> - *bottom-top* +> - Implémenter les sous-problèmes, des plus concrets aux plus abstraits +> - encapsuler tous les détails d'implémentation : **cacher les détails** +^definition + +# Citations + +> [!cite]+ [The paradigms of programming](zotero://select/groups/5383243/items/Y8NDFJ8W) - [Page 1](zotero://open-pdf/groups/5383243/items/WWITR642?page=1&annotation=WUIEE8HU) +> In the first phase, that of top-down design, or stepwise refinement, the problem is decomposed into a very small number of simpler subproblems. +> +> > [!note] Notes +> > programmation structurée: +> > étape 1 : +> > top-down, décomposition du problème en sous-problèmes très simples. +> ^WUIEE8HUaWWITR642g5383243p1 + +> [!cite]+ [The paradigms of programming](zotero://select/groups/5383243/items/Y8NDFJ8W) - [Page 1](zotero://open-pdf/groups/5383243/items/WWITR642?page=1&annotation=WUIEE8HU) +> In the first phase, that of top-down design, or stepwise refinement, the problem is decomposed into a very small number of simpler subproblems. +> +> > [!note] Notes +> > programmation structurée: +> > étape 1 : +> > top-down, décomposition du problème en sous-problèmes très simples. +> ^WUIEE8HUaWWITR642g5383243p1 + +> [!cite]+ [The paradigms of programming](zotero://select/groups/5383243/items/Y8NDFJ8W) - [Page 1](zotero://open-pdf/groups/5383243/items/WWITR642?page=1&annotation=48AUNBVN) +> The second phase of the structured programming paradigm entails working upward from the concrete objects and functions of the underlying machine to the more abstract objects and functions used throughout the modules produced by the top-down design. +> +> > [!note] Notes +> > programmation structurée: +> > étape 2: +> > remonter vers des concepts de + en + abstraits. +> ^48AUNBVNaWWITR642g5383243p1 + +> [!cite]+ [The paradigms of programming](zotero://select/groups/5383243/items/Y8NDFJ8W) - [Page 2](zotero://open-pdf/groups/5383243/items/WWITR642?page=2&annotation=2AQEQRR4) +> This approach is referred to as the method of levels of abstraction, or of information hiding. +> +> > [!note] Notes +> > *information hiding* (cacher l'information) : +> > approche pour la programmation structurée : +> > encapsulation des détails dans des abstractions utiles et manipulabes +> ^2AQEQRR4aWWITR642g5383243p2 + + diff --git a/programmation structurée.md b/programmation structurée.md deleted file mode 100644 index f5f27a5c..00000000 --- a/programmation structurée.md +++ /dev/null @@ -1,27 +0,0 @@ ---- -aliases: - - programmation structurée - - paradigme programmation structurée ---- -up:: [[paradigme de programmation]] -#informatique - -2 étapes : - -# Raffinement progressif - -*top-down design* - -Découper un problème en sous-problèmes simples (on répète jusqu'a ce que les sous-problèmes soient assez simples pour être implémentés directement). - -# Cacher les détails - -*bottom top* - -On implémente les sous-problèmes, en [[encapsulation|encapsulant]] tous les détails d'implémentation. On **cache les détails**. - - -# Références - -source:: [[floydParadigmsProgramming1979]] - diff --git a/sources/Aaron Hsu — The Array Cast.md b/sources/Aaron Hsu — The Array Cast.md index 76545a8d..2e718348 100644 --- a/sources/Aaron Hsu — The Array Cast.md +++ b/sources/Aaron Hsu — The Array Cast.md @@ -2,5 +2,5 @@ link::https://www.arraycast.com/episodes/episode19-aaron-hsu author::[[Aaron Hsu]], [[Array Cast]] - - podcast of [[Aaron Hsu]] about [[array programming]] + - podcast of [[Aaron Hsu]] about [[paradigme programmation orientée tableaux]] diff --git a/sources/zotero/jenkisWhatFunctionalProgramming2015.md b/sources/zotero/jenkisWhatFunctionalProgramming2015.md new file mode 100644 index 00000000..53242efe --- /dev/null +++ b/sources/zotero/jenkisWhatFunctionalProgramming2015.md @@ -0,0 +1,23 @@ +--- +zotero-key: TLUTFXJ8g5383243 +zt-attachments: + - "146" +citekey: jenkisWhatFunctionalProgramming2015 +--- +up:: [[zotero literature notes]] +link:: [Zotero](zotero://select/groups/5383243/items/TLUTFXJ8) [attachment](file:///Users/oscarplaisant/Zotero/storage/8P4TX53J/what-is-functional-programming.html) +#pkm #zotero + + +> [!cite]+ [What Is Functional Programming?](zotero://select/groups/5383243/items/TLUTFXJ8) - [Page ](zotero://open-pdf/groups/5383243/items/8P4TX53J?annotation=S979DXY2) +> A function is called 'pure' if all its inputs are declared as +> inputs - none of them are hidden - and likewise all its outputs are +> declared as outputs. +> ^S979DXY2a8P4TX53Jg5383243 + +> [!cite]+ [What Is Functional Programming?](zotero://select/groups/5383243/items/TLUTFXJ8) - [Page ](zotero://open-pdf/groups/5383243/items/8P4TX53J?annotation=IU2KWY7L) +> Functional programming is about writing pure functions, about removing +> hidden inputs and outputs as far as we can, so that as much of our +> code as possible just describes a relationship between inputs and +> outputs. +> ^IU2KWY7La8P4TX53Jg5383243 diff --git a/workshop array programming.md b/workshop array programming.md index 3b64c97a..b24c1de3 100644 --- a/workshop array programming.md +++ b/workshop array programming.md @@ -7,7 +7,7 @@ title::"workshop sur la programmation array ([[APL]])" # [[notation as a tool of thought.pdf|Notation as a tool of thought]] # Presentation : -[[array programming]] +[[paradigme programmation orientée tableaux]] # Notions importantes