Προγραμματισμός σε Ubuntu

...IDE, compilers, κλπ

Συντονιστής: konnn

Re: Προγραμματισμός σε Ubuntu

Δημοσίευσηαπό Think » 08 Ιούλ 2008, 01:05

Μια ερώτηση παιδιά...

Πρόγραμμα σε C++, δεν εκτελείται μόνο σε μη γραφικό περιβάλλον?
Think
babeTUX
babeTUX
 
Δημοσιεύσεις: 32
Εγγραφή: 06 Ιούλ 2008, 02:06
Εκτύπωση

Re: Προγραμματισμός σε Ubuntu

Δημοσίευσηαπό dpol » 08 Ιούλ 2008, 09:32

Προσωπικά ανήκω στην κατηγορία των ανθρώπων που αρέσκονται να πιάνουν κάτι στα χέρια τους, να το περιεργάζονται πριν το αγοράσουν.


Για όποιον είναι Αθήνα λοιπον μια πολύ καλή πηγή με τεράστια ποικιλία είναι ο Παπασωτηρίου στην Στουρνάρη.
Πολλλάάάά βιβλία για οτιδήποτε μπορείς να φανταστείς.

Επίσης νομίζω ότι μπορείς να πάρεις ένα βιβλίο και να κάτσεις στην καφετέρια του μαγαζιού να πιείς έναν καφέ και να του ρίξεις μια ποιό καλή ματιά πριν το αγοράσεις. (δεν είμαι 100% σίγουρος για αυτό αλλά νομίζω ότι ισχύει).
Επίπεδο Γνώσεων: Linux: Χαμηλoμεσαίο / Προγραμματισμός: Ναι / Αγγλικά: Καλά
Λειτουργικό (σε αναζήτηση/δοκιμές)
Abit IP35Pro-C2D-4Gb ram-Nvidia 8800GT-250Gb hdd
dpol
babeTUX
babeTUX
 
Δημοσιεύσεις: 129
Εγγραφή: 27 Ιουν 2008, 14:50
Τοποθεσία: Αθήνα
Εκτύπωση

Re: Προγραμματισμός σε Ubuntu

Δημοσίευσηαπό Dimitris » 08 Ιούλ 2008, 10:53

Mια χαρά τα λέει ο kalakouentin. Αν δε λερώσεις τα χέρια σου δε γίνεται να μάθεις. Αν και συμφωνώ απόλυτα με τα περί C, θα σου πρότεινα παρολ'αυτά να ξεκινήσεις με python, μιας και είσαι καινούριος στο άθλημα. Ετσι θα δεις γρήγορα αποτελέσματα και θα γλυκαθείς, οπότε μετά θα έχεις πιο πολύ όρεξη να μάθεις και C. Το βασικό πρόβλημα στις χαμηλότερου επιπέδου γλώσσες όπως η C, είναι ότι πρέπει να κάνεις μόνος σου τη διαχείρηση της μνήμης. Φυσικά σε μικρά προγραμμάτα δεν τιθεται πρόβλημα αλλά σε μεγαλύτερα.

Eνα κλασσικό βιβλίο (αν και ειναι λίγο δύσκολο για αρχάριους) είναι το The Art of Computer Programming του Knuth.
Άβαταρ μέλους
Dimitris
saintTUX
saintTUX
 
Δημοσιεύσεις: 1357
Εγγραφή: 13 Μάιος 2008, 13:57
Τοποθεσία: Θεσσαλονίκη
Εκτύπωση

Re: Προγραμματισμός σε Ubuntu

Δημοσίευσηαπό dpol » 08 Ιούλ 2008, 16:58

Μήπως ΔΕΝ είναι και ότι καλύτερο να προτείνεται σε κάποιον που δεν έχει ιδέα από προγραμματισμό και βασικές αρχές προγραμματισμού να αρχίσει με την C ;;;;

