Hva er prosessuell abstraksjon?


Beste svaret

Prosedural abstraksjon er når vi vet hva en metode eller prosedyre gjør, eller hva vi vil at den skal gjøre, men vi vet ikke hvordan det gjør det.

Akkurat nå skriver jeg dette svaret i Quora, og når jeg klikker Send, forventer jeg at det vises i feeden min. Jeg vet at det finnes metoder som godtar svaret mitt, lagrer det et sted. Men jeg aner egentlig ikke hvordan den implementeres.

Hvis vi bruker dette på Java, bruker du en hel del metoder, fra de forskjellige Java-pakkene. For eksempel hvis jeg vil skrive ut strengen til en streng

String str=”Hello world”

String s1=str.substring(0,6);

Nå i koden ovenfor, vil jeg at substring-metoden skal returnere meg delen fra streng fra start til sjette tegn. Men hvordan implementerer substring-metoden denne funksjonaliteten, har jeg egentlig ingen anelse om, og det er heller ikke viktig for meg.

Svar

abstraksjon er et generelt begrep som dekker mange forskjellige ting .

HTML er et basisspråk, og hvis du trenger å gjøre webutvikling, må du lære det med mindre du planlegger å lage sider med generell bruk med svært liten funksjonell kapasitet.

På et tidspunkt med tiden må du se på HTML og finne ut hva abstraksjonen din gjorde galt.

abstraksjon (generelt):

  • De gjør ting langsommere, abstraksjonslag har en tendens til har en kostnad i prosesseringshastigheten.
  • Dette er kanskje ikke en stor sak for mange, men det kan begynne å legge seg raskt sammen.
  • Jeg skrev en gang om en applikasjon skrevet i Ruby som var så abstrakt tok det timer å laste inn en liste (bokstavelig talt), jeg skrev den om i java og gjorde den om lag 3 minutter, la inn noen nøkler til databasen og førte den ned til noen sekunder.
  • En PHP side det tok to minutter å laste inn, etter å ha skrevet det om i PHP tok det 3–4 sekunder, og rotet med databasen droppet det ned til 2 sekunder. (90\% av lastetiden var rammen etter det, noe som betyr et dårlig rammeverk).
  • Den vanlige faktoren, jeg reduserer abstraksjonsnivået betydelig. Python er et skriptspråk, som PHP som betyr at det må gjenoppbygge abstraksjonslagene hver gang, dette kan bli kostbart.
  • det kan gjøre ting vanskeligere å feilsøke / følge. Abstraksjon gjør generelt enheten (klasser eller metoder) lettere å følge, men vanskeligere å se hvordan de knytter seg til helheten (Integrasjon), da slike feil har en tendens til å bevege seg ut og bli vanskeligere å finne.
  • På pluss, feil er mindre sannsynlig. Selv om de pleier å være mer spektakulære når de blir funnet.
  • Det har en tendens til å gjøre utviklingen raskere (til et punkt), men for mye kan redusere utviklingen, tunge rammer som Zend framework (PHP), Spring (Java) er gode eksempler på tunge rammer som i utgangspunktet er overkonstruerte.

Jeg håper dette gir deg en ide.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *