40 votes

Haut vers le bas et bas vers le haut programmation

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?

2voto

varinder Points 1

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.

1voto

Rytek Points 431

Il s'agit davantage de paradigme (orienté objet, impératif, fonctionnel etc.) que de syntaxe.

De dept-info.labri.fr

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.

1voto

Xcode Points 85

Je crois que la différence entre l'approche descendante et l'approche ascendante en programmation est que l'approche descendante prend le problème et le divise en étapes gérables, tandis que l'approche ascendante détaille réellement ces étapes.

-1voto

Vivek Points 3

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.

-5voto

user101314 Points 1

C est un langage structuré et la séquence des programmes se fait de haut en bas, en commençant par la méthode principale.

Alors que la POO dépend du nombre de classes et d'objets. Le flux du programme n'est pas basé sur une approche de haut en bas en POO.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X