View Poll Results: Χρησιμοποιείται goto όταν προγραμματίζετε και γιατί;

Voters
11. You may not vote on this poll
  • Όχι, γιατί είμαι προγραμματιστής

    8 72.73%
  • Ναι, γιατί έτσι με βολεύει και στα παπάρια μου τι λένε οι gurus

    3 27.27%
  • Που και που, γιατί δεν μπορώ να το αποφύγω

    0 0%
Results 1 to 7 of 7

Thread: Ερώτηση για προγραμματιστές

  1. #1
    Senior Member
    Join Date
    Oct 2004
    Location
    πώς το αλλάζω αυτό;
    Posts
    397

    Default Ερώτηση για προγραμματιστές

    Αφορμή στάθηκε η συζήτηση στο poll με το ξύρισμα.

    Άποψή μου...
    Σίγουρα κώδικας με πολλά gotos sux, αλλά
    τα break και continue (που χρησιμοποιώ συχνά) δεν είναι μία μορφή goto; Κάτι μου λέει ότι επίτηδες τα ονόμασαν έτσι για να μη λέγονται goto και τους κράζουν.

    Επίσης...
    Αν υπάρχει κώδικας της μορφής:

    if (κάτι) {...}
    ...
    κώδικας
    ...
    πολύς κώδικας
    ...
    μα πάρα πολύς κώδικας
    ...

    και αν δεν ισχύει το "κάτι", δε θέλουμε να τρέξει ο αποκάτω κώδικας; Δεν πετάμε εκεί ένα goto να ξεμπερδεύουμε; Το έχω δει αυτό να γίνεται σε προγράμματα. Και ναι, ήταν σοβαρά προγράμματα (Linux kernel).

    Επειδή και γω δεν είμαι σίγουρος θα περιμένω τις απαντήσεις πριν ψηφίσω. Πάντως σίγουρα δε θα 'ναι το 2.
    Hi, I 'm a signature Virus. Plz add me to your sig and help me conquer the world.
    ---------------------------------------------------------------------------------------------
    Quote Originally Posted by Derren Brown
    Laugh at me at school would they? Soon they will all pay. The fools! I'll teach them - I'll teach them to mock me. No I'll teach them not to mock me. Yes."

  2. #2
    Χορχόδειλας BLiTzER's Avatar
    Join Date
    Jul 2003
    Location
    Black Light District
    Posts
    10,220

    Default Re: Ερώτηση για προγραμματιστές

    Quote Originally Posted by minus6
    και αν δεν ισχύει το "κάτι", δε θέλουμε να τρέξει ο αποκάτω κώδικας;
    An de thes na treksei o "apokato kodikas" xrhsimopoieis kalytera tis synthikes sou
    Life begins at 45°.

  3. #3
    Spider Jerusalem Deggial's Avatar
    Join Date
    Aug 2003
    Location
    The City
    Posts
    12,867

    Default

    Υπάρχει η καταπληκτική ανακάλυψη που λέγεται "δομημένος προγραμματισμός". Και, αποδεδειγμένα, μπορείς να γράψεις ισοδύναμους επαναληπτικούς βρόγχους χωρίς break και continue.

    Εν πάση περιπτώσει, τα break και continue (παρά το γεγονός πως ξεφεύγουν απ΄το δομημένο προγραμματισμό) δε δημιουργούν την ίδια σύγχηση με το GOTO.

    Το δεύτερο παράδειγμα είναι αφελές. Μπορείς να γράψεις πολύ κομψότερους κώδικες αν μεγάλα τμήματα του κώδικα γίνουν αυτόνομες συναρτήσεις και απλώς τις καλείς μέσα σε μία γραμμή.
    No trees were killed to send this message, but a large number of electrons were terribly inconvenienced.

  4. #4
    Custom User Title ari-m's Avatar
    Join Date
    Nov 2004
    Location
    PTR/PL3KL
    Posts
    1,352

    Default

    minus6 skase. den exeis idea apo programmatismo. to goto sucks. kanei mono gia l/s jumps stin assembly.




    RE DOMHMENOS PROGRAMMATISMOS LEME
    i8ela na ksera pws perases arxes glwsswn kai c kai ergastirio c kai java kai .........
    akou kei goto




    mallon 8a psifisw to deytero etsi gia spasimo se olous tous programmatistarades guru
    When did I realize I was God? Well, I was praying and I suddenly realized I was talking to myself.
    Hi, I 'm a signature Virus. Plz add me to your sig and help me conquer the world.
    ALERT! Signature Infected by Unknown Virus.
    Click Me

  5. #5
    Defunct Economist
    Join Date
    Aug 2003
    Location
    Skåne Θρησκεία Ανεξαρτησία
    Posts
    6,135

    Default

    nai

    amma pikso sta goto arxizo kai kratao simioseis
    Practical men, who believe themselves to be quite exempt from any intellectual influences, are usually the slaves of some defunct economist.
    J. M. Keynes.

  6. #6
    Senior Member
    Join Date
    Oct 2004
    Location
    πώς το αλλάζω αυτό;
    Posts
    397

    Default

    Quote Originally Posted by Deggial
    Υπάρχει η καταπληκτική ανακάλυψη που λέγεται "δομημένος προγραμματισμός". Και, αποδεδειγμένα, μπορείς να γράψεις ισοδύναμους επαναληπτικούς βρόγχους χωρίς break και continue.
    Εντάξει, το θέμα όμως είναι να κάνουμε τη ζωή τόσο τη δικιά μας, όσο και αυτού που θα τύχει να δει τον κώδικά μας, εύκολη. Αποδεδειγμένα ούτε for loops χρειάζεσαι, τα κάνεις όλα με Turing Machines.

    Quote Originally Posted by Deggial
    Εν πάση περιπτώσει, τα break και continue (παρά το γεγονός πως ξεφεύγουν απ΄το δομημένο προγραμματισμό) δε δημιουργούν την ίδια σύγχηση με το GOTO.
    Σύμφωνοι.

    Quote Originally Posted by Deggial
    Το δεύτερο παράδειγμα είναι αφελές. Μπορείς να γράψεις πολύ κομψότερους κώδικες αν μεγάλα τμήματα του κώδικα γίνουν αυτόνομες συναρτήσεις και απλώς τις καλείς μέσα σε μία γραμμή.
    Όχι δεν είναι. Και μακάρι να είχα πρόχειρο τον κώδικα να τον έκανα paste. Ήταν πάντως απ' ότι θυμάμαι σε κλήση συστήματος του kernel που είχε να κάνει με memory allocation (v 2.0.κάτι).
    Υπήρχε ένα πρώτο if στο οποίο ελέγχονταν πολύ βασικά πράγματα. Σε μετέπειτα ifs (τα οποία βρισκόντουσαν σε πολύ βαθιές "εσοχές") ελέγχοταν κάποιες άλλες συνθήκες, οι οποίες όμως αν δεν ίσχυαν σε συνδυασμό με τα πρώτα ifs, ο κώδικας δεν είχε νόημα να συνεχίσει. Αυτά που έπρεπε να γίνουν μετά ήταν αρκετά πιο "κάτω".
    Εννοείται βέβαια ότι ο κώδικας μπορούσε να γίνει χωρίς goto. Αλλά θα έπρεπε να συνδυάσεις πάαααρα πολλά ifs και το αποτέλεσμα αμφιβάλλω αν θα ήταν πιο ευανάγνωστο από αυτό που είχα μπροστά μου, και το οποίο απλά είχε 2-3 goto σε κάποια "βαθιά" σημεία.

    Αν θες να το δεις πάντως μπορώ να ψάξω να βρω τον κώδικα. Εγώ ποτέ μου δεν έχω χρησιμοποιήσει goto, αλλά για τέτοιες περιπτώσεις πραγματικά δεν είμαι σίγουρος αν τελικά πρέπει ή όχι.
    Hi, I 'm a signature Virus. Plz add me to your sig and help me conquer the world.
    ---------------------------------------------------------------------------------------------
    Quote Originally Posted by Derren Brown
    Laugh at me at school would they? Soon they will all pay. The fools! I'll teach them - I'll teach them to mock me. No I'll teach them not to mock me. Yes."

  7. #7
    Συνεργάτης Μόσπιτ Ingolemo's Avatar
    Join Date
    Sep 2003
    Posts
    2,250

    Default

    S'oles tis periptwseis pou mporw na skeftw pou h xrhsh goto tha dieukolune kai den tha gamouse th katanohsh tou kwdika, ama valeis synarthseis ginetai polu pio eukola kai katanohta.

    1-2 goto den nomizw na epirreasoun kai polu to kwdika, alla kallitera na apofeygetai giati mporei na ginei mpleksimo.
    People assume that time is a strict progression of cause to effect. But actually, from a non-linear, non-subjective viewpoint, it's more like a big ball of wibbly-wobbly...timey-wimey...stuff.

Similar Threads

  1. Ερώτηση
    By Mostos in forum Athletics
    Replies: 9
    Last Post: 28-03-2006, 15:55
  2. Replies: 4
    Last Post: 18-10-2005, 22:37
  3. Ερώτηση
    By Silverwing in forum Fantasy & Strategy Games
    Replies: 3
    Last Post: 17-09-2004, 20:22
  4. Ερώτηση για στρατό
    By Dragonlord in forum General Discussion
    Replies: 64
    Last Post: 24-04-2004, 00:11
  5. Ερώτηση για συναυλία Saxon Αθήνα
    By Deggial in forum Music Discussion
    Replies: 30
    Last Post: 08-12-2003, 11:52

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •