Έχω την προσωπική εντύπωση πως όποιος μπορεί και κατανοεί την γλώσσα μηχανής 'assembly', του είναι πολύ εύκολο να κατανοήσει οποιαδήποτε γλώσσα.
Ξεκίνησα σαν αυτοδίδακτος πριν από 23 χρόνια με την BBC Basic αλλά πολύ γρήγορα πέρασα στην assembly του φημισμένου 6502. Ο λόγος φυσικά ήταν η ταχύτητα, μιάς και μετά από υπολογισμό χρόνου έβλεπα διαφορές από 50 έως 200 φορές ταχύτερη εκτέλεση στη γλώσσα μηχανής. Λίγο αργότερα (πριν ακόμα περάσω στον κόσμο των PC’s), πέρασα στην C όπου κατάλαβα ότι μπορούσες να κάνεις τα πάντα όπως και στην assembly αλλά με το κόστος να μην μπορείς να βγάλεις άκρη από τον μπλεγμένο κώδικα, αν τελικά τα πράγματα δεν πήγαιναν όπως έπρεπε να πάνε. Την λύση σε αυτό το πρόβλημα μου την έδωσε η C++ η οποία τα βλέπει όλα σαν αντικείμενα (classes) και το μόνο που έπρεπε να κάνεις, ήταν να ελέγξεις αν το κάθε αντικείμενο κάνει σωστά την δουλεία του. Στην αρχή την βρήκα και εγώ ακατανόητη η C++ (μιας και ήμουν κολλημένος και εραστής της κλασικής C), αλλά πολύ γρήγορα κατάλαβα ότι η C++ μου έδινε πολύ μεγαλύτερη δυνατότητα στο να αναπτύξω δικές μου βιβλιοθήκες και DLL's. Το πρώτο μου βιβλίο ήταν μάλλον το ίδιο, ‘Teach yourself Visual C++ 6 in 21 days’ του Davis Chapman.
Μετά από μια πενταετία ενασχόλησης με την C++ σου την συνιστώ ανεπιφύλακτα...
Εμφάνιση 31-45 από 57
Θέμα: C++, Basic ή Assembly?
-
18-12-07, 21:23 Απάντηση: C++, Basic ή Assembly? #31
-
18-12-07, 22:18 Απάντηση: C++, Basic ή Assembly? #32
Χαίρομαι, που τρίτωσαν οι οπαδοί του 6502... Καταλαβαίνω πόσο χρήσιμα είναι τα αντικείμενα. Φαντάζομαι βέβαια ότι είναι το ίδιο με τα libraries, που έβρισκε ή δημιουργούσε ο καθένας από εμάς με τις πιο "πρωτόγονες" γλώσσες δηλ. ρουτίνες, που έπαιρναν παραμέτρους από το χρήστη και εκτελούσαν ανάλογες εργασίες. Θα με ενδιέφερε η άποψή σου για το βασικό μου ερώτημα - δεδομένης της πολυπλοκότητας της C και των ομοειδών γλωσσών. Τι ΔΕΝ θα μπορούσα πχ να κάνω με τη basic, που γίνεται απλούστερα από τη C (εκτός των αντικειμένων, που κι αυτά έχουν ενσωματωθεί σε ορισμένες παραλλαγές basic);
-
18-12-07, 23:18 Απάντηση: C++, Basic ή Assembly? #33
C++ δεν σημαίνει απαραίτητα αντικειμενοστραφής προγραμματισμός. Πολλές από τις μιζέριες της C (πχ το variable declaration στην αρχή της συνάρτησης) και τις ανακρίβειές της έχουν διορθωθεί στην C++. Μερικοί ελαφρώς ή βαρέως κολλημένοι νομίζουν ότι C++ σημαίνει αποκλειστικά object oriented programming και την διαγράφουν σε σχέση με την C η οποία κυριαρχούσε κάποτε, τώρα όμως είναι απλά obsolete.
Τελευταία επεξεργασία από το μέλος turboirc : 18-12-07 στις 23:22.
-
19-12-07, 12:31 Απάντηση: C++, Basic ή Assembly? #34
Γιατί οι μαθηματικοί γράφουν και καλό κώδικα (μιλάμε για τους μαθηματικούς, όχι αυτούς που κατα τύχη τελικά πήραν ένα πτυχίο Μαθηματικού). Μερικοί κορυφαίοι, πχ Turing, Babbage, Knuth, Dijkstra, Codd, Celko, και ένα σωρό άλλοι. Ακόμα και ο Linus είπε σε ένα interview ότι θεωρεί απαραίτητο το μαθηματικό υπόβαθρο, και ότι θα ήταν το μόνο που μετανιώνει που δεν σπούδασε (ομοίως και πολλοί άλλοι διάσημοι open source developers)...
@turboirc σορρυ, αλλά variable declaration μπορείς να κάνεις σε όποιο block θέλεις στην απλή C (δές C99).Τελευταία επεξεργασία από το μέλος anon : 19-12-07 στις 12:49.
QoS: Τι είναι τούτο το πράγμα; Ευρυζωνικά: Μύθοι και πραγματικότητα Οδηγίες Εγκατάστασης Oracle 10G σε Linux (RHEL4)Περι αλόγιστης χρήσης Ιντερνετ
Ikariam.gr anon@AnonCity Guzoos@76:12
-
19-12-07, 15:44 Απάντηση: C++, Basic ή Assembly? #35
-
19-12-07, 15:53 Απάντηση: C++, Basic ή Assembly? #36
Μαθηματική λογική πρέπει να έχεις παντού.
Για τους Φυσικούς ότι λένε ότι τα ξέρουν όλα, θα συμφωνήσω απόλυτα.
Δεν υπάρχουν προκηρύξεις στον τεχνικό τομέα και σε θέματα προγραμματισμού (για να μην ξεφεύγουμε από το θέμα μας) που να μην τις χτυπήσουν.
Παντού θα δεις και ένα Φυσικό.
και ναι είναι πολύ κακό να παίρνουν τέτοιες θέσεις Φυσικοί.
βλέπουν τελείως διαφορετικά τα πράγματα.
μπορεί να κάθονται και να μιλάνε ώρες πάνε σε θεωρητικό επίπεδο και στην πράξη να μην ξέρουν τι τους γίνεται.| "Anyone can build a fast CPU.
| The trick is to build a fast system."
|____________Seymour Cray...
-
19-12-07, 16:25 Απάντηση: C++, Basic ή Assembly? #37
Eγώ πάντως αντιμετωπίζω συνεχώς άτομα με πολύ ναι μέν ταλέντο, αλλά λόγω έλλειψης υπόβαθρου, τηνκάνουν μέσω Κίνας. Ισως πάλι να ειμαι απλά τελειομανής, αλλά δεν μπορώ να δεχτώ ένα sql να τρέχει για ώρες... Μήπως αυτό φταίει για τα overbloated windows (και τελευταία και Open source προγραμματα, πχ openoffice) ??? Μήπως γιαυτό ο Gates προμοταρει την ανάπτυξη της β'βάθμιας εκπαίδευσης στις ΗΠΑ, στις θετικές επιστήμες (και βασικά μαθηματικά);
QoS: Τι είναι τούτο το πράγμα; Ευρυζωνικά: Μύθοι και πραγματικότητα Οδηγίες Εγκατάστασης Oracle 10G σε Linux (RHEL4)Περι αλόγιστης χρήσης Ιντερνετ
Ikariam.gr anon@AnonCity Guzoos@76:12
-
19-12-07, 16:46 Απάντηση: C++, Basic ή Assembly? #38
Διαφωνώ. Με αυτή τη λογική θα έπρεπε όλοι πρώτα να γινόμαστε μαθηματικοί και μετά προγραμματιστές, ηλεκτρονικοί, μηχανολόγοι, οικονομολόγοι, κτλ. Είναι θέμα σωστών και λάθος πρακτικών τις οποίες σου μαθαίνουν σε διάφορα επίπεδα (σχολείο, αργότερα πανεπιστήμιο, εργασία) ή τις αποκτάς με την εμπειρία. Μαθηματική λογική και κάποιο μαθηματικό υπόβαθρο χρειάζεται παντού, όπως σωστά παρατήρησε ο denis, αυτό δε σημαίνει όμως ότι όλοι πρέπει να είμαστε πρώτα μαθηματικοί και μετά οτιδήποτε άλλο...
Όσον αφορά για τα overbloated Windows ή άλλες εφαρμογές, μην είσαι τόσο σίγουρος ότι φταίει πάντα η έλλειψη μαθηματικού υποβάθρου. Εργάστηκα σε μεγάλη πολυεθνική εταιρεία για κάποιο διάστημα ως tester λογισμικού τηλεφωνικών κέντρων GSM. Θες να αρχίσω να λέω ιστορίες για το πως δούλευαν οι developers και πως αναπτυσσόταν το λογισμικό; Έφταιγε η έλλειψη μαθηματικού υποβάθρου; Νομίζω πως καταλαβαίνεις που το πάω... Να λες πάλι καλά που μπορούμε και επικοινωνούμε τηλεφωνικώς, αλλιώς θα κάναμε δουλειά με ταχυδρομικά περιστέρια και σήματα καπνούΤελευταία επεξεργασία από το μέλος megahead13 : 19-12-07 στις 16:51.
Όταν ενώνουμε τις δυνάμεις μας, μπορούμε να πετύχουμε το ακατόρθωτο - Παναγιώτης Γιαννάκης
Never say never, because limits, like fears, are often just an illusion - Michael Jordan
-
19-12-07, 17:35 Απάντηση: C++, Basic ή Assembly? #39Eγώ πάντως αντιμετωπίζω συνεχώς άτομα με πολύ ναι μέν ταλέντο, αλλά λόγω έλλειψης υπόβαθρου, τηνκάνουν μέσω Κίνας. Ισως πάλι να ειμαι απλά τελειομανής, αλλά δεν μπορώ να δεχτώ ένα sql να τρέχει για ώρες...
Σε οτι έχει σχέση με τις γλώσσες προγραμματισμού το θέμα είναι τελείως ανούσιο νομίζω, είναι εργαλεία και ο καθένας χρησιμοποιεί τα εργαλεία που τον βολεύουν για να χτίσει. Το μεγάλο ερώτημα για εμένα είναι σε ποιο API αξίζει κάποιος να επενδύσει το χρόνο του, εδώ πραγματικά με ενδιαφέρει η άποψη αυτών που είναι κοντά στην C++.
-
19-12-07, 18:35 Απάντηση: C++, Basic ή Assembly? #40
Θα πρότεινα να τις μάθεις όλες αυτές(όπως επίσης και python,ruby,sql,matlab,prolog και...puredata) και ανάλογα με το τι θες να κάνεις βλέπεις και πράττεις :P
Σαν IDE θα σου πρότεινα πάντως το eclipse.
Καλό είναι να υπάρχει ένα υπόβαθρο (γράφεις πολύ πιο εύκολα κώδικα αν υπάρχει αυτό) για απλές χομπίστικες εφαρμογές όμως δεν το βρίσκω απαραίτητο. Είναι λίγο "πολύ" να κάνεις uml διαγράμματα για το φωτογραφικό άλμπουμ που θέλεις να κάνεις δώρο στη γιορτή της μητέρας :P
Ανάλογα βέβαια με το τι θες να κανεις, πολλές φορές είναι απαραίτητο το υπόβαθρο. Δεν μπορείς πχ να φτιάξεις synthesizer χωρίς να έχεις ιδέα απο signal processing, να κάνεις το πρόγραμμα σου "έξυπνο" χωρίς να έχεις ιδέα απο AI ή να λύσεις μια εξίσωση χωρίς να έχεις ιδέα απο ανάλυση.
Edit: Μακρυά απο assembly, πλέον είναι πονοκέφαλος. Οτι σου χρειάζεται να μάθεις μπορείς εύκολα να το μάθεις απο την CΤελευταία επεξεργασία από το μέλος Eruyome(MMXGN) : 19-12-07 στις 18:38.
-
19-12-07, 20:02 Απάντηση: C++, Basic ή Assembly? #41
Ακριβώς, τα πάντα έχουν σχέση με το τί θες να κάνεις και όχι με την ίδια την γλώσσα.
-
19-12-07, 20:16 Απάντηση: C++, Basic ή Assembly? #42
Στο γεγονός ότι κάτι έχουν μάθει και το χρησιμοποιούν. Μόνο που έχουν μάθει το σφυρί, και όλα τα προβλήματα τα έχουν ανάγει σε καρφιά.
Θα διαφωνήσω μαζί σου για τα windows, ο μόνος λόγος που οι εκδόσεις client των λειτουργικών είναι bloated είναι ο joe user. Φαντάζομαι δε θεωρείς το Ubuntu μη bloated λειτουργικό... Πες μου έστω και ενα πακέτο software της Microsoft που προορίζεται για "επαγγελματική" χρήση και είναι bloated στο ελάχιστο.
Σε οτι έχει σχέση με τις γλώσσες προγραμματισμού το θέμα είναι τελείως ανούσιο νομίζω, είναι εργαλεία και ο καθένας χρησιμοποιεί τα εργαλεία που τον βολεύουν για να χτίσει. Το μεγάλο ερώτημα για εμένα είναι σε ποιο API αξίζει κάποιος να επενδύσει το χρόνο του, εδώ πραγματικά με ενδιαφέρει η άποψη αυτών που είναι κοντά στην C++.
QoS: Τι είναι τούτο το πράγμα; Ευρυζωνικά: Μύθοι και πραγματικότητα Οδηγίες Εγκατάστασης Oracle 10G σε Linux (RHEL4)Περι αλόγιστης χρήσης Ιντερνετ
Ikariam.gr anon@AnonCity Guzoos@76:12
-
19-12-07, 20:17 Απάντηση: C++, Basic ή Assembly? #43
megahead ευχαριστώ για το link (thinking in c). Αν και δεν είχα χρόνο να μπω σε κάτι πιο προχωρημένο από την εισαγωγή, μου φαίνεται πολύ χρήσιμο. Επίσης είναι πολύ εύληπτο αφού είναι σε μορφή αφήγησης και δεν πρέπει να βγάλω τα ματάκια μου να διαβάζω κείμενο στην οθόνη του υπολογιστή. Αν γνωρίζεις κι άλλα παρόμοια tutorial για οποιαδήποτε από τις 3 γλώσσες του post, μερικά links θα ήταν ευπρόσδεκτα...
-
19-12-07, 21:46 Απάντηση: C++, Basic ή Assembly? #44
-
19-12-07, 22:41 Απάντηση: C++, Basic ή Assembly? #45
Δεν μπορώ να καταλάβω την άποψη σου αγαπητέ συνομιλητή. Επειδή δηλαδή σε ορισμένα συστήματα χρησιμοποιούν μόνο C γιατι ο compiler απέχει μακράν από τα C++ standards, με ποια δικαιολογία και με τί εμπειρία στον τομέα εκφράζονται τέτοιες απόψεις?
H C++ είναι super set της C και απλά όσοι πάνε στην C επειδή έχουν την χαζή ιδέα ότι C++ σημαίνει αντικειμενοστραφής προγραμματισμός είναι ελαφρώς κολλημένοι. Εαν η C++ καταρρεύσει κάποτε, να είσαι απολύτως σίγουρος ότι το ίδιο θα συμβεί και στην C. Ωραίες είναι και οι άλλες γλώσσες αλλά για άλλο σκοπό. Μπορείς να φτιάξεις όλα τα projects σε Java ? Σε Php ? Σε Ruby ? Σε Perl ? =OXI= ενώ στην C++ μπορείς να τα φτιάξεις όλα.
Αυτό που στην πραγματικότητα συμβαίνει είναι ότι όλοι εσείς οι linuxaδες έχετε έναν compiler ο οποίος σαν C είναι αποδεκτός και σαν C++ είναι για τα μπάζα μπροστά σε άλλους, και προσπαθήτε να υποβαθμίσετε την C++ επειδή απλά όσα δεν φτάνει η αλεπού τα κάνει κρεμαστάρια. Αυτό δεν δείχνει ότι η C++ είναι κακή, δείχνει ότι οι προγραμματιστές αυτού του συστήματος είναι απαρχαιωμένοι, και παραμένουν στα παλαιά standards επειδή απλά δεν μπαίνει νέο αίμα στην διαδικασία του προγραμματισμού για το συγκεκριμένο λειτουργικό.
Καλύτερα είναι λοιπον να βλέπουμε τα πράγματα σφαιρικά σε σχέση με την πραγματικότητα και όχι στο σύστημα που χρησιμοποιεί ο καθένας, και παρακαλώ λίγότερα σχόλια για τα Windows για το οποία δεν έχω μιλήσει ποτέ εγώ που το χρησιμοποιώ 20 χρόνια, πόσο μάλλον εσύ που δεν τα έχεις χρησιμοποιήσει παρά ελάχιστα. Δεν είπα ποτέ ότι τα Windows είναι τέλεια, αλλά δεν ανέχομαι να απαξιώνουν έτσι ένα λειτουργικό (Windows) και μία γλώσσα (C++) τα οποία διαπρέπουν αυτη τη στιγμή στην αγορά και στην επιστήμη και στην ερευνα, και μάλιστα από άτομα τα οποία δεν έχουν δικαίωμα να μιλάνε γιατι δεν είναι προγραμματιστές.
Τέλος, επειδή ορισμένοι εκφράζουν απόψεις αβίαστα και επειδή δεν θα ήθελα να ανήκω σε αυτήν την κατηγορία, προκαλώ όποιον θέλει να φτιάξει ένα οποιοδήποτε πρόγραμμα σε κάποια γλώσσα άλλη από την C++ και μετά να το συγκρίνω με το αντίστοιχο δικό μου σε C++ σε θέματα ταχύτητας, μεγέθους, σταθερότητας και πλεονεκτημάτων , GUI φυσικά.Τελευταία επεξεργασία από το μέλος turboirc : 19-12-07 στις 22:54.
Παρόμοια Θέματα
-
Assembly Tutorial
Από turboirc στο φόρουμ Προγραμματισμός και γλώσσες προγραμματισμούΜηνύματα: 29Τελευταίο Μήνυμα: 19-02-12, 12:11 -
Visual Assembly και Assembly .Net από την Microsoft
Από mrsaccess στο φόρουμ Προγραμματισμός και γλώσσες προγραμματισμούΜηνύματα: 0Τελευταίο Μήνυμα: 01-04-08, 16:50 -
ασκηση σε SPIM(assembly)
Από kasadi στο φόρουμ Προγραμματισμός και γλώσσες προγραμματισμούΜηνύματα: 7Τελευταίο Μήνυμα: 13-05-07, 21:15 -
Assembly Demos
Από axeman στο φόρουμ Προγραμματισμός και γλώσσες προγραμματισμούΜηνύματα: 4Τελευταίο Μήνυμα: 21-06-06, 19:19
Bookmarks