Hvor ofte bruker du pseudokode i den virkelige verden?

stemmer
9

Tilbake i college, ble bare bruk av pseudokode evangelisert mer enn OOP i læreplanen min. Akkurat som kommenterer (og andre forkynte 'beste praksis'), fant jeg ut at i knase tid psuedocode ble ofte neglisjert. Så mitt spørsmål er ... som faktisk bruker det mye av tiden? Eller har du bare bruke den når en algoritme er veldig vanskelig å konseptualisere helt i hodet ditt? Jeg er interessert i svar fra alle: våt-bak-ører junior utviklere å gråsprengt veterinærer som var rundt tilbake i hullkort dager.

Som for meg personlig, jeg stort sett bare bruker det for vanskelig ting.

Publisert på 11/12/2008 klokken 18:53
kilden bruker
På andre språk...                            


14 svar

stemmer
5

Jeg bruker pseudokode når du er borte fra en datamaskin og bare ha papir og penn. Det gjør ikke mye fornuftig å bekymre syntaks for kode som ikke vil kompilere (kan ikke kompilere papir).

Svarte 11/12/2008 kl. 18:58
kilden bruker

stemmer
15

Jeg bruker det hele tiden. Hver gang jeg må forklare et design beslutning, vil jeg bruke det. Å snakke med ikke-teknisk personale, vil jeg bruke det. Det har programmet ikke bare for programmering, men for å forklare hvordan noe blir gjort.

Arbeide med et team på flere plattformer (Java front-end med COBOL backend, i dette tilfellet) er det mye lettere å forklare hvordan en bit av koden fungerer ved hjelp av pseudo enn det er å vise reell kode.

Under designfasen, er pseudo spesielt nyttig fordi det hjelper deg å se løsningen og hvorvidt det er mulig. Jeg har sett noen design som så veldig elegant, bare for å prøve å gjennomføre dem, og innser at jeg ikke engang kunne generere pseudokode. Viste seg, hadde designeren aldri prøvd å tenke på en teoretisk gjennomføring. Hadde han prøvd å skrive opp noen pseudokode som representerer sin løsning, jeg aldri ville ha hatt å kaste bort 2 uker prøver å finne ut hvorfor jeg ikke kunne få det til å fungere.

Svarte 11/12/2008 kl. 18:59
kilden bruker

stemmer
1

Stort sett bruker det for Nutting ut veldig kompleks kode, eller når forklare koden til enten andre utviklere eller ikke utviklere som forstår systemet.

Jeg også flyte diagrammer eller UML typen diagrammer når du prøver å gjøre ovenfor også ...

Svarte 11/12/2008 kl. 19:00
kilden bruker

stemmer
1

Jeg bruker vanligvis det når utvikle multippel hvis annet uttalelser som er nestet som kan være forvirrende.

Denne måten jeg ikke trenger å gå tilbake og dokumentere det siden den allerede er gjort.

Svarte 11/12/2008 kl. 19:02
kilden bruker

stemmer
1

Ganske sjelden, selv om jeg ofte dokumentere en metode før du skriver kroppen av det.

Men hvis jeg hjelper en annen utvikler med hvordan å nærme seg et problem, vil jeg ofte skrive en e-post med en pseudokode løsning.

Svarte 11/12/2008 kl. 19:02
kilden bruker

stemmer
5

Jeg nesten alltid bruke det i dag når du oppretter alle ikke-trivielle rutiner. Jeg lage pseudokode som kommentarer, og fortsette å utvide det før jeg kommer til det punktet at jeg kan bare skrive det samme koden under det. Jeg har funnet dette betydelig raskere utvikling, reduserer "bare skrive kode" syndrom som ofte krever omskrivninger for ting som ikke var opprinnelig betraktet som det tvinger deg til å tenke gjennom hele prosessen før du skriver selve koden, og fungerer som god base for kode dokumentasjon etter at den er skrevet.

Svarte 11/12/2008 kl. 19:02
kilden bruker

stemmer
1

Jeg bruker ikke pseudokode i det hele tatt. Jeg er mer komfortabel med syntaksen til C-stil språk enn jeg er med pseudokode.

Hva jeg gjør ganske ofte for design formål er egentlig en funksjonell nedbrytning stil av koding.

public void doBigJob( params )
{
    doTask1( params);
    doTask2( params);
    doTask3( params);
}
private void doTask1( params)
{
    doSubTask1_1(params);
    ...
}

Som i en ideell verden ville til slutt slå ut i arbeids kode som metoder blir mer og mer trivielle. Men i det virkelige liv, det er en pokker for mye refactoring og tenke nytt design.

Vi finner dette fungerer godt nok, så sjelden vi kommer over en algoritme som er både: Utrolig kompleks og vanskelig å kode og ikke bedre løses ved hjelp av UML eller annen modelleringsteknikk.

Svarte 11/12/2008 kl. 19:03
kilden bruker

stemmer
2

