Come spesso si usa pseudocodice nel mondo reale?

voti
9

Torna al college, solo l'uso di pseudo codice è stata evangelizzata più di OOP nel mio curriculum. Proprio come commentando (e altri predicati 'migliori prassi'), ho scoperto che in tempo di crisi psuedocodarlo è stato spesso trascurato. Quindi la mia domanda è ... chi lo utilizza un sacco di tempo? O si usa solo quando un algoritmo è davvero difficile da concettualizzare tutto nella tua testa? Sono interessato a risposte da parte di tutti: wet-dietro le orecchie sviluppatori junior per brizzolato veterinari che erano in giro nei giorni schede perforate.

Per quanto mi riguarda personalmente, io per lo uso solo per la roba difficile.

È pubblicato 11/12/2008 alle 19:53
fonte dall'utente
In altre lingue...                            


14 risposte

voti
5

Io uso pseudocodice quando si è lontani da un computer e solo avere carta e penna. Non ha molto senso preoccuparsi della sintassi per il codice che non viene compilato (non può compilare la carta).

Risposto il 11/12/2008 a 19:58
fonte dall'utente

voti
15

Io lo uso per tutto il tempo. Ogni volta che devo spiegare una decisione di progettazione, lo userò. Parlando con il personale non tecnico, lo userò. Ha applicazione non solo per la programmazione, ma per spiegare come tutto ciò è fatto.

Lavorare con un team su più piattaforme (Java front-end con un backend COBOL, in questo caso) è molto più facile spiegare come un po 'di codice funziona utilizzando pseudocodice di quanto lo sia per mostrare il codice vero e proprio.

Durante la fase di progettazione, pseudocodice è particolarmente utile perché aiuta a vedere la soluzione e se sia o non è fattibile. Ho visto alcuni disegni che sembrava molto elegante, solo per provare per la loro attuazione e rendo conto che non riuscivo nemmeno a generare pseudocodice. Si è rivelato, il progettista non aveva mai provato a pensare a un'implementazione teorica. Se avesse tentato di scrivere un po 'pseudocodice che rappresenta la sua soluzione, non avrei mai dovuto sprecare 2 settimane cercando di capire il motivo per cui non ho potuto farlo funzionare.

Risposto il 11/12/2008 a 19:59
fonte dall'utente

voti
1

Per lo più usarlo per Nutting fuori il codice molto complesso, o per spiegare il codice per entrambi gli altri sviluppatori o non sviluppatori che capiscono il sistema.

Ho anche il flusso di diagrammi o diagrammi UML di tipo quando si cerca di fare in precedenza anche ...

Risposto il 11/12/2008 a 20:00
fonte dall'utente

voti
1

Io generalmente lo uso quando si sviluppano più se else nidificati che possono essere fonte di confusione.

In questo modo non ho bisogno di tornare indietro e documentare fin dalla sua già stato fatto.

Risposto il 11/12/2008 a 20:02
fonte dall'utente

voti
1

Abbastanza raramente, anche se spesso mi documentare un metodo prima di scrivere il corpo di esso.

Tuttavia, se sto aiutando un altro sviluppatore con il modo di affrontare un problema, io scrivo spesso una e-mail con una soluzione pseudocodice.

Risposto il 11/12/2008 a 20:02
fonte dall'utente

voti
5

Ho quasi sempre lo uso al giorno d'oggi per la creazione di qualsiasi routine non banali. Creo la pseudo codice come commenti, e continuano ad espandersi fino a quando ho arrivare al punto che posso solo scrivere il codice equivalente di sotto di essa. Ho trovato questo accelera in modo significativo lo sviluppo, riduce la sindrome "basta scrivere codice" che spesso richiede la riscrittura per cose che non sono stati originariamente considerati come ti costringe a pensare attraverso l'intero processo prima di scrivere codice vero e proprio, e serve come buona base per documentazione del codice dopo che è stato scritto.

Risposto il 11/12/2008 a 20:02
fonte dall'utente

voti
1

Io non uso pseudocodice affatto. Sono più a suo agio con la sintassi dei linguaggi di stile C di me con pseudocodice.

Quello che faccio molto spesso per la progettazione è essenzialmente uno stile di decomposizione funzionale di codifica.

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

Il che, in un mondo ideale, sarebbe alla fine si trasformano in un codice a lavorare come i metodi diventano sempre più banale. Tuttavia, nella vita reale, c'è un diavolo di un sacco di refactoring e di ripensamento del design.

Troviamo questo funziona abbastanza bene, come raramente veniamo attraverso un algoritmo che è al tempo stesso: incredibilmente complesso e difficile da codificare e non meglio risolto utilizzando UML o altra tecnica di modellazione.

Risposto il 11/12/2008 a 20:03
fonte dall'utente

voti
2

