Το επάγγελμά μου είναι προγραμματιστής. Ο κώδικας μηχανής ως γλώσσα προγραμματισμού. Γλώσσα συναρμολόγησης Προγραμματισμένος κώδικας

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

Κωδικός προγράμματος είναι ένα σύνολο λέξεων και συμβόλων μιας γλώσσας προγραμματισμού.

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

Το αλφάβητο της γλώσσας της Visual Basic περιλαμβάνει το ακόλουθο σύνολο χαρακτήρων:

Κεφάλαια (A - Z) και πεζά (a - z) γράμματα του λατινικού αλφαβήτου.

Αριθμοί από 0 έως 9.

Σημάδια αριθμητικών πράξεων (με αύξουσα σειρά προτεραιότητας): +, -, *, /, |, ^;

Σημάδια σχεσιακών πράξεων: =,<, >.

Σημεία στίξης και διαχωριστικά: ,  . : ; ();

Το αλφάβητο της γλώσσας περιλαμβάνει επίσης κατοχυρωμέναλέξεις που δεν μπορούν να χρησιμοποιηθούν ως ονόματαμεταβλητές ή διαδικασίες. Παραδείγματα δεσμευμένων λέξεων: Dim, Sub, Integer, κ.λπ. Από προεπιλογή, η μπλε γραμματοσειρά χρησιμοποιείται για την επισήμανση λέξεων-κλειδιών στο παράθυρο επεξεργασίας κώδικα της Visual Basic.

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

Παράθυρο κωδικού

Ο κώδικας του προγράμματος είναι γραμμένος στο παράθυρο κώδικα. Κάθε φόρμα έχει ένα τέτοιο παράθυρο.

Άνοιγμα παραθύρου κωδικού:

1 τρόπος - στο παράθυρο Project Explorerκάντε δεξί κλικ στη φόρμα που θέλετε και επιλέξτε από το μενού που ανοίγει Εμφάνιση κωδικού.

Σημείωση: Το παράθυρο κώδικα ενδέχεται να μην συσχετίζεται με τη φόρμα. Το ξεχωριστό παράθυρο κωδικού καλείται Μονάδα μέτρησης. Οι λειτουργικές μονάδες στο παράθυρο του Project Explorer ομαδοποιούνται σε μια ομάδα Ενότητες. Για να ανοίξετε ένα παράθυρο με τον κωδικό της μονάδας, πρέπει να το κάνετε στο παράθυρο Project Explorerδιπλό κλικ στο όνομα της μονάδας.

Μέθοδος 2 - κάντε διπλό κλικ στο στοιχείο ελέγχου στη φόρμα ή στην ίδια τη φόρμα στο παράθυρο φόρμας.

Σημείωση: Αυτό όχι μόνο ανοίγει το παράθυρο κώδικα, αλλά δημιουργεί επίσης μια διαδικασία χειρισμού συμβάντων (δείτε παρακάτω).

Δομή παραθύρου κώδικα:

Ρύζι. 7. Παράθυρο κωδικού προγράμματος.

    Λίστα ελέγχων

    Λίστα συμβάντων ελέγχου

    Διαδικασία (κωδικός)

Διαδικασίες

Δεδομένου ότι όταν ανοίγει το ψυγείο, η λάμπα ανάβει και όταν ανοίγει η βρύση, ρέει νερό, μπορούμε να πούμε ότι όταν συμβεί το γεγονός ανοίγματος του ψυγείου, εκτελείται μια διαδικασία και το γεγονός ανοίγματος της βρύσης προκαλεί μια άλλη διαδικασία. Ομοίως, ο κώδικας προγράμματος αποτελείται από ξεχωριστές διαδικασίες, καθεμία από τις οποίες εκτελεί τις δικές της συγκεκριμένες ενέργειες, για παράδειγμα, μια διαδικασία ανάβει μια λάμπα, μια άλλη ανάβει (αντλάει) νερό.

Visual Basic - διαδικαστική γλώσσα προγραμματισμού.Αυτό σημαίνει ότι μπορείτε να δημιουργήσετε μπλοκ κώδικα σε αυτό, τα οποία στη συνέχεια μπορούν να αναφέρονται με το όνομα. Μόλις ένα μπλοκ κώδικα έχει όνομα, μπορεί να είναι που ονομάζεταικαι ολοκληρώθηκε. Είναι σαν ένα πρόγραμμα μέσα σε ένα πρόγραμμα. Τα μικρά προγράμματα που «ζουν» σε μεγάλα προγράμματα ονομάζονται λειτουργίες ανεπιστρέφουν κάποια τιμή και υπορουτίνες,εάν δεν επιστρέψουν τιμές.

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

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

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

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