Δεν είναι και από τις ποιό εύκολες γλώσσες...
Επίπεδο Γνώσεων: Linux: Χαμηλoμεσαίο / Προγραμματισμός: Ναι / Αγγλικά: Καλά
Λειτουργικό (σε αναζήτηση/δοκιμές)
Abit IP35Pro-C2D-4Gb ram-Nvidia 8800GT-250Gb hdd
dpol
babeTUX
babeTUX
 
Δημοσιεύσεις: 129
Εγγραφή: 27 Ιουν 2008, 14:50
Τοποθεσία: Αθήνα
Εκτύπωση

Re: Προγραμματισμός σε Ubuntu

Δημοσίευσηαπό Dimitris » 08 Ιούλ 2008, 17:16

@Think: το γραφικό περιβάλλον δεν έχει να κάνει με το πρόγραμμα c++ καθ'εαυτό.
Εγώ προτιμώ τη γραμμή εντολών (vi, δοκιμασέ το) για να προγραμματίσω ακόμη και γραφικά. Άλλοι προτιμούν να χρησιμοποιούν προγράμματα με GUI ακόμη και για το γράψιμο προγραμμάτων για τη γραμμή εντολών :D
Υπάρχουν προγράμματα που είναι γραμμένα για γραφικό περιβάλλον και άλλα για τη γραμμή εντολών.

@dpol: Αυτό έκανα, του πρότεινα python.
Άβαταρ μέλους
Dimitris
saintTUX
saintTUX
 
Δημοσιεύσεις: 1357
Εγγραφή: 13 Μάιος 2008, 13:57
Τοποθεσία: Θεσσαλονίκη
Εκτύπωση

Re: Προγραμματισμός σε Ubuntu

Δημοσίευσηαπό ftso » 08 Ιούλ 2008, 17:19

dpol έγραψε:Μήπως ΔΕΝ είναι και ότι καλύτερο να προτείνεται σε κάποιον που δεν έχει ιδέα από προγραμματισμό και βασικές αρχές προγραμματισμού να αρχίσει με την C ;;;;

Δεν είναι και από τις ποιό εύκολες γλώσσες...


Συμφωνώ.
Πρώτα πρέπει να μάθεις να λύνεις αλγόριθμους με κάτι πιο απλό της C όπως shell script και μετά να μάθεις κάτι που θέλει περισσότερη γνώση της δομής, των δυνατοτήτων και της σύνταξης του.
Εγώ αν και ξέρω κάμποση java με την C++ δεν την πολύ παλεύω.Όχι ότι ασχολήθηκα και πολύ αλλά έχω πάρει μια γεύση, παρόλα αυτά κάποια στιγμή θέλω να ασχοληθώ...
Άβαταρ μέλους
ftso
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 6409
Εγγραφή: 12 Μάιος 2008, 13:40
Τοποθεσία: Αθήνα
IRC: ftso
Εκτύπωση

Re: Προγραμματισμός σε Ubuntu

Δημοσίευσηαπό Think » 08 Ιούλ 2008, 17:27

Άλλο εννοούσα...

Αν γράψω ένα πρόγραμμα σε C++ μετά θα εκτελείται από κονσόλα, και η χρήση του θα γίνεται με πληκτρολόγιο, σωστά?

Γιατί να μη μάθω visual basic για παράδειγμα, ώστε να φτιάχνω παράθυρα, κουμπιά κ.τ.λ.

Δεν είναι αυτό το μέλλον?
Think
babeTUX
babeTUX
 
Δημοσιεύσεις: 32
Εγγραφή: 06 Ιούλ 2008, 02:06
Εκτύπωση

Re: Προγραμματισμός σε Ubuntu

Δημοσίευσηαπό Dimitris » 08 Ιούλ 2008, 17:34

