En komplisert algoritme er delt inn i små deler som kalles moduler, og splittingsprosessen er kjent som modularisering . Modularisering reduserer komplikasjonene ved å designe en algoritme og gjør prosessen enklere å designe og implementere. Modulær programmering er teknikken for å designe og skrive et program i form av funksjonene der hver funksjon er forskjellig fra hverandre og fungerer uavhengig. Innholdet i funksjonene er sammenhengende på en måte, og det er en lav kobling mellom modulene.
Sammenligningstabel
Grunnlag for sammenligning | Topp-ned tilnærming | Bottom-up tilnærming |
---|---|---|
grunn~~POS=TRUNC | Bryter det store problemet i mindre delproblemer. | Løser det grunnleggende lavnivåproblemet og integrerer dem i en større. |
Prosess | Undermodulene analyseres ensartet. | Undersøk hvilke data som skal innkapsles, og innebærer at begrepet informasjon skjules. |
Kommunikasjon | Ikke nødvendig i topp-ned tilnærming. | Trenger en bestemt mengde kommunikasjon. |
Overflødighet | Inneholder overflødig informasjon. | Redundans kan elimineres. |
Programmerings språk | Struktur / prosessorientert programmeringsspråk (dvs. C) følger topp-ned-tilnærmingen. | Objektorienterte programmeringsspråk (som C + +, Java, etc.) følger bottom-up-tilnærmingen. |
Hovedsakelig brukt i | Modul dokumentasjon, oppretting av test tilfelle, kode implementering og feilsøking. | testing |
Definisjon av Top-down-tilnærming
Top-down- tilnærmingen deler i utgangspunktet et komplekst problem eller algoritme i flere mindre deler (moduler). Disse modulene dekomponeres videre til den resulterende modulen er det grunnleggende programmet i det vesentlige forstås og kan ikke videre dekomponeres. Etter å ha oppnådd et visst grad av modularitet, er dekomponeringen av modulene opphørt. Top-down tilnærmingen er trinnvis prosessen med å bryte den store programmodulen til enklere og mindre moduler for å organisere og kode program på en effektiv måte. Strømmen av kontroll i denne tilnærmingen er alltid i nedadgående retning. Top-down tilnærming er implementert i "C" programmeringsspråket ved å bruke funksjoner.
Således begynner topp-down-metoden med abstrakt design og deretter i rekkefølge er denne utformingen raffinert for å skape mer konkrete nivåer inntil det ikke er krav om ytterligere forfining.
Definisjon av bottom-up-tilnærming
Bunn-opp tilnærmingen fungerer på motsatt måte til topp-ned tilnærming. I begynnelsen inkluderer den utformingen av de mest fundamentale delene som deretter kombineres for å gjøre modulet på høyere nivå. Denne integrasjonen av submoduler og moduler i modulet på høyere nivå utføres gjentatte ganger til den nødvendige komplette algoritmen er oppnådd.
Bottom-up tilnærming fungerer med lag av abstraksjon. Den primære anvendelsen av bottom-up-tilnærmingen er testing, da hver grunnleggende modul først testes før sammenslåing til den større. Testen utføres ved hjelp av visse lavnivåfunksjoner.
Viktige forskjeller mellom topp-ned og bunn-opp tilnærming
- Top-down-tilnærming nedbryter den store oppgaven i mindre deltakere, mens bottom-up-tilnærmingen først velger å løse de ulike grunnleggende delene av oppgaven direkte, og deretter kombinere disse delene til et helt program.
- Hver submodule behandles separat i en topp-ned-tilnærming. I motsatt fall implementerer bottom-up-tilnærmingen konseptet med informasjonen gjemmer seg ved å undersøke dataene som skal innkapsles.
- De forskjellige modulene i topp-ned tilnærming krever ikke mye kommunikasjon. Tvert imot trenger bottom-up tilnærming samspillet mellom de separate grunnleggende modulene for å kombinere dem senere.
- Top-down tilnærming kan gi redundans, mens bottom-up tilnærming ikke inneholder overflødig informasjon.
- De prosedyriske programmeringsspråkene som Fortran, COBOL og C følger en topp-ned-tilnærming. I motsetning henger objekt-orienterte programmeringsspråk som C ++, Java, C #, Perl, Python ned og ned tilnærming.
- Bottom-up tilnærming er tidligere brukt i testing. Omvendt benyttes top-down-tilnærmingen i moduldokumentasjon, oppretting av test tilfeller, feilsøking osv.
Konklusjon
Top-down tilnærming og bottom-up tilnærming er algoritmen design metoder hvor top-down er en konvensjonell tilnærming som dekomponerer systemet fra høyt nivå spesifikasjon til lavt nivå spesifikasjon. På den annen side er bottom-up-tilnærmingen mer effektiv og virker på en invers måte hvor de primitive komponentene er utformet først og deretter videreført til høyere nivå.
Top-down-tilnærmingen legger vekt på isolering av submodulene (betegner den lave koblingen mellom modulene) mens den ignorerer identifiseringen av kommunikasjons- og gjenbrukskonsept. Mens du er i bottom-up-tilnærmingen, er informasjonen gjemt og gjenbrukbarhet de fremtredende faktorene.