Από προεπιλογή, εάν δεν υπάρχει λέξη-κλειδί πριν από τη λέξη-κλειδί Sub, τότε αυτή είναι μια καθολική διαδικασία.

Οι διαδικασίες είναι:

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

    Αυθαίρετες διαδικασίες. Δεν σχετίζεται με συμβάντα και μπορεί να κληθεί από οποιαδήποτε άλλη διαδικασία και να εκτελεστεί ανά πάσα στιγμή. Εάν το ίδιο μπλοκ προγράμματος εμφανίζεται σε όλες τις μορφές σε ένα πρόγραμμα, τότε μπορεί να γραφτεί μόνο μία φορά και σε ένα μέρος, με τη μορφή ενός γενικού κοινού προγράμματος. Η εκκίνηση ενός γενικού προγράμματος δεν σχετίζεται με ένα αντικείμενο και με ένα συμβάν, αλλά συμβαίνει όταν γίνεται πρόσβαση σε αυτό από άλλα μπλοκ προγράμματος. Κλήση γενικής διαδικασίας από την ίδια φόρμα: ProcedureName (ParameterList). Κλήση γενικής διαδικασίας από άλλη φόρμα: ΕΝΑ ΑΝΤΙΚΕΙΜΕΝΟ. ProcedureName (ParameterList). Η γενική διαδικασία μπορεί να είναι τόσο τοπική Ιδιωτική όσο και παγκόσμια Δημόσια

Δομή διαδικασίας

Η διαδικασία αποτελείται από τα ακόλουθα στοιχεία:

    Κεφαλίδα διαδικασίας - σηματοδοτεί την έναρξη της διαδικασίας, το είδος της, τον σκοπό (γεγονός).

Ένα παράδειγμα τίτλου διαδικασίας που εκτελείται όταν κάνετε κλικ σε ένα κουμπί με το όνομα Command1.

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

    Υπο- διαδικασία.

Σημείωση: Εκτός από τις διαδικασίες, υπάρχουν λειτουργίες. Οι συναρτήσεις δεν σχετίζονται με συμβάντα και μπορούν επιπλέον να επιστρέψουν το αποτέλεσμα της εργασίας τους (υπολογισμοί).

    Στοιχείο ελέγχου(ή όνομα φόρμας): Καθορίζει το ακριβές όνομα του στοιχείου που είναι αποθηκευμένο στην ιδιότητα Ονομα.

    Εκδήλωση- όνομα της εκδήλωσης. Εδώ είναι μερικά γεγονότα:

    Κλικ - κλικ του ποντικιού.

    DblClick - διπλό κλικ.

    KeyPress - πάτημα πλήκτρων;

    Unload - ξεφόρτωση της φόρμας (κατά το κλείσιμο της φόρμας, τον τερματισμό του προγράμματος).

    Ενεργοποίηση - ενεργοποίηση της φόρμας (όταν κάνετε κλικ στη φόρμα και επισημαίνεται ο τίτλος της).

    Απενεργοποίηση - απενεργοποιήστε τη φόρμα (όταν κάνετε κλικ σε άλλη φόρμα).

    Initialize - κατά τη δημιουργία ενός αντικειμένου τύπου φόρμας.

    Αλλαγή μεγέθους - όταν αλλάζετε το μέγεθος της φόρμας

    Τερματισμός - τη στιγμή της διαγραφής της φόρμας

    Επιχειρήματα- αυτά είναι τα αρχικά δεδομένα που διαβιβάστηκαν στη διαδικασία για επεξεργασία.

Οι προσαρμοσμένες διαδικασίες έχουν την ακόλουθη κεφαλίδα:

Όνομα διαδικασίαςπρέπει να υπάρχει μοναδικός, πρέπει να ξεκινά με ένα γράμμα και δεν πρέπει να περιέχει κενά ή χαρακτήρες εκτός από υπογράμμιση. Η διαδικασία καλείται ονομαστικά όταν πρέπει να εκτελεστεί.

    Τέλος της διαδικασίας - τερματίζει τον κωδικό προγράμματος της διαδικασίας: End Sub

