Γλώσσα προγραμματισμού μετα το Matlab;

Hardware, software, gadgets, OS, πλυντήρια, φούρνοι μικροκυμάτων...

Γλώσσα προγραμματισμού μετα το Matlab;

Δημοσίευσηαπό Dust » Τρί, 12 Μαρ 2019 8:15 pm

Απάντηση στην ερώτηση του civil123 εδώ. (Άνοιξα καινούριο θέμα στην "τεχνολογική γωνιά του intelx86" που είναι πιο ταιριαστό θεματολογικά.)

civil123 έγραψε:Θέλω να μάθω μία γλώσσα προγραμματισμού πέρα από αυτή της μάτλαμπ. Μου προτείνετε κάποια;


Μάθε μία από τις mainstream αντικειμενοστραφείς γλώσσες: καλύτερο support, βιβλιοθήκες, tutorials και αν κολλήσεις και αποφασίσεις να τις χρησιμοποιήσεις στην επαγγελματική σου ζωή (είτε σαν πολμηχ+προγραμματιστής ή σκέτο προγραμματιστής) θα υπάρχουν περισσότερες δουλειές που θα τις ζητάνε. Το κομμάτι των βιβλιοθηκών όταν ξεφύγεις από το Matlab έχει σημασία. Στο Matlab A*B σου πολλαπλασιάζει τα 2 μητρώα, στις υπόλοιπες γλώσσες εγκαθιστάς βιβλιοθήκες που το κάνουν αυτό (και υπάρχει λόγος: διαφορετικές βιβλιοθήκες έχουν διαφορετική υλοποίηση για το πως γίνεται ο πολλαπλασιασμός μητρώων με διαφορετικές ταχύτητες).

C++, Java / C#, Python.

Το Matlab και η Python είναι δυναμικές γλώσσες (static vs dynamic typing) ενώ οι C++, Java & C# στατικές.