Αυτό ακριβώς σου εξήγησα. Μπορείς να γράψεις ένα πρόγραμμα με κουμπια και γραφικά και παράθυρα σε C++ μόνο με εντολες. Η visual basic που λες εσυ δεν κάνει κι αυτή τίποτε άλλο από το να δημιουργεί κώδικα στο τέλος. Το gnome (τα γραφικά που βλέπεις δηλαδή) βασίζεται στη βιβλιοθηκη gtk, η οποία είναι γραμμένη σε c. To gimp είναι γραμμένο είναι εξ'ολοκλήρου σε C. To inkscape είναι γραμμένο σε c++. Και ο κατάλογος συνεχίζεται.
Άβαταρ μέλους
Dimitris
saintTUX
saintTUX
 
Δημοσιεύσεις: 1357
Εγγραφή: 13 Μάιος 2008, 13:57
Τοποθεσία: Θεσσαλονίκη
Εκτύπωση

Re: Προγραμματισμός σε Ubuntu

Δημοσίευσηαπό kalakouentin » 08 Ιούλ 2008, 20:04

ΟΚ python ο κύριος. (Καλό βιβλίο για αρχάριο σε Python δεν ξέρω σόρρυ)

Πολύ καλά βιβλία αλγοριθμικού περιεχομένου (δεν θα σε μάθουν κάποια γλώσσα) πιστεύω είναι τα ακόλουθα:
    * Elements of the theory of computation των Lewis και Papadimitriou (κλασσικούρα και λίγο old school αλλά ευκολοδιάβαστο - Run-D.M.C )
    * Introduction to Algorithms των Cormen, Leiserson, Rivest και Stein (standard algorithm textbook σε ΗΠΑ και Αγγλία και από ότι έχω δει πολύ καλό και πλήρες - Eminenm)
    * Data Structures, Algorithms, and Applications in C++ του Sahni (έχω την ελληνική έκδοση, η αγγλική είναι καλύτερη αλλά γενικά προσφέρει καλή και ευρεία επισκόπηση του αντικειμένου αν είναι "βαρετό βιβλίο") (Δε θα μάθεις C++ από αυτό απλά οι υλοποιήσεις των αλγορίθμων είναι σε C++)
    * Introduction to Automata Theory, Languages and Computation των Hopcroft και Ullman (True Oldie αλλά αν μπεις μαθαίνεις. Το καλύτερο μου, διάβασα μάλιστα την 1η έκδοση με τo κοριτσάκι απ' εξω :D - DJ Kool Herc ένα πράγμα)
Kαι αν θέλεις κάτι λίγο πιο "brutal" για καθαρά string manipulation,searching,indexing,sorting etc. :
    * Algorithms on Strings των Crochemore, Hancart και Lecroq. (Βιβλίο στρυφνό, με πολύ θεωρητικο background που δεν δίνει ουσιαστική βάση στην υλοποίηση των αλγορίθμων αλλά επικεντρώνεται σε τεχνικές και "trick" βελτιστοποίησης και αλγορίθμων από καθαρά μαθηματικής σκοπιάς)
    * The Art of Computer Programming του Knuth. (Θέλεις τον 3ο τόμο) Vol. 3: Sorting and Searching (Το είπε και o Dimitris αλλά είναι και 4 τόμοι και δεν νομίζω ότι θα κάτσεις να τους ψάξεις για που είναι το string sorting and searching)
Επίσης για να πάρεις μια ιδέα περί string searching matching etc. το ακόλουθο site τα σπάει >> http://www-igm.univ-mlv.fr/~lecroq/string/ (Kαι C code και Java Visualazation Applets των αλγορίθμων - τελείως πάρε νά 'χεις καταστάσεις)

@ftso : Μπλιαχ Java... Φτου κακά!

Χάρηκα τώρα! Πάω να γράψω κώδικα... (Προφανώς θα γράψω σε python :mrgreen: ) (Τα βρωμο-script που λέγαμε :( )
(Έκανα μια εργασία πάνω σε theory of computation το Φλεβάρη και έτσι έχω πρόχειρη βιβλιογραφία :P Αν τα είχα αυτά έτσι at the back of my head με την μία θα ξανάγραφα το Minix microkernel έτσι για το τρίψω στη μούρη του Tanenbaum να δει τα λάθη που έκανε)
Εικόνα
Γνώσεις ⇛ Linux: Συμπαθητικές ┃ Προγραμματισμός: Συμπαθητικότερες ┃ Αγγλικά: Αστέρι
Λειτουργικό ⇛ Ubuntu 10.04 32bit σε HP nw9440 ┃ Ubuntu 10.04 32bit σε Toshiba Satellite U400┃ SLED 11 64bit σε Dell OptiPlex 780
kalakouentin
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 545
Εγγραφή: 05 Ιούλ 2008, 05:50
Εκτύπωση

Re: Προγραμματισμός σε Ubuntu

Δημοσίευσηαπό dpol » 09 Ιούλ 2008, 11:10

Think έγραψε:Άλλο εννοούσα...

Αν γράψω ένα πρόγραμμα σε C++ μετά θα εκτελείται από κονσόλα, και η χρήση του θα γίνεται με πληκτρολόγιο, σωστά?

Γιατί να μη μάθω visual basic για παράδειγμα, ώστε να φτιάχνω παράθυρα, κουμπιά κ.τ.λ.

Δεν είναι αυτό το μέλλον?



Χονδρικά και για να συμπληρώσω τον Dimitris, η διαφορά είναι ότι με την visual basic π.χ. ή άλλες αντίστοιχες γλώσσες τα εργαλεία για να δημιουργείς κατευθείαν παράθυρα, κουμπιά κλπ είναι έτοιμα.

Εσύ απλά επιλέγεις το παράθυρο που θέλεις να φτιάξεις, επιλέγεις τα κουμπιά ή ότι άλλο θα έχει, τα τοποθετείς έτσι όπως θέλεις (ορίζεις μεγέθη, χρώματα κλπ) και μετά η γλώσσα φτιάχνει μόνη της τον απαραίτητο κώδικα που τα υλοποιεί.


Αντίθετα σε γλώσσες όπως η C ή άλλες παλαιότερες, έπρεπε ο ίδιος ο προγραμματιστής να κάτσει και να δημιουργήσει τον κώδικα που φτιάχνει τα παράθυρα, κουμπιά κλπ στην οθόνη.
Αυτό καταλαβαίνεις ότι απαιτεί πάρα πολύ περισσότερη δουλειά από αυτόν.

Κάπως έτσι έχουν τα πράματα.

Φυσικά, πίσω από τα παράθυρα, κουμπιά, λαμπάκια κλπ εφφέ η κύρια δουλειά που θα κάνει το πρόγραμμα είναι ίδια.
Και ο προγραμματιστής είναι αυτός που θα κάτσει να δημιουργήσει τον απαραίτητο κώδικα.
Ο κώδικας αποτελείται από εντολές που λένε στον υπολογιστή τί να κάνει, πώς και με ποιό τρόπο.

Ότι γλώσσα και αν χρησιμοποιείς, η αρχές του προγραμματισμού είναι ίδιες, απλά η κάθε μια χρησιμοποιεί διαφορετικές εντολές ή και ίδιες μερικές φορές (με άλλο όνομα) για να περιγράψει τί πρέπει να γίνει.
Επίπεδο Γνώσεων: Linux: Χαμηλoμεσαίο / Προγραμματισμός: Ναι / Αγγλικά: Καλά
Λειτουργικό (σε αναζήτηση/δοκιμές)
Abit IP35Pro-C2D-4Gb ram-Nvidia 8800GT-250Gb hdd
dpol
babeTUX
babeTUX
 
Δημοσιεύσεις: 129
Εγγραφή: 27 Ιουν 2008, 14:50
Τοποθεσία: Αθήνα
Εκτύπωση

ΠροηγούμενηΕπόμενο

  • ΣΧΕΤΙΚΑ ΘΕΜΑΤΑ
    ΑΠΑΝΤΗΣΕΙΣ
    ΠΡΟΒΟΛΕΣ
    ΣΥΓΓΡΑΦΕΑΣ

Επιστροφή στο Εφαρμογές για Ανάπτυξη Λογισμικού