Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

1 Πρόγραμμα ονομάζεται η διατύπωση του αλγορίθμου σε μορφή κατανοητή από τον υπολογιστή Το Υλικό μπορεί μόνο Να αποθηκεύει και να ανακτά ακολουθίες δυαδικών.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "1 Πρόγραμμα ονομάζεται η διατύπωση του αλγορίθμου σε μορφή κατανοητή από τον υπολογιστή Το Υλικό μπορεί μόνο Να αποθηκεύει και να ανακτά ακολουθίες δυαδικών."— Μεταγράφημα παρουσίασης:

1 1 Πρόγραμμα ονομάζεται η διατύπωση του αλγορίθμου σε μορφή κατανοητή από τον υπολογιστή Το Υλικό μπορεί μόνο Να αποθηκεύει και να ανακτά ακολουθίες δυαδικών ψηφίων Να κάνει στοιχειώδεις αριθμητικές πράξεις Το οποίο σημαίνει ότι ο ΗΥ γίνεται ‘έξυπνος’ αφού προγραμματιστεί!!! Αρχικοί ΥπολογιστέςΣύγχρονοι Υπολογιστές Τεράστιοι σε διαστάσειςΜικροί σε διαστάσεις Μικρές δυνατότητεςΠολλαπλάσιες δυνατότητες Ίδιες αρχές λειτουργίας

2 2 Γενιές γλωσσών προγραμματισμού Γλώσσες μηχανής (1 η γενιά) Συμβολικές γλώσσες ή χαμηλού επιπέδου (2 η γενιά) Γλώσσες υψηλού επιπέδου (3 η γενιά) Γλώσσες 4 ης γενιάς

3 3 Α. Γλώσσες μηχανής (1 η γενιά) Οι εντολές ήταν διατυπωμένες σε ακολουθίες 0 και 1! Π.χ. ένα ‘απλό’ προγραμματάκι… Πρακτικά, οι προγραμματιστές ρύθμιζαν διακόπτες και άλλαζαν καλωδιώσεις σε κυκλώματα!!! Δηλαδή: επίπονη διαδικασία χρονοβόρα διαδικασία για επιστήμονες (experts)

4 4 Β. Συμβολικές γλώσσες ή Γλώσσες χαμηλού επιπέδου (2 η γενιά) Οι εντολές έχουν νόημα για τον άνθρωπο! Π.χ. ADD 5 10 Αλλά:  Μακροσκελή προγράμματα  Αδυναμία μεταφερσιμότητας (δεν μπορούσαν να εκτελεστούν σε ΗΥ με διαφορετική αρχιτεκτονική) Assembler (συμβολομεταφραστής) Συμβολική γλώσσα Γλώσσα μηχανής

5 5 Γ. Γλώσσες υψηλού επιπέδου (3 η γενιά) Fortran1957 Μαθηματικά και επιστημονικά προβλήματα Cobol1960 Εμπορικές εφαρμογές Algol1960 Απόπειρα για γενικής χρήσης γλώσσα προγραμματισμού PL/11965 Και εμπορικά και επιστημονικά LISP -PROLOG1970 Τεχνητή Νοημοσύνη Basic1960 Για εκπαιδευτικούς σκοπούς Pascal1970 Γενικής χρήσης-ισχυρά προγράμ. C Γενικής χρήσης-ισχυρά χαρακτ. Java Internet – κατανεμημένα περιβάλλ. Οι εντολές είναι στα αγγλικά και ακολουθούν αυστηρούς κανόνες σύνταξης Μεταφράζονται σε γλώσσα μηχανής

6 6 Γ. Γλώσσες υψηλού επιπέδου (3 η γενιά) C++-Γλώσσες οπτικού προγραμματισμού (visual programming) Διαθέτουν κουμπιά, εικονίδια, μενού κ.α. οπτικά εργαλεία στον προγραμματιστή, διευκολύνοντας έτσι τον προγραμματισμό γραφικού περιβάλλοντος -Προγραμματισμός οδηγούμενος από το γεγονός (event driven programming) Όταν ο χρήστης προκαλεί ένα γεγονός (π.χ. κλικάρει ένα κουμπί ή διπλοπατάει ένα εικονίδιο) ενεργοποιείται η εκτέλεση των συγκεκριμένων εντολών που έχει ορίσει ο προγραμματιστής. Visual Basic Visual C Delphi Σύγχρονες γλώσσες προγραμματισμού

