Pourquoi dit-on que des langages comme le C sont top-down tandis que les langages orientés objets comme Java ou C++ sont bottom-up? Cette classification a-t-elle une importance dans le développement de logiciels?
Réponses
Trop de publicités?Dans l'approche descendante, le système est d'abord formulé en spécifiant mais sans détailler aucun sous-système au début, puis chaque système et son sous-système sont définis en détail jusqu'à ce qu'ils soient spécifiés à la base.
par exemple - Dans un programme C, il est nécessaire de déclarer les fonctions au début du programme, puis chaque sous-système/sous-routine est défini en détail à travers l'entrée principale.
Dans l'approche ascendante, la conception part d'abord du niveau de base pour atteindre le niveau abstrait.
par exemple - En c++/java, la conception commence par la classe à partir du niveau de base des fonctionnalités de programmation, puis passe à la partie principale du programme.
Il s'agit davantage de paradigme (orienté objet, impératif, fonctionnel etc.) que de syntaxe.
La programmation bottom-up est l'opposé de la programmation top-down. Il s'agit d'un style de programmation où une application est construite en commençant avec des primitives existantes du langage de programmation, et en construisant progressivement des fonctionnalités de plus en plus complexes, jusqu'à ce que toute l'application ait été écrite.
Plus tard dans le même article :
Dans un langage tel que C ou Java, la programmation bottom-up prend la forme de construire des types de données abstraits à partir de primitives du langage ou à partir de types de données abstraits existants.
La plupart des langages procéduraux ou de bas niveau suivent une approche descendante comme le langage C. De même, les langages de haut niveau comme Java, C++, etc. suivent une approche ascendante.
Dans l'approche descendante, tous les systèmes ou grandes fonctions sont décomposés en petits sous-systèmes tandis que dans l'approche ascendante, les petits sous-systèmes sont combinés pour développer un grand système final.
Par exemple, la récursivité est une approche descendante tandis que l'itération est une approche ascendante.
- Réponses précédentes
- Plus de réponses