Σημείωση: για λειτουργίες: Λειτουργία τερματισμού

    Σώμα διαδικασίας - αυτές είναι οι γραμμές μεταξύ του τίτλου και του τέλους. Ο αριθμός τους είναι απεριόριστος. Οι γραμμές περιέχουν οδηγίες που πρέπει να εκτελεστούν όταν καλείται η διαδικασία (συμβαίνει το συμβάν).

Υπορουτίνα (Υπο) - είναι μια διαδικασία που εκτελεί κώδικα προγράμματος μέσα στο μπλοκ του και δεν επιστρέφει τιμή. Η σύνταξη μιας απλής υπορουτίνας είναι:

( Ιδιωτικός | Δημόσιο ) Υπο SubMain ()

..γραμμές κώδικα Τέλος Υπο

Πεδίο εφαρμογής της υπορουτίνας.

Τύπος υπο-διαδικασίας (δηλαδή, υπορουτίνα).

υποΚύριοςτο όνομα που δόθηκε στην υπορουτίνα.

End Sub - τέλος του μπλοκ κωδικών υπορουτίνας.

Δημιουργία διαδικασίας

Για να δημιουργήσετε μια διαδικασία, κάντε τα εξής:

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

    Μέθοδος 2 - ανοίξτε το παράθυρο του κώδικα, μεταβείτε στο Εργαλεία → Προσθήκη διαδικασίας → καθορίστε το όνομα και τις παραμέτρους της διαδικασίας → Εντάξει.

    3 τρόπο - ανοίξτε το παράθυρο κωδικών και εισαγάγετε τις απαιτούμενες γραμμές από το πληκτρολόγιο.

Το αποτέλεσμα θα πρέπει να είναι:

Private Sub Command1_Click()

Κλήση διαδικασιών για εκτέλεση

    Για να εκτελεστεί μια διαδικασία συμβάντος, πρέπει να συμβεί το συμβάν.

    Για να εκτελέσετε μια αυθαίρετη διαδικασία, καθορίστε το όνομα αυτής της διαδικασίας στο σώμα μιας άλλης διαδικασίας.

Private Sub Command1_Click()

Εδώ, όταν κάνετε κλικ στο κουμπί Command1, εμφανίζεται το συμβάν Click και καλείται και εκτελείται η διαδικασία Kvadrat.

Ο κώδικας διαδικασίας εκτελείται γραμμή προς γραμμή και από πάνω προς τα κάτω.

Λειτουργία (Λειτουργία) - είναι μια διαδικασία που εκτελεί γραμμές του κώδικά της και επιστρέφει κάποια τιμή. Η σύνταξη για μια απλή συνάρτηση είναι:

Λειτουργία FunctionName() Ως τύπος δεδομένων

... γραμμέςκώδικας

FunctionName = ReturnValueΛειτουργία τερματισμού

Πεδίο λειτουργίας;

Η συνάρτηση είναι μια λέξη-κλειδί της Visual Basic που υποδεικνύει ότι είναι συνάρτηση.

Όνομα συνάρτησης () - το όνομα που δίνεται στη συνάρτηση·

Το AS είναι μια λέξη-κλειδί της Visual Basic που προηγείται της εκχώρησης ενός τύπου δεδομένων.

Τύπος δεδομένωντύπος δεδομένων τιμής επιστροφής·

ReturnValueτην τιμή που πρέπει να εκχωρηθεί στο όνομα της συνάρτησης (αυτό είναι ένα πολύ σημαντικό σημείο!).

End Function - το τέλος αυτού του μπλοκ κώδικα.

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

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

Η πρώτη γλώσσα μηχανής επινοήθηκε το 1941 από τον Konrad Zuse, ο οποίος είναι ο εφευρέτης της Αναλυτικής Μηχανής. Λίγο αργότερα, το 1943, ο Howard Aiken δημιούργησε τη μηχανή Mark 1, ικανή να διαβάζει οδηγίες σε επίπεδο κώδικα μηχανής.

