Ένας οδηγός αρχαρίων για τη γλώσσα προγραμματισμού Ruby

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

Τι είναι ένα αντικείμενο; Λοιπόν, από μια άποψη μπορείτε να το σκεφτείτε από την άποψη της κατασκευής ενός αυτοκινήτου. Εάν έχετε ένα σχέδιο για αυτό, τότε ένα αντικείμενο είναι αυτό που είναι κατασκευασμένο από αυτό το σχέδιο. Περιέχει όλα τα χαρακτηριστικά που διατηρεί το αντικείμενο (δηλ. Μάρκα, μοντέλο, χρώμα) και τις ενέργειες που μπορεί να εκτελέσει. Αλλά, ακόμη και ως καθαρή αντικειμενοστρεφής γλώσσα, ο Ruby δεν θυσιάζει καμία ευχρηστία ή ευελιξία εξαιρώντας χαρακτηριστικά που δεν σχετίζονται ρητά με αντικειμενοστραφή προγραμματισμό.

Σχεδίαση του Ruby

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

instagram viewer
Perl, Smalltalk και Lisp.

Υπάρχουν βιβλιοθήκες για την κατασκευή όλων των τύπων εφαρμογών με Ruby: XML parsers, GUI συνδέσεις, πρωτόκολλα δικτύωσης, βιβλιοθήκες παιχνιδιών και πολλά άλλα. Οι προγραμματιστές Ruby έχουν επίσης πρόσβαση στο ισχυρό RubyGems πρόγραμμα. Συγκρίσιμο με το Perl's CPAN, Το RubyGems καθιστά εύκολη την εισαγωγή βιβλιοθηκών άλλων προγραμματιστών στα δικά σας προγράμματα.

Τι είναι Ruby Δεν?

Όπως κάθε γλώσσα προγραμματισμού, ο Ruby έχει τα μειονεκτήματά του. Δεν είναι μια γλώσσα προγραμματισμού υψηλής απόδοσης. Συναφώς, Python's ο σχεδιασμός εικονικής μηχανής έχει τεράστιο πλεονέκτημα. Επίσης, αν δεν είστε οπαδός της αντικειμενοστρεφούς μεθοδολογίας, τότε ο Ruby δεν είναι για σας.

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

Πώς χρησιμοποιείται το Ruby;

Το Ruby χρησιμοποιείται σε τυπικές εφαρμογές γλώσσας δέσμης ενεργειών, όπως η επεξεργασία κειμένου και τα προγράμματα "κόλλα" ή middleware. Είναι κατάλληλο για μικρές, ad-hoc εργασίες δέσμης ενεργειών που στο παρελθόν μπορεί να έχουν λυθεί με Perl. Η σύνταξη μικρών προγραμμάτων με τον Ruby είναι τόσο εύκολη όσο η εισαγωγή του ενότητες χρειάζεστε και γράφετε έναν τύπο προγράμματος σχεδόν τύπου "ακολουθίας συμβάντων".

Όπως και ο Perl, ο Ruby έχει επίσης πρώτης τάξεως κανονικές εκφράσεις, η οποία κάνει τα scripts επεξεργασίας κειμένου ένα στιγμιότυπο για να γράψετε. Η ευέλικτη σύνταξη επίσης βοηθούς σε μικρά σενάρια. Με κάποιες αντικειμενοστρεφείς γλώσσες, μπορείτε να μπλοκαριστείτε με λεπτομερή και ογκώδη κώδικα, αλλά ο Ruby σας αφήνει ελεύθερο να ανησυχείτε απλά για το σενάριό σας.

Το Ruby είναι επίσης κατάλληλο για μεγαλύτερα συστήματα λογισμικού. Η πιο επιτυχημένη εφαρμογή του είναι στο Ruby on Rails web πλαίσιο, λογισμικό που έχει πέντε σημαντικά υποσυστήματα, πολλά δευτερεύοντα κομμάτια και μια πληθώρα σεναρίων υποστήριξης, βάσεις δεδομένων βάσεων δεδομένων και βιβλιοθήκες.

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

Τι δεξιότητες θα βοηθούσαν στη μάθηση του Ruby;

  • Μια σταθερή κατανόηση των αντικειμενοστρεφών εννοιών. Το Ruby είναι μια αντικειμενοστρεφής γλώσσα και τα αντικειμενοστραφή χαρακτηριστικά χρησιμοποιούνται σε όλη την έκταση. Χωρίς αυτή την κρίσιμη ικανότητα, θα παίζετε ως προγραμματιστής του Ruby.
  • Λίγη λειτουργική γνώση προγραμματισμού. Αυτό είναι ένα πλεονέκτημα, καθώς ο Ruby χρησιμοποιεί εκτεταμένα το μπλοκ ή το "κλείσιμο". Η μη δυνατότητα αυτής της ικανότητας δεν είναι ανυπέρβλητη. Η δημιουργία μπλοκ είναι ένα χαρακτηριστικό που μπορεί να μάθει αρκετά εύκολα ενώ μαθαίνει Ruby.
  • Λίγη τεχνογνωσία πλοήγησης. Ο κύριος τρόπος εκτέλεσης ενός σεναρίου Ruby είναι από τη γραμμή εντολών. Γνωρίζοντας πώς να περιηγηθείτε σε καταλόγους, να τρέχετε σενάρια και να κάνετε ανακατεύθυνση εισόδου και εξόδου είναι απαραίτητες δεξιότητες για τους προγραμματιστές Ruby.

Εφαρμογές και εργαλεία που χρειάζονται για το Ruby

  • Το Ruby διερμηνέας
  • Ένας επεξεργαστής κειμένου όπως Σημειωματάριο ++, Scite, ή Vim. Οι επεξεργαστές κειμένου όπως το Wordpad ή το Microsoft Word δεν είναι κατάλληλοι.
  • Γραμμή εντολών πρόσβαση. Παρόλο που οι λεπτομέρειες αυτού διαφέρουν από πλατφόρμα σε πλατφόρμα, το Linux, τα Windows και το OSX διαθέτουν όλα αυτά χωρίς επιπλέον downloads ή εγκατάσταση λογισμικού.