Se sto lavorando fuori qualcosa di complesso, lo uso molto, ma lo uso come commenti. Per esempio, io STUB la procedura, e mettere in ogni passo penso che ho bisogno di fare. Mentre poi scrivere il codice, lascio i commenti: dice quello che stavo cercando di fare.

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;
Risposto il 11/12/2008 a 20:05
fonte dall'utente

voti
2

Non ho mai, nemmeno una volta, bisogno di scrivere lo pseudocodice di un programma prima di scriverlo.

Tuttavia, di tanto in tanto ho dovuto scrivere pseudocodice dopo la scrittura di codice, che di solito accade quando sto cercando di descrivere l'implementazione di alto livello di un programma per avere qualcuno al passo con il nuovo codice in un breve lasso di tempo. E per "l'attuazione di alto livello", voglio dire una sola riga di pseudocodice descrive circa 50 linee di C #, ad esempio:

Core dump un gruppo di file XML in una cartella ed esegue il Process.exe
  eseguibile con alcuni parametri da riga di comando.

Il Process.exe legge ogni file
    Ogni file viene letto riga per riga
    parole uniche sono tirati fuori dal file memorizzato in un database
    File viene eliminato quando la sua trasformazione finale

Questo tipo di pseudocodice è abbastanza buono per descrivere circa 1000 linee di codice, e abbastanza per informare con precisione un principiante ciò che il programma è in realtà facendo bene.

In molte occasioni, quando non so come risolvere un problema, io in realtà trovo disegno miei moduli su una lavagna in termini di altissimo livello per avere un quadro chiaro di come la loro interagenti, disegnando un prototipo di uno schema di database, disegnando un datastructure (in particolare alberi, grafici, matrici, ecc) per ottenere una buona maniglia su come attraversare e di processo, etc.

Risposto il 11/12/2008 a 20:11
fonte dall'utente

voti
1

Io non uso mai o usato.

Cerco sempre di prototipo in un linguaggio vero e proprio, quando ho bisogno di fare qualcosa di complesso, di solito scrivendo unit test prima di capire che cosa il codice deve fare.

Risposto il 11/12/2008 a 20:14
fonte dall'utente

voti
3

Io e gli altri sviluppatori nella mia squadra lo uso per tutto il tempo. Nelle e-mail, lavagna, o semplicemente in confersation. Psuedocodarlo è tought per aiutarti a pensare il modo in cui è necessario, per essere in grado di programmare. Se psuedocodarlo davvero unstand si può prendere su a quasi qualsiasi linguaggio di programmazione perché la differenza principale tra tutti è la sintassi.

Risposto il 11/12/2008 a 20:18
fonte dall'utente

voti
2

Io lo uso quando spiega i concetti. Aiuta a ritagliare i pezzi inutili di lingua in modo che gli esempi hanno solo i dettagli pertinenti alla domanda che si pone.

Io lo uso una discreta quantità su StackOverflow.

Risposto il 11/12/2008 a 20:22
fonte dall'utente

voti
2

Io non uso pseudocode come viene insegnato a scuola, e non hanno in un tempo molto lungo.

Io uso le descrizioni in inglese di algoritmi quando la logica è abbastanza complessa per giustificarlo; si chiamano "commenti". ;-)

quando spiegare le cose agli altri, o cose lavorando su carta, io uso i diagrammi, per quanto possibile - il più semplice e meglio

Risposto il 11/12/2008 a 20:52
fonte dall'utente

voti
2

Di Steve McConnel codice completo , nel suo capitolo 9, "La programmazione di processo Pseudocodice" propone un approccio interessante: quando si scrive una funzione più di un paio di righe, utilizzare semplici pseudocodice (sotto forma di commenti) per delineare quale sia la funzione / procedura deve fare prima di scrivere il codice vero e proprio che lo fa. I commenti pseudocodice possono quindi diventare i commenti reali nel corpo della funzione.

Io tendo ad usare questo per qualsiasi funzione che fa più di quello che può essere rapidamente capito, cercando in una schermata (max) di codice. Funziona specialmente bene se si è già abituati a separare il corpo della funzione in codice "paragrafi" - unità di codice semanticamente correlate separati da una riga vuota. Poi il "commenti pseudocodice" lavoro come "headers" a questi paragrafi.

PS: Alcune persone potrebbero obiettare che "non si dovrebbero commentare quello, ma perché, e solo quando non è banale da capire per un lettore che conosce la lingua in questione meglio di te" . Io in genere d'accordo con questo, ma lo faccio fare un'eccezione per il PPP. I criteri per la presenza e la forma di un commento non devono essere fissati in pietra, ma alla fine governati da saggi, applicazione ben pensato di buon senso in ogni caso. Se vi trovate a rifiutare di provare una leggera piegata ad una "regola" soggettiva solo per il gusto di farlo, potrebbe essere necessario fare un passo indietro e rendersi conto se non sei di fronte abbastanza critico.

Risposto il 31/08/2011 a 03:33
fonte dall'utente

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