À quelle fréquence utilisez-vous dans le monde pseudocode réel?

voix
9

Retour au collège, seule l'utilisation du code pseudo a été évangélisé plus OOP dans mon programme. Tout comme des commentaires (et autres prônaient « meilleures pratiques »), je trouve que dans le temps de crise psuedocode a souvent été négligée. Donc, ma question est ... qui utilise réellement beaucoup de temps? Ou utilisez-vous que quand un algorithme est vraiment difficile à conceptualiser entièrement dans votre tête? Je suis intéressé par les réponses de tout le monde: mouillé derrière les oreilles développeurs juniors à grisonnant qui étaient autour de vétérinaires à l'époque de cartes perforées.

Quant à moi personnellement, je ne l'utilise la plupart du temps pour les choses difficiles.

Créé 11/12/2008 à 19:53
source utilisateur
Dans d'autres langues...                            


14 réponses

voix
5

J'utiliser pseudocode lorsque vous êtes loin d'un ordinateur et seulement du papier et un stylo. Il ne fait pas beaucoup de sens à se soucier de la syntaxe du code qui ne compilera pas (ne peut pas compiler du papier).

Créé 11/12/2008 à 19:58
source utilisateur

voix
15

Je l'utilise tout le temps. Chaque fois que je dois expliquer une décision de conception, je vais l'utiliser. Parler au personnel non technique, je vais l'utiliser. Il a une application non seulement pour la programmation, mais pour expliquer comment tout est fait.

Travailler avec une équipe sur plusieurs plates-formes (Java frontaux avec un back-end COBOL, dans ce cas), il est beaucoup plus facile d'expliquer comment un peu de code fonctionne en utilisant pseudocode que de montrer le code réel.

Lors de l'étape de conception, est particulièrement utile pseudocode car il vous aide à voir la solution et si oui ou non il est possible. J'ai vu des dessins qui avaient l'air très élégant, pour essayer de les mettre en œuvre et réaliser que je ne pouvais même pas générer pseudocode. Se est avéré, le concepteur n'a jamais essayé de penser à une mise en œuvre théorique. Avait-il essayé d'écrire une pseudo-code représentant sa solution, je ne l'aurais jamais dû perdre 2 semaines à essayer de comprendre pourquoi je ne pouvais pas le faire fonctionner.

Créé 11/12/2008 à 19:59
source utilisateur

voix
1

La plupart du temps pour utiliser Nutting sur le code vraiment complexe, ou en expliquant le code à d'autres développeurs ou soit les développeurs non qui comprennent le système.

Je également des diagrammes ou coule diagrammes de type uml lorsque vous essayez de faire ci-dessus aussi ...

Créé 11/12/2008 à 20:00
source utilisateur

voix
1

Je l'utilise généralement quand le développement multiple si les états d'autre qui sont imbriquées, ce qui peut être source de confusion.

De cette façon, je ne suis pas besoin de revenir en arrière et documenter depuis sa déjà été fait.

Créé 11/12/2008 à 20:02
source utilisateur

voix
1

Assez rarement, même si je le document souvent une méthode avant d'écrire le corps de celui-ci.

Toutefois, si j'aide un autre développeur avec la façon d'aborder un problème, je vais souvent écrire un e-mail avec une solution pseudo-code.

Créé 11/12/2008 à 20:02
source utilisateur

voix
5

Je l'utilise presque toujours de nos jours lors de la création des routines non triviales. Je crée le code pseudo sous forme de commentaires, et de continuer à le développer jusqu'à ce que j'arriver au point que je peux écrire le code équivalent en dessous. J'ai trouvé cela accélère considérablement le développement, réduit le « il suffit d'écrire le code » syndrome qui nécessite souvent réécritures des choses qui ne sont pas considérés comme à l'origine, il vous oblige à réfléchir à l'ensemble du processus avant d'écrire le code réel, et sert de bonne base pour la documentation du code après avoir été écrit.

Créé 11/12/2008 à 20:02
source utilisateur

voix
1

Je ne l'utilise pas du tout pseudocode. Je suis plus à l'aise avec la syntaxe des langages de style C que je suis avec pseudocode.

Ce que je fais assez souvent à des fins de conception est essentiellement un style de décomposition fonctionnelle de codage.

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

Ce qui, dans un monde idéal, finirait par se transformer en code de travail que les méthodes deviennent de plus en plus trivial. Cependant, dans la vraie vie, il y a un diable de beaucoup de refactoring et en repensant la conception.

Nous trouvons cela fonctionne assez bien, comme il est rare que nous rencontrons un algorithme qui est à la fois: Incroyablement complexe et difficile à coder et pas mieux résolu en utilisant UML ou une autre technique de modélisation.

Créé 11/12/2008 à 20:03
source utilisateur

voix
2