7 7 Πλεονεκτήματα Οι εντολές πλησιάζουν τις φυσικές γλώσσες Δυνατότητα μεταφερσιμότητας Ευκολία στην εκμάθηση και εκπαίδευση των γλωσσών Ευκολότερη η διόρθωση λαθών και η συντήρηση των προγραμμάτων Συνέπειες Μείωση χρόνου κατασκευής ενός προγράμματος Μείωση κόστους κατασκευής Προσιτός ο προγραμματισμός σε περισσότερους ανθρώπους Γ. Γλώσσες υψηλού επιπέδου (3 η γενιά)

8 8 Δ. Γλώσσες 4 ης γενιάς Οι γλώσσες προγραμματισμού μέχρι την 3η γενιά απευθύνονταν σε προγραμματιστές – επιστήμονες. Με τις γλώσσες 4ης γενιάς οι χρήστες μπορούν να διατυπώνουν απλά ερωτήματα με εύκολο τρόπο στο σύστημα και να ανακτούν πληροφορίες. Π.χ. SQL (γλώσσα ερωταπαντήσεων) σε Βάσεις Δεδομένων Select first_name, last_name, gradeA From pupilsG Where gradeA<9.0

9 9 Ποια είναι η καλύτερη γλώσσα προγραμματισμού για να την επιλέξουμε να τη διδάξουμε σε όλους τους σπουδαστές Πληροφορικής και να καθιερωθεί σε όλον τον κόσμο??? Επιλέγουμε ποια γλώσσα πρ/σμού θα χρησιμοποιήσουμε ανάλογα με το είδος της εφαρμογής το υπολογιστικό περιβάλλον τις γνώσεις του προγραμματιστή???

10 10 Φυσικές γλώσσες Επικοινωνία μεταξύ ανθρώπων Τεχνητές γλώσσες Επικοινωνία μεταξύ ανθρώπου και μηχανής Διαφορές Οι φυσικές γλώσσες εξελίσσονται! Οι τεχνητές;

11 11 Κοινά χαρακτηριστικά A. Αλφάβητο (σύμβολα που χρησιμοποιούνται) Αγγλική γλώσσα: A, B, C, D, …, ?, 1, 2 κ.τ.λ. ΓΛΩΣΣΑ: Α-Ω, α-ω, Α-Ζ, α-z, !, -, 1-0 B. Λεξιλόγιο (έγκυρες ακολουθίες συμβόλων) Ελληνική γλώσσα: μήλο, Λόλα, τρώω ΓΛΩΣΣΑ: Τέλος_επανάληψης, μέχρι, αλλιώς_αν

12 12 Κοινά χαρακτηριστικά Γ. Γραμματική Τυπικό (αποδεκτές μορφές λέξεων) ΕΛΛΗΝΙΚΗ: γλώσσα, γλώσσας, γλώσσες Συντακτικό (αποδεκτή διάταξη και σύνδεση λέξεων) ΓΛΩΣΣΑ: όσο χ>0 επανάλαβε Δ. Σημασιολογία (νόημα λέξεων, εκφράσεων) Τι δηλώνει το τέλος_προγράμματος στη ΓΛΩΣΣΑ;

13 13 Ιεραρχική σχεδίαση Διάσπαση του προβλήματος σε απλούστερα υποπροβλήματα Π.χ. Υπολογισμός του Μ.Ο. και της Διαμέσου Ν αριθμών: Πρόγραμμα Εισαγωγή των Ν αριθμών ΥπολογισμοίΕμφάνιση αποτελεσμάτων Υπολογισμός ΜΟΥπολογισμός Διαμέσου Διαίρεση του αθροίσματος με Ν Υπολογισμός αθροίσματος Ταξινόμηση των Ν αριθμών Εύρεση της μεσαίας τιμής Τεχνικές Σχεδίασης/Ανάπτυξης προγράμματος

14 14 Τεχνικές Σχεδίασης/Ανάπτυξης προγράμματος Τμηματικός προγραμματισμός Υλοποίηση της λύσης κάθε υποπροβλήματος χωριστά. Κάθε υποπρόβλημα ονομάζεται ενότητα (module) Δομημένος προγραμματισμός Χρήση των δομών: Ακολουθίας, Επιλογής, Επανάληψης Όχι της εντολής GOTO Κάθε πρόγραμμα ή ενότητα προγράμματος έχει ένα σημείο εισόδου και ένα σημείο εξόδου Εμπεριέχει την ιεραρχική σχεδίαση και τον τμηματικό προγραμματισμό

15 15 Χρήση της GoTo… το αποτέλεσμα σπαγγέτι! Αν χ>0 τότε goto 1 Αν χ=0 τότε goto 2 Γράψε ‘Αρνητικός’ 1: Γράψε ‘Θετικός’ GoTo 3 2: Γράψε ‘Μηδέν’ 3: Γράψε ‘Τέλος’ Aν x>0 τότε γράψε ‘θετικός’ Αλλιώς_αν χ=0 τότε γράψε ‘Μηδέν’ Αλλιώς Γράψε ‘Αρνητικός’ Τέλος_αν Γράψε τέλος

16 16 Απλούστερα προγράμματα Άμεση μετατροπή των αλγορίθμων σε προγράμματα Ευκολία στην ανάλυση του προγράμματος σε τμήματα Περιορισμός λαθών Ευκολία στην ανάγνωση και κατανόηση του προγράμματος από τρίτους Ευκολότερη διόρθωση και συντήρηση Πλεονεκτήματα δομημένου προγραμματισμού

17 17 Προγραμματιστικά περιβάλλοντα Πρόγραμμα Μεταφράζεται Γλώσσα Μηχανής Πρόγραμμα ΜΟ Μεταβλητές Ακέραιες: ΜΟ Αρχή ΜΟ  (2+10)/2 Γράψε ΜΟ Τέλος_προγράμματος ΜΟ ….. Μεταγλωττιστής (Compiler) Διερμηνευτής (Interpreter) ή 1.Συντάκτης (editor) 2.Μεταγλωττιστής ή Διερμηνευτής 3.Συνδέτης

18 18 Πώς δουλεύει ένας μεταγλωττιστής; Μεταγλωττιστής Συνδέτης/ Φορτωτής Αρχικό/πηγαίο πρόγραμμα Source code Αντικείμενο πρόγραμμα Object Εκτελέσιμο πρόγραμμα Executable Βιβλιοθήκες Libraries Πώς δουλεύει ένας διερμηνευτής; Ο διερμηνευτής 1.Διαβάζει την κάθε εντολή 2.Ελέγχει την ορθότητά της 3.Τη μετατρέπει σε γλώσσα μηχανής 4.Την εκτελεί 5.Και προχωράει στην επόμενη εντολή

19 19 Κατηγορίες λαθών Α. Συντακτικά Π.χ. όσο α>0 επανάληψη Β. Λογικά Π.χ. Πρόγραμμα ΜέσοςΟρος Μεταβλητές Ακέραιες: ΜΟ Αρχή ΜΟ  /2 Τέλος_προγράμματος Όσο υπάρχουν συντακτικά λάθη στο πρόγραμμα, ΔΕΝ μπορεί να παραχθεί το εκτελέσιμο αρχείο !!!

20 20 Σύγχρονες έννοιες Α. Αντικειμενοστραφής προγραμματισμός (object oriented programming) Στον αντικειμενοστραφή προγραμματισμό, κύρια δομικά στοιχεία είναι τα αντικείμενα, πάνω στα οποία μπορούν να εφαρμοστούν κάποιες ενέργειες. Β. Παράλληλος προγραμματισμός Ανεξάρτητα τμήματα ενός προγράμματος εκτελούνται παράλληλα σε διαφορετικούς επεξεργαστές. Επόμενη διαφάνεια ΕΚΤΟΣ ΥΛΗΣ

21 21 Αντικειμενοστραφής προγραμματισμός: table.Insert table.Delete table.FindKey(‘Μαρία’) table.SortBy(last_name) Table: Αντικείμενο Insert, Delete, FindKey, SortBy: ενέργειες Παράλληλος προγραμματισμός: Πρόβλημα: Υπολογισμός ΜΟ της επίδοσης των τμημάτων της Γ Υπολογισμοί Υπολογισμός ΜΟ Γ1Υπολογισμός ΜΟ Γ2Υπολογισμός ΜΟ Γ3 Υπολογισμός ΜΟ των 3 επιμέρους Μέσων όρων Πίσω….. ΕΚΤΟΣ ΥΛΗΣ


Κατέβασμα ppt "1 Πρόγραμμα ονομάζεται η διατύπωση του αλγορίθμου σε μορφή κατανοητή από τον υπολογιστή Το Υλικό μπορεί μόνο Να αποθηκεύει και να ανακτά ακολουθίες δυαδικών."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google