MrSeanKon Δημοσ. 16 Απριλίου 2008 Δημοσ. 16 Απριλίου 2008 Καταρχας δεν ειμαι καποιος επαγγελματιας προγραμματιστης αλλα ορισμενες φορες δε με διευκολυνει. Εννοω οτι το βρισκω σπαστικο να πατω συνεχως το F11 στο Visual Studio να τρεξει την επομενη εντολη ασχετα αν μπορω να βαλω καποιες μεταβλητες να παρακολουθουνται. Αν κιολας τρεχει και καποιο θρεντ (το οποιο γινεται κατα κορον στα χαρτοπαιγνια που μοιραζω) τοτε μπερδευομαι χειροτερα. Τελος παντων ας μιλησουν κι οι ειδικοτεροι στο θεμα αυτο.
bokarinho Δημοσ. 16 Απριλίου 2008 Δημοσ. 16 Απριλίου 2008 Καταρχας δεν ειμαι καποιος επαγγελματιας προγραμματιστης αλλα ορισμενες φορες δε με διευκολυνει.Εννοω οτι το βρισκω σπαστικο να πατω συνεχως το F11 στο Visual Studio να τρεξει την επομενη εντολη ασχετα αν μπορω να βαλω καποιες μεταβλητες να παρακολουθουνται. Αν κιολας τρεχει και καποιο θρεντ (το οποιο γινεται κατα κορον στα χαρτοπαιγνια που μοιραζω) τοτε μπερδευομαι χειροτερα. Τελος παντων ας μιλησουν κι οι ειδικοτεροι στο θεμα αυτο. Δεν ξέρω τι μου λες εσύ αλλά ναι αν και λίγο σπαστικό το debugger σου δίνει καταπληκτικές δυνατότητες, μπορείς να δεις που χτυπάει κατευθείαν το πρόγραμμα καλώντας το stack, να κάνεις memory dump για να δεις τι γράφεται στην μνήμη, να βρεις λάθη όπως πχ μια φορά είχα κάνει ένα θεικό if(x = 5) και δεν έμπαινε ποτέ στο if και πολλά άλλα. Το debugging είνα αναπόσπαστο εργαλείο του προγραμματιστή, και αν θέλεις να μιλήσουμε για καλούς debuggers ρίξε μια ματιά στον CodeGuard της Borland.
MrSeanKon Δημοσ. 16 Απριλίου 2008 Μέλος Δημοσ. 16 Απριλίου 2008 πχ μια φορά είχα κάνει ένα θεικό if(x = 5) και δεν έμπαινε ποτέ στο if και πολλά άλλαΜισο σε αυτο δε σε προειδοποιουσε ο compiler οτι ειναι εσφαλμενη εντολη?
Dark_Sage Δημοσ. 16 Απριλίου 2008 Δημοσ. 16 Απριλίου 2008 το λάθος ήταν λογικό οτι το χ ποτέ δεν έπαιρνε τιμή 5 και όχι συντακτικό για να τον ειδοποιήσει ο compiler
MrSeanKon Δημοσ. 16 Απριλίου 2008 Μέλος Δημοσ. 16 Απριλίου 2008 Aυτο σκεφτηκα κι εγω! Εχει τυχει κι εμενα καποιες φορες να μη δουλευουν τα if και να λεω τι στο διαολο παιζει και δε μπαινει εκει μεσα ο κωδικας....
georgemarios Δημοσ. 16 Απριλίου 2008 Δημοσ. 16 Απριλίου 2008 ειναι πολλα πραγματα που ο compiler δε μπορει να "πετυχει" ως λαθη τετοια ειναι τα λογικα λαθη πχ λες στο μηχανημα "παρε ενα θετικο αριθμο και αρχισε να του προσθετεις 1 μεχρι αυτος να γινει μηδεν" προφανως, αυτο δεν ειναι λογικα σωστο και θεωρητικα δεν γινεται ποτε. Ακομα χειροτερα, αν το ειχες βαλει σε ενα λουπ ως συνθηκη τερματισμου, θα ειχες λαθος αποτελεσματα γιατι οντως καποτε θα γινοταν μηδεν (θα εφτανε η μεταβλητη τη μεγιστη τιμη που μπορει να κρατησει, και θα ξεκινουσε απο αρνητικη τιμη μεχρι να φτασει στο μηδεν). Τελικο αποτελεσμα οτι ναναι, αλλα απο αποψεως compiler ολα ειναι οκ! Αρα τι σου μενει? Debugger για να τσεκαρεις τη μεταβλητη στη συνθηκη τερματισμου την ωρα που τρεχει ο προγραμμας. Το εχω παθει ουτε μια, ουτε δυο.... και στανταρ θα το ξαναπαθω
StavrosD Δημοσ. 17 Απριλίου 2008 Δημοσ. 17 Απριλίου 2008 Προγραμματίζω σε αρκετά προχωρημένο επίπεδο, και μπορώ να σου πω ότι απορώ πως οι προγραμματιστές δεν είχαν γίνει ψυχοπαρανοϊκοί πριν τους debugger. Χωρίς debugger δεν γίνεται τίποτα σε περίπλοκες εφαρμογές. Τώρα που γίνεται debugging ακόμα και σε javascript έχω βρει την υγεία μου. Το γεγονός ότι σε ενοχλεί το F11 σημαίνει ότι δεν ξέρεις να χρησιμοποιείς τα breakpoints ή τα conditional breakpoints. Μπορείς να ρυθμίσεις τον debugger ώστε να παγώνει την εκτέλεση μόνο όταν εκτελεστεί κάποια συγκεκριμένη γραμμή ή όταν μια μεταβλητή πάρει μια συγκεκριμένη τιμή.
MrSeanKon Δημοσ. 18 Απριλίου 2008 Μέλος Δημοσ. 18 Απριλίου 2008 Σταυρος εχει τετοια ρυθμιση το Βιζουαλ Στουντιο?
georgemarios Δημοσ. 18 Απριλίου 2008 Δημοσ. 18 Απριλίου 2008 ρυθμιση τι? για breakpoints? ναι, τοποθετουνται με το F9 δηλαδη, πας τον κερσορα στο σημειο του κωδικα που θες να "παγωσει" η εκτελεση, πατας F9, και θα δεις ενα κοκκινο κυκλακι στ'αριστερα του κώδικα. δοκιμασε το
MrSeanKon Δημοσ. 18 Απριλίου 2008 Μέλος Δημοσ. 18 Απριλίου 2008 ΟΚ θενξ (τωρα στα γεραματα μαθε μπαρμπα γραμματα). Θυμαμαι παλιοτερα απο την MSDOS Borland που ειχε μια επιλογη ο αποσφαλτωτης (debugger) που ετρεχε τον κωδικα μεχρι τη γραμμη που του εχεις ορισει. Αυτο θα με διευκολυνε διοτι αν ο κωδικας εχει ας πουμε ενα βρογχο αντε να πατας σα Βεγγος το Φ11....
georgemarios Δημοσ. 18 Απριλίου 2008 Δημοσ. 18 Απριλίου 2008 ναι, περι αυτου προκειται και μπορεις να ορισεις περισσοτερα του ενος breakpoints σε διαφορα σημεια, οποτε μπορεις να πηδας μονο στα σημεια ενδιαφεροντος.... have a happy debugging
StavrosD Δημοσ. 18 Απριλίου 2008 Δημοσ. 18 Απριλίου 2008 Σταυρος εχει τετοια ρυθμιση το Βιζουαλ Στουντιο? Με αριστερό κλικ στην αρχή μιας γραμμής, στο γκρίζο δίπλα από τον αριθμό της γραμμής, ενεργοποιείς ένα breakpoint στην γραμμή αυτή. Πήγαινε πάνω στο μενού Debug->Windows->Breakpoint Σου δείχνει τα brakpoints που έχεις ήδη ορίσει. Με δεξί κλικ σε ένα breakpoint σου εμφανίζει τις επιλογές: - coundition: δίνεις μια συνθήκη. Αν ισχύει σε αυτό το σημείο ενεργοποιοείται το breakpoint - Hit count:Επιλέγεις μετά από πόσες φορές που θα εκτελεστεί η γραμμή θα ενεργοποιηθεί το breakpoint - Filter (για πολύ προχωρημένους): To breakpoint ενεργοποιείται μόνο αν την συνάρτηση την καλέσει συγκεκριμένο process, εφαρμογή, κτλ. - When hit: Μπορείς να επιλέξεις να κάνει κάτι συγκεκριμένο όταν ενεργοποιηθεί το breakpoint. Πατώντας στο new πάνω αριστερά έχει επιπλέον την επιλογή "Break at function".
MrSeanKon Δημοσ. 18 Απριλίου 2008 Μέλος Δημοσ. 18 Απριλίου 2008 Καλως κομπιουτεραδες εμαθα και κατι παραπανω στα 35 μου! Με ΦΟΡΤΡΑΝ ξεκινησα πριν 15 χρονια! Καταλαβαινετε οτι με ξενιζουν οι νεες επιλογες!
georgemarios Δημοσ. 18 Απριλίου 2008 Δημοσ. 18 Απριλίου 2008 σιγα ρε παππου , 5 χρονια διαφορα εχουμε....
MrSeanKon Δημοσ. 18 Απριλίου 2008 Μέλος Δημοσ. 18 Απριλίου 2008 E δεν ηξερα ποσο εισαι απλα το να διαβαζω σε τετοια ηλικια εγχειριδια κι εννοιες που κανουν τα 19χρονα των Παν/μιων με κανει να νοιωθω παππους!
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.