Si je travaille sur quelque chose de complexe, je l'utilise beaucoup, mais je l'utilise sous forme de commentaires. Par exemple, je vais Stub la procédure, et de mettre à chaque étape, je pense que je dois faire. Comme j'écrire le code, je vais laisser les commentaires: il dit ce que je voulais faire.

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;
Créé 11/12/2008 à 20:05
source utilisateur

voix
2

Je ne l'ai jamais, pas même une fois, besoin d'écrire le pseudo-code d'un programme avant de l'écrire.

Cependant, parfois j'ai dû écrire pseudocode après l' écriture de code, ce qui se produit généralement quand je suis en train de décrire la mise en œuvre de haut niveau d'un programme pour obtenir quelqu'un pour accélérer avec le nouveau code dans un court laps de temps. Et par « la mise en œuvre de haut niveau », je veux dire une ligne de pseudocode décrit quelque 50 lignes de C #, par exemple:

Coredumps, un tas de fichiers XML dans un dossier et exécute le process.exe
  exécutable avec quelques paramètres de ligne de commande.

Le process.exe lit chaque fichier
    Chaque fichier est lu ligne par ligne
    mots uniques sont retirés du fichier stocké dans une base de données
    Le fichier est supprimé lorsque son traitement terminé

Ce genre de pseudo-code est assez bon pour décrire à peu près 1000 lignes de code, et assez bon pour informer avec précision un débutant ce que le programme est en train de faire.

À de nombreuses reprises quand je ne sais pas comment résoudre un problème, je trouve le dessin me fait mes modules sur un tableau blanc en termes de très haut niveau pour obtenir une image claire de la façon dont leur interaction, le dessin d'un prototype d'un schéma de base de données, le dessin d'un structure de données (en particulier des arbres, des graphiques, des tableaux, etc.) pour obtenir une bonne poignée sur la façon de traverser et de le traiter, etc.

Créé 11/12/2008 à 20:11
source utilisateur

voix
1

Je ne l'utilise ou utilisé.

J'essaie toujours de prototype dans une vraie langue quand je dois faire quelque chose de complexe, généralement writting tests unitaires premier à comprendre ce que le code doit faire.

Créé 11/12/2008 à 20:14
source utilisateur

voix
3

I et les autres développeurs de mon équipe l'utilise tout le temps. Dans des e-mails, tableau blanc, ou tout simplement dans confersation. Psuedocode est tought pour vous aider à penser la façon dont vous avez besoin, pour être en mesure de programmer. Si vous avez vraiment unstand psuedocode vous pouvez prendre à presque toutes les langues de programmation, car la principale différence entre tous est la syntaxe.

Créé 11/12/2008 à 20:18
source utilisateur

voix
2

Je l'utilise pour expliquer les concepts. Il aide à couper les morceaux inutiles du langage afin que les exemples n'ont que les détails pertinents à la question posée.

Je l'utilise une bonne quantité sur StackOverflow.

Créé 11/12/2008 à 20:22
source utilisateur

voix
2

Je ne l'utilise pseudocode comme il est enseigné à l'école, et pas dans un temps très long.

J'utilise des descriptions d'algorithmes anglais lorsque la logique est assez complexe pour le justifier; ils sont appelés « commentaires ». ;-)

pour expliquer les choses aux autres, ou des choses de travail sur papier, j'utiliser des diagrammes, autant que possible - le plus simple est le mieux

Créé 11/12/2008 à 20:52
source utilisateur

voix
2

Steve McConnel code complet , dans le chapitre 9, « Le processus de programmation pseudocode » propose une approche intéressante: lors de l' écriture d' une fonction plus que quelques lignes, utilisez pseudocode simple (sous forme de commentaires) pour décrire ce que les besoins fonction / procédure faire avant d' écrire le code réel qu'il fait. Les commentaires de pseudocode peuvent alors devenir commentaires réels dans le corps de la fonction.

J'ai tendance à utiliser pour toute fonction qui fait plus que ce qui peut être compris rapidement en regardant un écran complet (max) du code. Il fonctionne particulièrement bien si vous êtes déjà utilisée pour séparer le corps de votre fonction dans le code « paragraphes » - unités de code sémantiquement connexes séparés par une ligne blanche. Ensuite, le travail « commentaires pseudocode » comme « têtes » à ces paragraphes.

PS: Certaines personnes peuvent faire valoir que « vous ne devriez pas commenter ce, mais pourquoi, et seulement quand il est pas trivial de comprendre pour un lecteur qui sait mieux que vous la langue en question » . Je suis généralement d' accord avec cela, mais je fais une exception pour le PPP. Les critères de la présence et la forme d'un commentaire ne doivent pas être gravées dans le marbre, mais finalement régies par sage, une application bien pensée de bon sens de toute façon. Si vous vous trouvez en refusant d'essayer une légère plié à une « règle » subjective juste pour le plaisir de le faire, vous pourriez avoir besoin de prendre du recul et de réaliser si vous n'êtes pas face assez critique.

Créé 31/08/2011 à 03:33
source utilisateur

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