georgemarios Δημοσ. 18 Απριλίου 2008 Δημοσ. 18 Απριλίου 2008 νομιζω πως το βλεπεις λαθος, εγχειριδια θα διαβαζεις μια ζωη ειναι τετοια η φυση του αντικειμενου μας που πρεπει να ακολουθεις συνεχως τις εξελιξεις απλα, οσο μεγαλωνεις, κατανοεις ευκολοτερα καποια πραγματα λογω εμπειριας (θεωροντας ομως πως δεν χανεις επαφη...)
StavrosD Δημοσ. 18 Απριλίου 2008 Δημοσ. 18 Απριλίου 2008 E δεν ηξερα ποσο εισαι απλα το να διαβαζω σε τετοια ηλικια εγχειριδια κι εννοιες που κανουν τα 19χρονα των Παν/μιων με κανει να νοιωθω παππους! Μην νομίζεις ότι το διάβασα σε εγχειρίδι. Είχα περάσει από πολλές γλώσσες (logo, gwbasic, turbo pascal, Turbo C, VB, VB.NET, ASP.NET, κτλ), και αυτό που μου έχει λύσει τα χέρια σε όλες τις γλώσσες (όπου υπήρχε) είναι ο debugger. Είμαι 30 και ακόμα διαβάζω και μαθαίνω. Το έχω πάρει απόφαση ότι μέχρι να πάρω σύνταξη θα διαβάζω (νομοθεσία ως μηχανικός και τεχνολογια υπολογιστών ως προγραμματιστής).
3c0r1z Δημοσ. 19 Απριλίου 2008 Δημοσ. 19 Απριλίου 2008 Δεν ξέρω τι μου λες εσύ αλλά ναι αν και λίγο σπαστικό το debugger σου δίνει καταπληκτικές δυνατότητες, μπορείς να δεις που χτυπάει κατευθείαν το πρόγραμμα καλώντας το stack, να κάνεις memory dump για να δεις τι γράφεται στην μνήμη, να βρεις λάθη όπως πχ μια φορά είχα κάνει ένα θεικό if(x = 5) και δεν έμπαινε ποτέ στο if και πολλά άλλα. Το debugging είνα αναπόσπαστο εργαλείο του προγραμματιστή, και αν θέλεις να μιλήσουμε για καλούς debuggers ρίξε μια ματιά στον CodeGuard της Borland. Εγώ συνηθίζω να γράφω τα if πάντα με τέτοιο τρόπο: > ... if(10 == maxChar) ... με αποτέλεσμα αν ξεχάσω ένα '=' να προκληθεί λάθος μεταγλώττισης. Μισο σε αυτο δε σε προειδοποιουσε ο compiler οτι ειναι εσφαλμενη εντολη? Αν χρησιμοποιείς warning level 4 σε προειδοποιεί ο μεταγλωττιστής http://msdn2.microsoft.com/en-us/library/7hw7c1he.aspx Αν προγραμματίζεις σε C++ και κάνεις χρήση των Exceptions μπορείς να υλοποιήσεις Callstacks για να περιορίσεις στο ελάχιστο το step-by-step debugging.
Directx Δημοσ. 19 Απριλίου 2008 Δημοσ. 19 Απριλίου 2008 Δεν χρησιμοποιώ μόνο Debugger, αλλά και Bound Checker ώστε να εντοπίζω αυτόματα μια μεγάλη γκάμα από σφάλματα διαχείρισης μνήμης, με το που παρουσιάζονται στον κώδικα -εδώ αξίζει βέβαια να διαβάζει κανείς προσεκτικά και τα Warning του compiler του, διότι ενίοτε περιέχουν hints για πιθανά προβλήματα. Το ευχάριστο είναι πως τα εργαλεία μου (C/C++ Builder 6, Turbo C++ 2006) προσφέρουν πέραν ενός εξαίρετου debugger (πχ. αυτόματα Callstacks σε κάθε περίπτωση C++ Exception ή C Access ή Bound Violation), και το Bound Checker (CodeGuard) ενώ ο Compiler υλοποιεί την δυνατότητα "__finally" (αν το επιθυμείς) σε κάθε SEH επιτρέποντας την συγγραφή πολύ καθαρού & ασφαλούς κώδικα -ειδικά όταν έχουμε deal με πολλά dynamic αντικείμενα.
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.