Soovitatav, 2020

Toimetaja Valik

Erinevus ülalt-alla ja alt-üles lähenemisviisi vahel

Algoritmid on kavandatud kahe lähenemisviisi abil, mis on ülalt-alla ja alt-üles lähenemisviis. Ülalt-alla lähenemisel jagatakse kompleksmoodul submoduliteks. Teisest küljest algab alt-üles lähenemisviis elementaarmoodulitega ja ühendab need veelgi. Algoritmi eelnev eesmärk on kasutada andmestruktuuris sisalduvaid andmeid. Teisisõnu kasutatakse andmestruktuuride andmete töötlemiseks algoritmi.

Keeruline algoritm jagatakse väikesteks osadeks, mida nimetatakse mooduliteks, ja jagamise protsess on tuntud kui modulaarne . Modulariseerimine vähendab märkimisväärselt algoritmi kavandamise keerukust ja muudab selle protsessi lihtsamaks kavandamise ja rakendamise. Modulaarne programmeerimine on programmi kujundamise ja kirjutamise tehnika funktsioonide kujul, kus iga funktsioon on üksteisest erinev ja töötab iseseisvalt. Funktsioonide sisu on ühtlaselt ühtne ja moodulite vahel on väike ühendus.

Võrdluskaart

Võrdluse alusÜlalt-alla lähenemineAlt-üles lähenemine
PõhilineLõhub tohutut probleemi väiksemateks probleemideks.Lahendab madalamat madalat probleemi ja integreerib selle suurema.
ProtsessSubmoduleid analüüsitakse solidaarselt.Uurige, milliseid andmeid tuleb kapseldada ja mis tähendab teabe peitmist.
TeabevahetusÜlalt-alla lähenemisviis ei ole nõutav.Vajab teatavat suhtlust.
RedundantsusSisesta koondatud teave.Liigne võib kõrvaldada.
ProgrammeerimiskeeledStruktuur / menetlusele suunatud programmeerimiskeeled (st C) järgivad ülalt-alla lähenemist.Objektile orienteeritud programmeerimiskeeled (nagu C ++, Java jne) järgivad alt-üles lähenemisviisi.
Peamiselt kasutatakseMooduli dokumentatsioon, testijuhtumi loomine, koodide rakendamine ja silumine.Testimine

Ülalt-alla lähenemise määratlus

Ülalt-alla lähenemisviis jagab põhimõtteliselt keerulise probleemi või algoritmi mitmeks väiksemaks osaks (moodulid). Need moodulid lagunevad seni, kuni tulemuseks olev moodul on põhiprogramm, mida sisuliselt mõistetakse ja mida ei saa edasi lagundada. Pärast teatud modulaarsuse saavutamist lõpetatakse moodulite lagunemine. Ülalt-alla lähenemine on suurte programmimoodulite järkjärguline katkestamise protsess lihtsamaks ja väiksemateks mooduliteks, et programmeerida ja koodida programmi tõhusalt. Selle lähenemise kontrollvool on alati allapoole suunatud. Ülalt-alla lähenemisviisi rakendatakse programmeerimiskeeles C, kasutades funktsioone.

Seega algab ülalt-alla meetod abstraktsest disainist ja seejärel täiustatakse seda disaini, et luua konkreetsemaid tasemeid, kuni täiendava täiustamise nõudeid ei ole.

Alt-üles lähenemisviisi määratlus

Alt-üles lähenemisviis toimib vastupidiselt ülalt-alla lähenemisviisile. Esialgu hõlmab see kõige olulisemate osade projekteerimist, mis seejärel kombineeritakse kõrgema taseme mooduli loomiseks. See alammoodulite ja moodulite integreerimine kõrgema taseme moodulisse toimub korduvalt, kuni on saadud vajalik algoritm.

Alumine ülespoole lähenemine toimib abstraktsete kihtidega. Alt-üles lähenemisviisi esmane rakendamine on testimine, sest iga põhimoodul on enne selle suuremasse ühendamist testitud. Testimine toimub teatud madala taseme funktsioonide abil.

Ülalt-alla ja alt-üles lähenemise peamised erinevused

  1. Ülalt-alla lähenemine lagundab suure ülesande väiksemateks alamülesanneteks, samas kui alt-üles lähenemisviis otsustab kõigepealt lahendada ülesande erinevad põhiosad otse ja seejärel ühendada need osad kogu programmiga.
  2. Iga allmoodulit töödeldakse eraldi ülalt-alla. Vastupidi, alt-üles lähenemisviis rakendab teabe peitmise kontseptsiooni kapseldatavate andmete uurimise kaudu.
  3. Ülalt-alla lähenemise erinevad moodulid ei vaja palju suhtlemist. Vastupidi, alt-üles lähenemisviis vajab nende omavahel kombineerimiseks eraldi põhilisi mooduleid.
  4. Ülalt-alla lähenemine võib põhjustada koondamist, samas kui alt-üles lähenemisviis ei sisalda koondatud teavet.
  5. Menetlusprogrammeerimiskeeled nagu Fortran, COBOL ja C järgivad ülalt-alla lähenemist. Seevastu objekt-orienteeritud programmeerimiskeeled nagu C ++, Java, C #, Perl, Python järgivad alt-üles lähenemisviisi.
  6. Testimisel kasutatakse eelnevalt alt-üles lähenemisviisi. Vastupidi, mooduldokumentatsioonis, testijuhtumite loomises, silumine, jne on kasutatud ülalt-alla lähenemisviisi.

Järeldus

Ülalt-alla lähenemine ja alt-üles lähenemisviis on algoritmi kavandamise meetodid, kus ülalt-alla on tavapärane lähenemine, mis lagundab süsteemi kõrgetasemelisest spetsifikatsioonist madalataseme spetsifikatsioonile. Teisest küljest on alt-üles lähenemisviis tõhusam ja töötab vastupidises suunas, kui algupärased komponendid on algselt kavandatud ja läksid kõrgemale tasemele.

Ülalt-alla lähenemine rõhutab alammoodulite isoleerimist (tähistab moodulite vahelist madalat sidet), samas ignoreerib kommunikatsiooni- ja taaskasutatavuse kontseptsiooni. Kuigi alt-üles lähenemisviisi puhul on oluliseks teguriks teabe peitmine ja taaskasutatavus.

Top