Preporučeno, 2019

Izbor Urednika

Razlika između pristupa odozgo prema dolje i odozdo prema gore

Algoritmi su dizajnirani pomoću dva pristupa koji su top-down i bottom-up pristup. U pristupu odozgo prema dolje, kompleksni modul je podijeljen na podmodule. S druge strane, pristup odozdo prema gore počinje s elementarnim modulima, a zatim ih dalje kombinira. Prethodna svrha algoritma je upravljanje podacima sadržanim u strukturi podataka. Drugim riječima, algoritam se koristi za izvođenje operacija na podacima unutar struktura podataka.

Komplicirani algoritam je podijeljen na male dijelove koji se nazivaju moduli, a proces cijepanja poznat je kao modularizacija . Modularizacija značajno smanjuje komplikacije izrade algoritma i olakšava njegovo oblikovanje i implementaciju. Modularno programiranje je tehnika projektiranja i pisanja programa u obliku funkcija u kojima se svaka funkcija razlikuje i funkcionira neovisno. Sadržaj u funkcijama je kohezivan na način, a postoji nizak spoj između modula.

Tablica usporedbe

Osnova za usporedbuPristup odozgo prema doljePristup odozdo prema gore
Osnovni, temeljniRazbija masivni problem na manje podprobleme.Rješava temeljni problem niže razine i integrira ih u veći.
PostupakSubmoduli su solitarno analizirani.Ispitajte koje podatke treba obuhvatiti i podrazumijevamo skrivanje informacija.
KomunikacijaNije potrebno u pristupu od vrha prema dolje.Potrebna je određena količina komunikacije.
redundancijaSadrži suvišne informacije.Redundancija se može eliminirati.
Programski jeziciStrukturno / proceduralno orijentirani programski jezici (tj. C) prati top-down pristup.Objektno-orijentirani programski jezici (poput C ++, Java, itd.) Prate pristup odozdo prema gore.
Uglavnom se koristi uDokumentacija modula, izrada testnog slučaja, implementacija koda i ispravljanje pogrešaka.Testiranje

Definicija pristupa od vrha prema dolje

Top-down pristup u osnovi dijeli složeni problem ili algoritam na više manjih dijelova (modula). Ovi moduli se dalje dekomponiraju sve dok se rezultirajući modul ne pretvori u temeljni program koji se u biti razumije i ne može se dalje dekomponirati. Nakon postizanja određene razine modularnosti, prestaje razgradnja modula. Top-down pristup je postupni proces razbijanja velikog programskog modula u jednostavniji i manji moduli za organiziranje i kodiranje programa na učinkovit način. Tijek kontrole u ovom pristupu je uvijek u smjeru prema dolje. Top-down pristup je implementiran u “C” programskom jeziku korištenjem funkcija.

Prema tome, metoda od vrha prema dolje započinje sa apstraktnim dizajnom, a zatim se ovaj dizajn sekvencijalno rafinira kako bi se stvorile konkretnije razine dok ne bude potrebe za dodatnim poboljšanjem.

Definicija pristupa odozdo prema gore

Pristup odozdo prema gore djeluje upravo suprotno od pristupa od vrha prema dolje. U početku, to uključuje projektiranje najosnovnijih dijelova koji se zatim kombiniraju kako bi napravili modul više razine. Ova integracija podmodula i modula u modul više razine se ponavlja sve dok se ne dobije potreban potpuni algoritam.

Pristup odozdo prema gore funkcionira sa slojevima apstrakcije. Primarna primjena pristupa odozdo prema gore je testiranje jer se svaki temeljni modul najprije testira prije spajanja s većim. Testiranje se obavlja pomoću određenih funkcija niskih razina.

Ključne razlike između pristupa odozgo prema dolje i odozdo prema gore

  1. Top-down pristup razgrađuje veliki zadatak na manje podzadatke, dok pristup odozdo prema gore odabire rješavanje različitih temeljnih dijelova zadatka izravno zatim kombinira te dijelove u cijeli program.
  2. Svaki podmodul se zasebno obrađuje u pristupu odozgo prema dolje. Nasuprot tome, pristup odozdo prema gore provodi koncept skrivanja informacija proučavanjem podataka koje treba uklopiti.
  3. Različiti moduli u pristupu odozgo prema dolje ne zahtijevaju mnogo komunikacije. Naprotiv, pristup odozdo prema gore zahtijeva interakciju između zasebnih temeljnih modula kako bi se kasnije kombinirali.
  4. Pristup odozgo prema dolje može proizvesti zalihost, dok pristup odozdo prema gore ne uključuje suvišne informacije.
  5. Postupni jezici za programiranje kao što su Fortran, COBOL i C slijede pristup odozgo prema dolje. Nasuprot tome, objektno-orijentirani programski jezici poput C ++, Java, C #, Perl, Python poštuju pristup odozdo prema gore.
  6. Pristup odozdo prema gore korišten je u testiranju. Nasuprot tome, pristup odozgo prema dolje koristi se u dokumentaciji modula, stvaranju probnog slučaja, otklanjanju pogrešaka itd..

Zaključak

Top-down pristup i bottom-up pristup su metode projektiranja algoritma gdje je top-down konvencionalni pristup koji razgrađuje sustav od specifikacija na visokoj razini do specifikacija na niskoj razini. S druge strane, pristup odozdo prema gore djelotvorniji je i djeluje inverzno, pri čemu su primitivne komponente prvo dizajnirane, a zatim prešle na višu razinu.

Pristup odozgo prema dolje naglašava izolaciju podmodula (označava nisku vezu između modula), dok zanemaruje identifikaciju koncepta komunikacije i ponovnog korištenja. Dok su u pristupu odozdo prema gore, skrivanje informacija i ponovno korištenje istaknuti čimbenici.

Top