Όλες που σου πρότεινα παραπάνω χρησιμοποιούνται ευρέως και όποια και αν διαλέξεις είναι καλή επιλογή.
Γνωρίζοντας Matlab σαν 1η γλώσσα θα πήγαινα προς Java ή C#. Είναι φουλ αντικειμενοστραφείς (τα πάντα είναι αντικείμενα) και αυτό είναι μεγάλο βήμα κατανόησης ερχόμενος από Matlab. Αλλά σου ανοίγει τεράστιους ορίζοντες στον προγραμματισμό. Μόλις πάρεις το κολάι με μια από αυτές τις γλώσσες, τελείωσε, μετά όποια άλλη γλώσσα πας να μάθεις θα είναι πολύυυυυυ ευκολότερο. Αλλά θέλει χρόνο.
Ο λόγος που τις χρησιμοποιώ με κάθετο (Java/C#) είναι ότι μοιάζουν υπερβολικά πολύ στο συντακτικό τους και στον τρόπο λειτουργίας τους (Η Java χρησιμοποιεί το JVMκαι η C# το CLR). Υπάρχουν άπειρες συγκρίσεις στο internet ποια είναι καλύτερη, άκρη δε βγάζεις. Μια χαρά είναι και οι 2. Java--->Oracle και ξεκίνησε πρώτη----> περισσότερο software γραμμένο σε αυτή, C#--->Microsoft με τα πλεονεκτήματα του .Net framework: συνεργάζεται καλά δλδ με άλλα προϊόντα της Microsoft (όπως το LINQ). Η Java είναι by design cross-platform, η C# μέσω του project Mono. (Επίσης Java είναι η "επίσημη" γλώσσα για android development αν θα σε ενδιέφερε κάτι τέτοιο. Όχι ότι δε γίνεται με C# - είπαμε μοιάζουν σε πολλά πράγματα!)

Η Python έχει πολύ μικρότερη καμπύλη μάθησης, αλλά οι ορίζοντες που θα σου ανοίξει είναι πιο περιορισμένοι. Είναι και αυτή δυναμική γλώσσα όπως και το Matlab. Χρησιμοποιείται ευρέως, ιδιαίτερα σε επαγγέλματα όπως το δικό μας που πολλές φορές ο προγραμματισμός είναι μέσον όχι για την ανάπτυξη σοβαρού λογισμικού αλλά για να γίνει η επεξεργασία ενός αρχείου πχ επεξεργασία ενός output για να είναι συμβατό με το input ενός άλλου προγράμματος. Έχει πολλές numerical/scientific βιβλιοθήκες έτοιμες μέσω του Numpy που για σχεδόν τα πάντα του matlab θα βρεις έτοιμες εναλλακτικές εδώ.

Η C++ είναι κάπως βασίλισσα των γλωσσών, αλλά σα σωστή βασίλισσα έχει και κακά (ή έστω περίεργα) χούγια: Με τη C++ μπορείς να κάνεις ίσως τα περισσότερα πράγματα από όλες τις άλλες γλώσσες, αλλά επειδή ακριβώς σου δίνει αυτή την ελευθερία, πολλά πράγματα (όπως το garbage collection) πρέπει να τα κάνεις μόνος σου. Σου δίνει τη δυνατότητα να δουλέψεις πιο κοντά στο hardware από ότι άλλες γλώσσες (με τα αρνητικά που αυτό συνεπάγεται όταν δε θέλεις να ασχοληθείς με αυτό αλλά απλά να κάνεις τη δουλειά σου). Θα πρέπει επίσης να ασχοληθείς με το πως γίνεται το compilation, ειδικά αν θέλεις να δουλέψεις σε διαφορετικά λειτουργικά. Έχει άπειρες βιβλιοθήκες (ως η παλαιότερη όλων των παραπάνω γλωσσών)
What if I fall?
But imagine, what if you fly?
Άβαταρ μέλους
Dust
 
Δημοσιεύσεις: 911
Εγγραφή: Σάβ, 31 Οκτ 2009 2:29 am
Έτος εισαγωγής: 2009

Re: Γλώσσα προγραμματισμού μετα το Matlab;

Δημοσίευσηαπό GiannisRad » Τετ, 13 Μαρ 2019 3:20 pm

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

Είναι εύκολη, είναι αντικειμενοστραφής, είναι δωρεάν, έχει άπειρο υλικό στο ίντερνετ και είναι και η 3η πιο δημοφιλής γλώσσα αυτή την στιγμή, τουλάχιστον στο Github. Σαν μηχανικός δεν θα ασχοληθείς ποτέ με σοβαρό λογισμικό όπως λειτουργικά συστήματα και γενικά σκληρό software engineering. Πιο πιθανό να κάνεις code prototyping, ένα script που να κάνει τις πράξεις που θέλεις ή να αυτοματοποιεί αναλύσεις με κάποιο πρόγραμμα. Γενικά όπως είπε και ο Dust, ο προγραμματισμός για εμάς είναι μέσον για άλλες εργασίες και όχι αυτή καθ'αυτή η δουλειά.

Όλα τα παραπάνω πάντως δεν έχουν καμία σημασία. Το σημαντικό είναι να μάθεις μια γλώσσα, ειδικά σήμερα που φαίνεται προς τα που πάει το πράμα. Το να σου λέω εγώ "προτείνω ξεκάθαρα Python έναντι C#" είναι σαν να σου λέω "Πάρε Porsche αντί για Buggati", όταν η εναλλακτική του να μην μάθεις τίποτα είναι σαν να πηγαίνεις πεζός. Διαφορές δεν έχουν τα ενδεχόμενα, απλά η C# για έναν απλό μηχανικό είναι σαν τα memes που αγοράζουν 1080ti για να παίξουν minecraft. Εγώ σαν τεμπέλης προτείνω Python πάντως.
Άβαταρ μέλους
GiannisRad
 
Δημοσιεύσεις: 385
Εγγραφή: Δευτ, 03 Ιουν 2013 9:14 pm
Έτος εισαγωγής: 2011

Re: Γλώσσα προγραμματισμού μετα το Matlab;

Δημοσίευσηαπό civil123 » Τετ, 13 Μαρ 2019 9:16 pm

Ευχαριστώ για τις υπερπλήρεις απαντήσεις σας.
Άβαταρ μέλους
civil123
 
Δημοσιεύσεις: 254
Εγγραφή: Δευτ, 15 Φεβ 2016 9:34 pm
Έτος εισαγωγής: 2014

Re: Γλώσσα προγραμματισμού μετα το Matlab;

Δημοσίευσηαπό tsak » Πέμ, 14 Μαρ 2019 5:27 am

Το μόνο διλλημα είναι python ή C++. Η κύρια διαφορά είναι ότι η C++ είναι πιο γρήγορη γιατί είναι compiled, αλλά στη python γράφεις πιο γρήγορα τον ίδιο κώδικα γιατί έχει πολύ απλή σύνταξη. Αλλά πίστεψέ με όταν δεις ενα-δυο tutorial από τη κάθε γλώσσα θα καταλάβεις με ποια πρέπει να ξεκινήσεις.
tsak
 
Δημοσιεύσεις: 9
Εγγραφή: Παρ, 29 Αύγ 2014 1:34 am
Έτος εισαγωγής: 2013

Re: Γλώσσα προγραμματισμού μετα το Matlab;

Δημοσίευσηαπό civilara » Πέμ, 14 Μαρ 2019 3:26 pm

Γινεται παιδια ενας πολιτικος μηχανικος να ασχοληθει καθαρα με την πληροφορικη? το βασικο πτυχιο πληροφορικης δεν σου δινει τα επαγγελματικα δικαιωματα?
civilara
 
Δημοσιεύσεις: 31
Εγγραφή: Παρ, 14 Σεπ 2018 4:29 pm
Έτος εισαγωγής: 2013

Re: Γλώσσα προγραμματισμού μετα το Matlab;

Δημοσίευσηαπό Dust » Πέμ, 14 Μαρ 2019 8:02 pm

civilara έγραψε:Γινεται παιδια ενας πολιτικος μηχανικος να ασχοληθει καθαρα με την πληροφορικη? το βασικο πτυχιο πληροφορικης δεν σου δινει τα επαγγελματικα δικαιωματα?

Ναι, μερικοί πολμηχ στον κύκλο μου έχουν κάνει τη μετάβαση. Προφανώς θέλει δουλειά, διάβασμα etc, αλλά τυπικά είσαι εντάξει.
What if I fall?
But imagine, what if you fly?
Άβαταρ μέλους
Dust
 
Δημοσιεύσεις: 911
Εγγραφή: Σάβ, 31 Οκτ 2009 2:29 am
Έτος εισαγωγής: 2009

Re: Γλώσσα προγραμματισμού μετα το Matlab;

Δημοσίευσηαπό civilara » Πέμ, 14 Μαρ 2019 8:55 pm

χρειαζεται μεταπτυχιακο η απλα αυτομορφωση? δηλαδη οι εργοδοτες θα παρουν ευκολα και καποιον χωρις καποιο πτυχιο σχετικα με την πληροφορικη?
civilara
 
Δημοσιεύσεις: 31
Εγγραφή: Παρ, 14 Σεπ 2018 4:29 pm
Έτος εισαγωγής: 2013

Re: Γλώσσα προγραμματισμού μετα το Matlab;

Δημοσίευσηαπό Dust » Παρ, 15 Μαρ 2019 3:35 am

Στις περιπτώσεις που γνωρίζω το έκαναν με αυτομόρφωση. Αλλά συνήθως ήταν μετά από μερικά χρόνια που έτσι και αλλιώς χρειάστηκε λόγω δουλειάς, εργασιών κλπ να ασχοληθούν σοβαρά με πληροφορική και έπειτα έκαναν και έξτρα μαθήματα. Έχεις να ανταγωνιστείς ανθρώπους που σπούδασαν αντίστοιχα χρόνια πληροφορική και έχουν πληρέστερη/σφαιρικότερη γνώση του αντικειμένου από σένα οπότε όντως πρέπει να είσαι καλός και να ρίξεις δουλειά!
What if I fall?
But imagine, what if you fly?
Άβαταρ μέλους
Dust
 
Δημοσιεύσεις: 911
Εγγραφή: Σάβ, 31 Οκτ 2009 2:29 am
Έτος εισαγωγής: 2009

Re: Γλώσσα προγραμματισμού μετα το Matlab;

Δημοσίευσηαπό civilara » Παρ, 15 Μαρ 2019 3:41 am

Καλως σ ευχαριστω πολυ dust
civilara
 
Δημοσιεύσεις: 31
Εγγραφή: Παρ, 14 Σεπ 2018 4:29 pm
Έτος εισαγωγής: 2013

Re: Γλώσσα προγραμματισμού μετα το Matlab;

Δημοσίευσηαπό civilara » Παρ, 15 Μαρ 2019 3:45 pm

Μηπως γνωριζεις εσυ η καποιος αλλος αν με ενα μεταπτυχιακο στην πληροφορικη απο τους πολιτικους μηχανικους μπορει καποιος να ανταγωνιστει σε καποιο ικανοποιητικο βαθμο τους αποφοιτους πληροφορικης; σορρυ για τις πολλες ερωτησεις απλα θα με ενδιεφερε να ασχοληθω στο μελλον και θα θελα να ξερω αν χρειαζεται σονι και καλα βασικο πτυχιο πληροφορικης η μπορω απλα με ενα μεταπτυχιακο.
civilara
 
Δημοσιεύσεις: 31
Εγγραφή: Παρ, 14 Σεπ 2018 4:29 pm
Έτος εισαγωγής: 2013

Επόμενο

Επιστροφή στο Η τεχνολογική γωνιά του intelx86

Μέλη σε σύνδεση

Μέλη σε αυτή την Δ. Συζήτηση : Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης