Basics Flashcards
Τι γλώσσα είναι η C ?
System Programming
Τι γλώσσα είναι η Go?
System Programming
Τι γλώσσα είναι η Python?
Object-Oriented, Functional, Scripting
Τι γλώσσα είναι η Java?
Object-Oriented
Τι γλώσσα είναι η Scala?
Functional - Συναρτησιακός προγραμματισμός
Τι γλώσσα είναι η JavaScript?
Scripting
Τι γλώσσα είναι η C++?
System Programming
Ποιες γλώσσες είναι System programming?
C, Go, C++
Ποιες γλώσσες είναι object-oriented
Java, Python
Ποιες γλώσσες είναι Functional ?
Scala, Python
Ποιες γλώσσες είναι Scripting?
JavaScript, Python
Που χρησιμεύει η Kotlin?
για Android apps, μαζί με Java
Η TypeScript είναι υποσύνολο της JavaScript.
Όχι. Είναι υπερσύνολο
Που χρησιμοποιείται η Go?
system level, cloud, Google
Που χρησιμοποιείται η Swift?
iOS, macOS apps μαζί με C, C++
Που χρησιμοποιείται η R?
Statistics,Data Analysis, ML
Γιατί έχουμε πολλές γλώσσες προγραμματισμού?
Εξέλιξη (βελτίωση), κοινωνικοικονομικοί παράγοντες, προσανατολισμός σε ειδικούς σκοπούς+ ειδικό hardware
Τι πρέπει να έχει μία γλώσσα προγραμματισμού για να θεωρείται επιτυχημένη? (7)
Ευκολία…
Μεταγλώττιση σε…
και άλλα 2 :)
Ευκολία στην μάθηση, στην έκφραση, στην χρήση, στην ανάπτυξη
Δυνατότητα να μεταγλωττιστεί σε γρήγορο και μικρό κώδικα
Έχει δυνατό υποστηρικτή
Μεγάλη διασπορά με ελάχιστο κόστος
Ποιες γλώσσες είναι εύκολες στην μάθηση?
BASIC, Pascal, Python
Εύκολες στην έκφραση + χρήση?
C, Lisp, APL, Algol68, PHP, Python
Ποια γλώσσα είναι εύκολη στην ανάπτυξη?
BASIC
Ποιες γλώσσες έχουν δυνατό υποστηρικτή?
COBOL,Visual Basix, Google…
Ποιες γλώσσες έχουν μεγάλη διασπορά με ελάχιστο κόστος?
Pascal, Java, Python
Γιατί έχουμε γλώσσες προγραμματισμού? (5)
-Τρόπος σκέψης-αλγόριθμοι
-Περιβάλλον χρήστη
-Αφαίρεση VM (Virtual Machine)
-Καθοδηγούμε το hardware χωρίς να μπλέκω με bits
-Κατασκευαστής
Γιατί συγκρίνω Fortran και Ada?
Για αριθμητικούς υπολογισμούς
Γιατί συγκρίνω C και C++?
Για να δω ποια είναι καλύτερη για προγραμματισμό συστημάτων
Γιατί συγκρίνω Common Lisp, Scheme , ML?
Για διαχείριση συμβολικών δεδομένων
Γιατί συγκρίνω Java και C?
Για δικτυώμενα προγράμματα υπολογιστών
Γιατί συγκρίνω NodeJS και PHP?
Για server side scripting
Ποιες γλώσσες χρησιμοποιούνται για server side scripting?
NodeJS και PHP
Γλώσσες δικτυώμενα προγράμματα υπολογιστών?
Java και C
Ποια γλώσσα είναι καλύτερη για προγραμματισμό συστημάτων?
C και C++
Ποια γλώσσα μεταγλωττίζει σε γρήγορο-μικρό κώδικα?
Fortran
Τι είδους γλώσσα είναι η ALGOL?
επιτακτική - imperative
Ποια είναι η βασική δουλειά της ALGOL?
Περιγραφή δεδομένων ανεξάρτητη από μήχανη(Συστήματα διαχείρισης βάσεων δεδομένων)
Η C δεν είναι Von Neumann γλώσσα
ΛΑΘΟΣ. είναι
Η C,Python,C++,Java… είναι
επιτακτικές -imperative γλώσσες
Στις επιτακτικές γλώσσες ο υπολογισμός επιτυγχάνεται με αλλαγή κατάστασης μεταβλητών (θέσεις μνήμης)
Σωστό
Οι γλώσσες συναρτησιακού προγραμματισμού στηρίζονται σε…
μαθηματικές συναρτήσεις
Αντίστροφοι μεταγλωττιστές- decompilers
γλώσσα χαμηλού–> υψηλού επιπέδου
Είναι οι μετα-μεταφραστές παραμετρικοί ως προς αρχική και τελική γλώσσα?
ΝΑΙ
Οι μετα-μεταφραστές θέλουν πολύ κόπο και δουλειά για να υλοποιηθούν.
ΛΑΘΟΣ. λιγότερη δουλειά!
Ποιες ειναι οι 2 κατηγορίες των μετα-μεταφραστών?
Οι προσαρμοζόμενοι και οι γεννήτορες
Λειτουργεί ως ζεύγος αρχικής+τελικής γλώσσας
Προσαρμοζόμενοι μετα-μεταφραστές
Τι κάνει ο μετα-μεταφραστής γεννήτορας?
Παράγει τον μεταφραστή
Ο προεπεξεργαστής είναι μεταφραστής?
Θεωρείται μεταφραστής.
γλώσσα υψηλού επιπέδου–>υψηλού επιπέδου
Προεπεξεργαστής
Συμβολική γλώσσα (assembly)–> γλώσσα μηχανής
Συμβολομεταφραστές
Ομαδοποιεί χαρακτήρες σε tokens
Προεπεξεργαστής
Αφαιρεί σχόλια και κενά
Προεπεξεργαστής
Τι κάνει ένας συμβολομεταφραστής?
Συμβολική γλώσσα (assembly)–> Γλώσσα μηχανής
Η assembly είναι εύκολα αναγνώσιμη
Σωστό
Απομονώνει τον μεταφραστή από αλλαγές στην μορφή των αρχείων της γλώσσας μηχανής
Συμβολομεταφραστής
Ποια είναι τα 3 προγράμματα που θεωρούνται ως μεταφραστές?
Προεπεξεργαστής
Συμβολομεταφραστής
Γεννήτορες Προγραμμάτων
Σε τι γλώωσα είναι φτιαγμένοι οι flex bison?
C
Σε ποια κατηγορία ανήκει το flex bison?
Γεννήτορες προγραμμάτων
Τι κάνουν οι γεννήτορες προγραμμάτων?
Αυτόματη κατασκευή προγραμμάτων-τμημάτων μεταφραστή
Που χρησιμεύει ο flex bison?
Για κατασκευή λεξικών και συντακτικών αναλυτών γραμμένων σε C,C++ ή Java.
Ο φορτωτής είναι τμήμα του λειτουργικού συστήματος και τοποθετεί..
τον εκτελέσιμο κώδικα στην μνήμη για να εκτελεστεί
Συνδέτης : Συνδέει…
μεταφρασμένα προγράμματα +run time libraries = εκτελέσιμος κώδικας
Η run time library της C περιέχει ….
τον εκτελέσιμο κώδικα για τις προκαθορισμένες συναρτήσεις (printf…)