Rekomenduojama, 2024

Redaktoriaus Pasirinkimas

Skirtumas tarp „iš viršaus į apačią“ ir „iš apačios į viršų“ metodo

Algoritmai yra sukurti naudojant du metodus, kurie yra „iš viršaus į apačią“ ir „iš apačios į viršų“. Iš viršaus į apačią metodas sudėtingas modulis yra suskirstytas į submodules. Kita vertus, „iš apačios į viršų“ metodas prasideda elementariais moduliais ir vėliau juos sujungia. Ankstesnis algoritmo tikslas yra valdyti duomenų struktūroje esančius duomenis. Kitaip tariant, algoritmas naudojamas duomenų struktūrų duomenų operacijoms atlikti.

Sudėtingas algoritmas yra suskirstytas į mažas dalis, vadinamas moduliais, ir skaidymo procesas vadinamas modularizacija . Modulizacija žymiai sumažina algoritmo kūrimo komplikacijas ir palengvina jo kūrimo ir diegimo procesą. Modulinis programavimas yra programos projektavimo ir rašymo būdas funkcijų pavidalu, kur kiekviena funkcija skiriasi viena nuo kitos ir veikia nepriklausomai. Funkcijų turinys yra vienodas, o modulių jungtis yra nedidelė.

Palyginimo diagrama

Palyginimo pagrindas„Iš viršaus į apačią“ metodas„Iš apačios į viršų“ metodas
PagrindinisPerkelia didžiulę problemą į mažesnes problemas.Išsprendžia pagrindinę žemo lygio problemą ir jas integruoja į didesnį.
ProcesasSubmoduliai yra analizuojami vienodai.Išnagrinėti, kokie duomenys turi būti įterpti, ir suprantama informacijos slepimo sąvoka.
KomunikacijaNereikalaujama iš viršaus į apačią metodo.Reikia tam tikro ryšio.
Atleidimas iš darboTurėkite nereikalingą informaciją.Atleidimą galima pašalinti.
Programavimo kalbosStruktūrinės / procedūrinės programavimo kalbos (ty C) atitinka „iš viršaus į apačią“ metodą.Objektinės programavimo kalbos (pvz., C ++, Java ir kt.) Atitinka metodą „iš apačios į viršų“.
Daugiausia naudojamaModulio dokumentacija, testo atvejo kūrimas, kodo diegimas ir derinimas.Testavimas

Viršutinio metodo apibrėžimas

viršaus į apačią metodas iš esmės skiria sudėtingą problemą ar algoritmą į kelias mažesnes dalis (modulius). Šie moduliai toliau suskaidomi tol, kol gaunamas modulis yra pagrindinė programa, kuri iš esmės yra suprantama ir negali būti toliau skaidoma. Pasiekus tam tikrą moduliškumo lygį, modulių skaidymas nutraukiamas. „Iš viršaus į apačią“ metodas yra laipsniškas didelės programos modulio lūžimas į paprastesnius ir mažesnius modulius, skirtus efektyviai organizuoti ir koduoti programą. Kontrolės srautas šiame metode visada yra žemyn. „C“ programavimo kalba „iš viršaus į apačią“ metodas įgyvendinamas naudojant funkcijas.

Taigi, iš viršaus į apačią metodas prasideda abstrakčiu dizainu, po to nuosekliai šis dizainas patobulintas, kad būtų sukurtas konkretesnis lygis, kol nėra papildomo tobulinimo reikalavimo.

Apatinio metodo apibrėžimas

Metodas „iš apačios į viršų“ veikia priešingai nei „iš viršaus į apačią“. Iš pradžių ji apima pagrindinių elementų, kurie vėliau derinami, kad būtų sukurtas aukštesnio lygio modulis, projektavimas. Šis modulių ir modulių integravimas į aukštesnio lygio modulį pakartotinai atliekamas, kol bus gautas reikalingas pilnas algoritmas.

Apatinis požiūris veikia su abstrakcijos sluoksniais. Pagrindinis „iš apačios į viršų“ metodo taikymas yra bandymas, nes kiekvienas pagrindinis modulis pirmą kartą išbandomas prieš sujungiant jį su didesniu. Bandymai atliekami naudojant tam tikras žemo lygio funkcijas.

Pagrindiniai „iš viršaus į apačią“ ir „iš apačios į viršų“ metodų skirtumai

  1. „Iš viršaus į apačią“ metodas didelę užduotį išskirsto į mažesnius potvarkius, o „iš apačios į viršų“ metodas pirmiausia pasirenka išspręsti įvairias pagrindines užduoties dalis, o po to jas sujungti į visą programą.
  2. Kiekvienas submodulis atskirai apdorojamas taikant „iš viršaus į apačią“ metodą. Atvirkščiai, „iš apačios į viršų“ metodas įgyvendina slepiamos informacijos sąvoką, išnagrinėjant įterpiamus duomenis.
  3. Skirtingi moduliai iš viršaus į apačią metodo nereikalauja daug bendravimo. Atvirkščiai, taikant „iš apačios į viršų“ metodą reikia atskirti atskirus pagrindinius modulius, kad juos vėliau būtų galima sujungti.
  4. „Iš viršaus į apačią“ metodas gali sukelti atleidimą iš darbo, o „iš apačios į viršų“ metodas neapima nereikalingos informacijos.
  5. Procedūrinės programavimo kalbos, pvz., „Fortran“, „COBOL“ ir „C“, laikosi „iš viršaus į apačią“ metodo. Priešingai, į objektą orientuotos programavimo kalbos, pvz., C ++, Java, C #, Perl, Python, laikosi „iš apačios į viršų“ metodo.
  6. Atliekant bandymus pirmiausia naudojamas „iš apačios į viršų“ metodas. Atvirkščiai, „iš viršaus į apačią“ metodas naudojamas modulio dokumentacijoje, bandymų atvejų kūrime, derinant ir kt.

Išvada

Metodas „iš viršaus į apačią“ ir „iš apačios į viršų“ yra algoritmo projektavimo metodai, kai iš viršaus į apačią yra tradicinis metodas, kuris suskaido sistemą nuo aukšto lygio specifikacijos iki žemo lygio specifikacijos. Kita vertus, „iš apačios į viršų“ metodas yra efektyvesnis ir veikia atvirkščiai, kai pradiniai komponentai yra suprojektuoti iš pradžių, o tada pereiti prie aukštesnio lygio.

Iš viršaus į apačią požiūris pabrėžia submodulių izoliaciją (tai reiškia mažą jungimą tarp modulių), tačiau ignoruoja ryšio ir pakartotinio naudojimo koncepcijos identifikavimą. Nors „iš apačios į viršų“ požiūris, informacijos slepimas ir pakartotinis naudojimas yra svarbiausi veiksniai.

Top