Στη δεκαετία του 1950 άρχισε η ζήτηση για ανάπτυξη λογισμικού και η γλώσσα μηχανής δεν μπορούσε να χειριστεί μεγάλες ποσότητες κώδικα, έτσι δημιουργήθηκε ένας νέος τρόπος επικοινωνίας με υπολογιστές. Η "Assembler" είναι η πρώτη μνημονική γλώσσα που αντικατέστησε τις οδηγίες μηχανής. Με τα χρόνια, ο κατάλογος των γλωσσών προγραμματισμού αυξάνεται μόνο, επειδή το πεδίο της τεχνολογίας υπολογιστών γίνεται ευρύτερο.

Ταξινόμηση γλωσσών προγραμματισμού

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

  • Προσανατολισμένο στις πτυχές (η κύρια ιδέα είναι ο διαχωρισμός της λειτουργικότητας για την αύξηση της αποτελεσματικότητας των μονάδων λογισμικού).
  • Δομικό (βασισμένο στην ιδέα της δημιουργίας μιας ιεραρχικής δομής μεμονωμένων μπλοκ προγράμματος).
  • Λογική (με βάση τη θεωρία της συσκευής της μαθηματικής λογικής και τους κανόνες ανάλυσης).
  • Αντικειμενοστραφή (σε τέτοιου είδους προγραμματισμό δεν χρησιμοποιούνται πλέον αλγόριθμοι, αλλά αντικείμενα που ανήκουν σε μια συγκεκριμένη κλάση).
  • Multi-paradigm (συνδυάστε πολλά παραδείγματα και ο ίδιος ο προγραμματιστής αποφασίζει ποια γλώσσα θα χρησιμοποιήσει σε μια δεδομένη περίπτωση).
  • Λειτουργικά (τα κύρια στοιχεία είναι συναρτήσεις που αλλάζουν την τιμή τους ανάλογα με τα αποτελέσματα των υπολογισμών των δεδομένων προέλευσης).

Προγραμματισμός για αρχάριους

Πολλοί άνθρωποι αναρωτιούνται τι είναι ο προγραμματισμός; Ουσιαστικά είναι ένας τρόπος επικοινωνίας με υπολογιστή. Χάρη στις γλώσσες προγραμματισμού, μπορούμε να αναθέσουμε συγκεκριμένες εργασίες σε διάφορες συσκευές δημιουργώντας ειδικές εφαρμογές ή προγράμματα. Όταν μελετάτε αυτήν την επιστήμη στο αρχικό στάδιο, το πιο σημαντικό πράγμα είναι να επιλέξετε κατάλληλες (ενδιαφέρουσες για εσάς) γλώσσες προγραμματισμού. Μια λίστα για αρχάριους δίνεται παρακάτω:

  • Η Basic εφευρέθηκε το 1964, ανήκει στην οικογένεια των γλωσσών υψηλού επιπέδου και χρησιμοποιείται για τη συγγραφή προγραμμάτων εφαρμογών.
  • Η εκμάθηση της Python είναι αρκετά εύκολη λόγω της απλής, ευανάγνωστης σύνταξης, αλλά το πλεονέκτημα είναι ότι μπορεί να χρησιμοποιηθεί για τη δημιουργία κανονικών προγραμμάτων επιτραπέζιου υπολογιστή και εφαρμογών ιστού.
  • Η Pascal είναι μια από τις παλαιότερες γλώσσες (1969) που δημιουργήθηκε για τη διδασκαλία μαθητών. Η σύγχρονη τροποποίησή του είναι αυστηρά τυποποιημένη και δομημένη, αλλά το Pascal είναι μια εντελώς λογική γλώσσα που είναι κατανοητή σε διαισθητικό επίπεδο.

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

Οι αρχάριοι έχουν την ευκαιρία να επιταχύνουν την εκμάθηση του προγραμματισμού και των θεμελιωδών του, χάρη σε ειδικά εργαλεία. Ο κύριος βοηθός είναι το ενσωματωμένο περιβάλλον ανάπτυξης προγραμμάτων και εφαρμογών Visual Basic (η "Visual Basic" είναι επίσης μια γλώσσα προγραμματισμού που κληρονόμησε το στυλ της Βασικής γλώσσας της δεκαετίας του 1970).

Επίπεδα γλωσσών προγραμματισμού

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