Hvis jeg jobber ut noe komplisert, jeg bruker det mye, men jeg bruker det som kommentarer. For eksempel, vil jeg kategorisert ut prosedyren, og satt i hvert trinn jeg tror jeg trenger å gjøre. Som jeg da skrive koden, vil jeg la kommentarene: det står hva jeg prøver å gjøre.

procedure GetTextFromValidIndex (input int indexValue, output string textValue)
// initialize
// check to see if indexValue is within the acceptable range
//    get min, max from db
//    if indexValuenot between min and max
//       then return with an error
// find corresponding text in db based on indexValue
// return textValue
   return "Not Written";
end procedure;
Svarte 11/12/2008 kl. 19:05
kilden bruker

stemmer
2

Jeg har aldri, ikke en eneste gang, for å skrive pseudokode av et program før du skriver det.

Men det hender jeg har måttet skrive pseudokode etter å skrive kode, noe som vanligvis skjer når jeg prøver å beskrive høyt nivå implementering av et program for å få noen opp til hastighet med ny kode i løpet av kort tid. Og ved "high-level implementering", mener jeg en linje av pseudo beskriver 50 eller så linjer med C #, for eksempel:

Core-dumper en haug med XML-filer i en mappe og driver process.exe
  kjørbar med et par command parametere.

Den process.exe leser hver fil
    Hver fil blir lest linje for linje
    Unike ord er trukket ut av filen er lagret i en database
    Fil slettes når det er ferdig behandling

Den slags pseudokode er god nok til å beskrive omtrent 1000 linjer med kode, og god nok til å nøyaktig informere en nybegynner hva programmet faktisk gjør.

Ved mange anledninger når jeg ikke vet hvordan du skal løse et problem, jeg faktisk finne meg selv å tegne mine moduler på en tavle i svært høyt nivå når det gjelder å få et klart bilde av hvordan deres samspill, tegne en prototype av et databaseskjema, tegne en datastruktur (spesielt trær, grafer, matriser, etc) for å få et godt håndtak på hvordan å traversere og behandle den, etc.

Svarte 11/12/2008 kl. 19:11
kilden bruker

stemmer
1

Jeg bruker aldri eller brukt det.

Jeg prøver alltid å prototype på et ekte språk når jeg trenger å gjøre noe komplisert, vanligvis writting enhet tester først å finne ut hva koden trenger å gjøre.

Svarte 11/12/2008 kl. 19:14
kilden bruker

stemmer
3

Jeg og de andre utviklere på laget mitt bruker det hele tiden. I e-post, whiteboard, eller bare i confersation. Psuedocode er tought å hjelpe deg å tenke på den måten du må, for å kunne programmere. Hvis du virkelig unstand psuedocode kan du ta på nesten alle programmeringsspråk fordi den største forskjellen mellom dem alle er syntaks.

Svarte 11/12/2008 kl. 19:18
kilden bruker

stemmer
2

Jeg bruker det når forklare konsepter. Det hjelper å trimme ut unødvendige biter av språket slik at eksemplene bare ha detaljene relevant for spørsmålet blir stilt.

Jeg bruker det en god del på Stackoverflow.

Svarte 11/12/2008 kl. 19:22
kilden bruker

stemmer
2

Jeg bruker ikke pseudokode som det blir undervist i skolen, og har ikke i svært lang tid.

Jeg bruker engelske beskrivelser av algoritmer når logikken er kompleks nok til å rettferdiggjøre det; de er kalt "kommentarer". ;-)

når forklare ting til andre, eller trene ting på papir, jeg bruker diagrammer så mye som mulig - jo enklere jo bedre

Svarte 11/12/2008 kl. 19:52
kilden bruker

stemmer
2

Steve McConnel er Code Complete , i kapittel 9, "The Pseudo Programmering Process" foreslår en interessant tilnærming: når du skriver en funksjon lenger enn noen få linjer, bruke enkle pseudokode (i form av kommentarer) å skissere hva funksjonen / prosedyre må gjøre før du skriver selve koden som gjør det. Pseudokode kommentarer kan da bli faktiske kommentarer i kroppen av funksjonen.

Jeg pleier å bruke dette for enhver funksjon som gjør mer enn det som kan raskt forstås ved å se på en skjerm (max) med kode. Det fungerer spesielt godt hvis du allerede er vant til å skille funksjon kroppen i koden "avsnitt" - enheter av semantisk relatert kode adskilt av en blank linje. Da "pseudo kommentarer" arbeid som "overskrifter" til disse avsnittene.

PS: Noen mennesker kan hevde at "du bør ikke kommentere hva, men hvorfor, og bare når det ikke er trivielt å forstå for en leser som kjenner det aktuelle språket bedre enn deg" . Jeg generelt enig i dette, men jeg gjør et unntak for PPP. Kriteriene for tilstedeværelse og form av en kommentar bør ikke spikret, men til slutt styrt av kloke, godt gjennomtenkt bruk av sunn fornuft uansett. Hvis du finner deg selv nekter å prøve ut en liten bøyd til en subjektiv "regelen" bare for moro skyld, må du kanskje gå tilbake og innse hvis du ikke står overfor den kritisk nok.

Svarte 31/08/2011 kl. 02:33
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more