Οι γλώσσες χαμηλού επιπέδου έχουν σχεδιαστεί για να δημιουργούν οδηγίες μηχανής για επεξεργαστές. Το κύριο πλεονέκτημά τους είναι ότι χρησιμοποιούν μνημονικούς συμβολισμούς, δηλαδή, αντί για μια ακολουθία μηδενικών και μονάδων (από το δυαδικό σύστημα αριθμών), ο υπολογιστής θυμάται μια συντομευμένη λέξη με νόημα από την αγγλική γλώσσα. Οι πιο διάσημες γλώσσες χαμηλού επιπέδου είναι η "Assembler" (υπάρχουν αρκετοί υποτύποι αυτής της γλώσσας, καθένας από τους οποίους έχει πολλά κοινά, αλλά διαφέρει μόνο σε ένα σύνολο πρόσθετων οδηγιών και μακροεντολών), CIL (διαθέσιμο στο .Net πλατφόρμα) και JAVA Bytecode.

Γλώσσες προγραμματισμού υψηλού επιπέδου: λίστα

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

Η ακόλουθη λίστα γλωσσών προγραμματισμού: C ("C"), C# ("C-sharp"), "Fortran", "Pascal", Java ("Java") - είναι από τις πιο χρησιμοποιούμενες συντακτικές υψηλού επιπέδου. Έχει τις ακόλουθες ιδιότητες: αυτές οι γλώσσες λειτουργούν με πολύπλοκες δομές, υποστηρίζουν τύπους δεδομένων συμβολοσειρών και λειτουργίες με πληροφορίες εισόδου/εξόδου αρχείων και έχουν επίσης το πλεονέκτημα ότι είναι πολύ πιο εύκολο να εργαστείτε λόγω της αναγνωσιμότητας και της κατανοητής σύνταξης.

Οι πιο χρησιμοποιούμενες γλώσσες προγραμματισμού

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

  • Γλώσσες OOP: Java, C++, Python, PHP, VisualBasic και JavaScript.
  • ομάδα δομικών γλωσσών: Basic, Fortran και Pascal.
  • πολλαπλό παράδειγμα: C#, Delphi, Curry και Scala.

Πεδίο εφαρμογής προγραμμάτων και εφαρμογών

Η επιλογή της γλώσσας στην οποία είναι γραμμένο ένα συγκεκριμένο πρόγραμμα εξαρτάται σε μεγάλο βαθμό από την περιοχή εφαρμογής του. Έτσι, για παράδειγμα, για την εργασία με το ίδιο το υλικό του υπολογιστή (εγγραφή προγραμμάτων οδήγησης και υποστήριξη προγραμμάτων), η καλύτερη επιλογή θα ήταν η C ("C") ή η C++, οι οποίες περιλαμβάνονται στις κύριες γλώσσες προγραμματισμού (δείτε την παραπάνω λίστα) . Και για να αναπτύξετε εφαρμογές για κινητά, συμπεριλαμβανομένων παιχνιδιών, θα πρέπει να επιλέξετε Java ή C# ("C-sharp").

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

Υπάρχουν μυριάδες τρόποι για να γράψετε κακό κώδικα. Ευτυχώς, για να ανέβεις στο επίπεδο του κώδικα ποιότητας, χρειάζεται απλώς να ακολουθήσεις 15 κανόνες. Το να τους ακολουθήσεις δεν θα σε κάνει κύριο, αλλά θα σου επιτρέψει να το μιμηθείς πειστικά.

Κανόνας 1: Ακολουθήστε τα πρότυπα κωδικοποίησης.

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

Για παράδειγμα, σε αυτό το κομμάτι κώδικα, σύμφωνα με το πρότυπο, υπάρχουν 12 σφάλματα:

Για(i=0 ;i

Μελετήστε προσεκτικά το πρότυπο, μάθετε τα βασικά από έξω, ακολουθήστε τους κανόνες όπως εντολές και τα προγράμματά σας θα είναι καλύτερα από τα περισσότερα γραμμένα από πτυχιούχους κολεγίου.

Πολλοί οργανισμοί προσαρμόζουν τα πρότυπα για να ταιριάζουν στις συγκεκριμένες ανάγκες τους. Για παράδειγμα, η Google έχει αναπτύξει πρότυπα για περισσότερες από 12 γλώσσες προγραμματισμού. Είναι καλά μελετημένα, γι' αυτό ελέγξτε τα αν χρειάζεστε βοήθεια στον προγραμματισμό με την Google. Τα πρότυπα περιλαμβάνουν ακόμη και ρυθμίσεις επεξεργασίας για να σας βοηθήσουν να τηρείτε το στυλ και ειδικά εργαλεία για να επαληθεύσετε ότι ο κώδικάς σας συμμορφώνεται με αυτό το στυλ. ΧΡΗΣΙΜΟΠΟΙΗΣΕ τους.

Κανόνας 2: Δώστε περιγραφικά ονόματα.

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

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

Είναι πολύ πιο σημαντικό να σκεφτείτε πολύ και σκληρά πριν ονομάσετε κάτι. Είναι ακριβές το όνομα; Μήπως εννοούσατε την υψηλότερη τιμή αντί για την καλύτερη τιμή; Είναι το όνομα αρκετά συγκεκριμένο ώστε να αποφεύγεται η χρήση του σε άλλα περιβάλλοντα για παρόμοια αντικείμενα; Δεν θα ήταν καλύτερο να ονομάσουμε τη μέθοδο getBestPrice αντί για getBest; Ταιριάζει καλύτερα από άλλα παρόμοια ονόματα; Εάν έχετε μια μέθοδο ReadEventLog, δεν πρέπει να καλέσετε άλλο NetErrorLogRead. Εάν ονομάσετε μια συνάρτηση, το όνομα περιγράφει την τιμή επιστροφής;

Τέλος, μερικοί απλοί κανόνες ονομασίας. Τα ονόματα κλάσεων και τύπων πρέπει να είναι ουσιαστικά. Το όνομα της μεθόδου πρέπει να περιέχει ένα ρήμα. Εάν μια μέθοδος καθορίζει εάν ορισμένες πληροφορίες σχετικά με ένα αντικείμενο είναι αληθείς ή ψευδείς, το όνομά της πρέπει να ξεκινά με "είναι". Οι μέθοδοι που επιστρέφουν ιδιότητες αντικειμένων πρέπει να ξεκινούν με "get" και οι μέθοδοι που ορίζουν τιμές ιδιοτήτων πρέπει να ξεκινούν με "set".

Κανόνας 3: Σχόλιο και τεκμηρίωση.

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

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

Κανόνας 4. Μην επαναλαμβάνεστε.

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

  • Δημιουργήστε αναφορές API από σχόλια χρησιμοποιώντας Javadoc και Doxygen.
  • Αυτόματη δημιουργία δοκιμών Unit με βάση σχολιασμούς ή συμβάσεις ονομασίας.
  • Δημιουργήστε PDF και HTML από μία πηγή με ετικέτα.
  • Ανάκτηση της δομής της κλάσης από τη βάση δεδομένων (ή το αντίστροφο).

Κανόνας 5: Ελέγξτε για σφάλματα και απαντήστε σε αυτά.

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

Κανόνας 6: Χωρίστε τον κώδικά σας σε σύντομα, διακριτά μέρη.

Κάθε μέθοδος, συνάρτηση ή μπλοκ κώδικα θα πρέπει να χωράει σε ένα κανονικό παράθυρο οθόνης (25-50 γραμμές). Αν είναι πιο μακρύ, χωρίστε το σε μικρότερα κομμάτια. Ακόμη και μέσα σε μια μέθοδο, διαιρέστε μεγάλο κώδικα σε μπλοκ, την ουσία των οποίων μπορείτε να περιγράψετε σε ένα σχόλιο στην αρχή κάθε μπλοκ.

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

Κανόνας 7. Χρησιμοποιήστε API πλαισίου και βιβλιοθήκες τρίτων.

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

Κανόνας 8: Μην υπερσχεδιάζετε.

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

Κανόνας 9: Να είστε συνεπείς.

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

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

Κανόνας 10: Αποφύγετε προβλήματα ασφάλειας.

Ο σύγχρονος κώδικας σπάνια λειτουργεί μεμονωμένα. Έχει άμεσο κίνδυνο να γίνει στόχος επίθεσης. Δεν χρειάζεται να προέρχονται από το Διαδίκτυο. η επίθεση μπορεί να συμβεί μέσω των δεδομένων εισόδου της εφαρμογής σας. Ανάλογα με τη γλώσσα προγραμματισμού και τον τομέα σας, μπορεί να χρειαστεί να ανησυχείτε για υπερχειλίσεις buffer, δέσμες ενεργειών μεταξύ τοποθεσιών, εισαγωγή SQL και άλλα παρόμοια ζητήματα. Μελετήστε αυτά τα προβλήματα και αποφύγετε τα στον κώδικά σας. Δεν είναι δύσκολο.

Κανόνας 11: Χρησιμοποιήστε αποτελεσματικές δομές δεδομένων και αλγόριθμους.

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

Κανόνας 12. Χρησιμοποιήστε δοκιμές μονάδας.

Η πολυπλοκότητα του σύγχρονου λογισμικού καθιστά ακριβότερη την εγκατάσταση και δυσκολότερη τη δοκιμή. Μια παραγωγική προσέγγιση θα ήταν να συνοδεύεται κάθε κομμάτι κώδικα με δοκιμές που ελέγχουν την ορθότητα της λειτουργίας του. Αυτή η προσέγγιση απλοποιεί τον εντοπισμό σφαλμάτων επειδή επιτρέπει τον εντοπισμό σφαλμάτων νωρίτερα. Η δοκιμή μονάδας είναι απαραίτητη όταν προγραμματίζετε σε δυναμικά πληκτρολογημένες γλώσσες, όπως η Python και η JavaScript, επειδή εντοπίζουν σφάλματα μόνο κατά το χρόνο εκτέλεσης, ενώ οι στατικά πληκτρολογημένες γλώσσες όπως η Java, η C# και η C++ μπορούν να πιάσουν μερικά από αυτά κατά το χρόνο εκτέλεσης. compile χρόνος. Η δοκιμή μονάδας σάς επιτρέπει επίσης να αναδιαμορφώνετε τον κώδικά σας με σιγουριά. Μπορείτε να χρησιμοποιήσετε το XUnit για να διευκολύνετε τη σύνταξη δοκιμών και την αυτοματοποίηση της εκτέλεσής τους.

Κανόνας 13: Διατηρήστε τον κωδικό σας φορητό.

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

Κανόνας 14: Κάντε τον κώδικά σας συνθέσιμο.

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

Κανόνας 15: Τοποθετήστε τα πάντα στον έλεγχο έκδοσης.

Όλα τα στοιχεία σας - κώδικας, τεκμηρίωση, πηγές εργαλείων, σενάρια έκδοσης, δεδομένα δοκιμής - θα πρέπει να βρίσκονται σε έλεγχο έκδοσης.

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

Σκοπός

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

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

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

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

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

Οργάνωση

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

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

Για να διευκολυνθεί η εργασία με τον πηγαίο κώδικα και να επιτραπεί σε μια ομάδα προγραμματιστών να συνεργαστεί στον κώδικα, χρησιμοποιούνται συστήματα ελέγχου έκδοσης.

Ποιότητα

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

  • αναγνωσιμότητα κώδικα (συμπεριλαμβανομένης της παρουσίας

Άλλοι για διασκέδαση, άλλοι για να αποδείξουν την ύπαρξη ή να διαψεύσουν μια υπόθεση, άλλοι για να ασκήσουν το μυαλό τους (ταξιδεύοντας στην επιφάνεια ενός μπουκαλιού Klein ή σε τετραδιάστατο χώρο), αλλά εκατοντάδες άνθρωποι έχουν δημιουργήσει «εσωτερικές» γλώσσες προγραμματισμού. Έχω περάσει από περίπου 150 από αυτές τις γλώσσες και δεν θα είμαι ποτέ ξανά ο ίδιος.

"Argh!", "Oof!", "2-ill", "Nhohnhehr", "Noit o" mnain gelb", "DZZZZ", "Ypsilax", "YABALL", fuckfuck - αυτά είναι ξόρκια, η ποίηση είναι μόνο ονόματα ... under catom - παραδείγματα κώδικα στις πιο εντυπωσιακές γλώσσες προγραμματισμού.

Η τρύπα του κουνελιού είναι βαθιά.

INTERCAL (Τούρινγκ-πλήρη)



Don Woods και Jim Lyon

Μία από τις παλαιότερες εσωτερικές γλώσσες προγραμματισμού. Σύμφωνα με τους δημιουργούς, το όνομά του σημαίνει «Γλώσσα μεταγλωττιστή χωρίς προφορικό ακρωνύμιο». Η γλώσσα δημιουργήθηκε το 1972 από τους μαθητές Don Woods και James M. Lyon ως παρωδία των υπαρχουσών γλωσσών προγραμματισμού και της νοητικής γυμναστικής.

Γειά σου Κόσμε

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

Γειά σου Κόσμε!

// «Hello World» του Stephen McGreal.
// Σημειώστε ότι οι απόψεις που εκφράζονται σε αυτόν τον πηγαίο κώδικα δεν συμπίπτουν απαραίτητα με εκείνες του

Gr34t l33tN3$$;
M3h…
iT 41n"t s0 7rIckY.

Το L33t sP33k είναι U8er keWl 4nD eA5y wehn u 7hink 1t tHr0uGh.
1f u w4nn4be UB3R-l33t u d3f1n1t3lY w4nt σε 0n a b4d4sS h4xX0r1ng s1tE!!! ;Π
w4r3Z c0ll3cT10n2 r 7eh l3Et3r!

Qu4k3 cL4nS r 7eh bE5t tH1ng 1n teh 3nTIr3 w0rlD!!!
g4m3s wh3r3 u g3t έως 5h00t ppl r 70tAl1_y w1cK1d!!!
I"M teh fr4GM4stEr aN I"lL t0t41_1Ly WIpE teh phr34k1ng fL00r ***j3d1 5tYlE*** WITH y0uR h1dE!!! L0L0L0L!
t3lEphR4gG1nG l4m3rs wit my m8tes r34lLy k1kK$ A$$

L33t hAxX0r$ CrE4t3 u8er- k3wL 5tUff lIkE n34t pR0gR4mm1nG lAnguidGe$…
s0m3tIm3$ teh l4nGu4gES l00k jUst l1k3 rE41_ 0neS 7o mAkE ppl Th1nk th3y"r3 ju$t n0rMal lEE7 5pEEk αλλά th3y"re 5ecRetLy c0!!!
n080DY κάτω από 5tAnD$ l33t SpEaK 4p4rT fr0m j3d1!!!
50mE παιδί 0n A me$$4gEb04rD m1ghT 8E a r0xX0r1nG hAxX0r wH0 w4nT2 t0 bR34k 5tuFf, 0r mAyb3 ju5t sh0w 7eh wAy5 l3n3t 4mE cp!!! hE i5 teh u8ER!!!
1t m1ght 8E 5omE v1rus 0r a Pl4ySt4tI0n ch34t c0dE.
1t 3v3n MiTe jUs7 s4y “H3LL0 W0RLD!!!” u ju5t δεν μπορείτε"T gu3s5.
tH3r3"s n3v3r anY p0iNt l00KiNg sC3pT1c4l c0s th4t, be1_1Ev3 iT 0r n0t, 1s whAt th1s 1s!!!

5uxX0r5!!!L0L0L0L0L!!!

ArnoldC

Γλώσσα προγραμματισμού Terminator.

Γειά σου Κόσμε!

Οκ!

Είτε η γλώσσα των ουρακοτάγκων, είτε το όνειρο του Γουίλιαμ του Όκαμ.

Γειά σου Κόσμε!

Σεφ

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

Γειά σου Κόσμε

Hello World Souffle.

Συστατικά.
72 γρ φασόλια φασόλια
101 αυγά
108 γρ λαρδί
111 φλιτζάνια λάδι
32 κολοκυθάκια
119 ml νερό
114 γρ κόκκινο σολομό
100 γρ μουστάρδα ντιζόν
33 πατάτες

Μέθοδος.
Βάλτε τις πατάτες στον κάδο του μίξερ.
Βάλτε τη μουστάρδα ντιζόν στον κάδο του μίξερ.

Βάλτε τον κόκκινο σολομό στον κάδο του μίξερ.

Ρίξτε νερό στον κάδο του μίξερ.
Βάλτε τα κολοκυθάκια στον κάδο του μίξερ.
Ρίξτε λάδι στον κάδο του μίξερ.
Βάλτε το λαρδί στον κάδο του μίξερ.
Βάλτε το λαρδί στον κάδο του μίξερ.
Βάζουμε τα αυγά στον κάδο του μίξερ.
Βάλτε τα φασόλια φασόλια στον κάδο του μίξερ.
Ρευστοποιήστε τα περιεχόμενα του κάδου ανάμειξης.
Ρίξτε το περιεχόμενο του μπολ του μίξερ στο ταψί.