Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Λογισμικό Συστήματος Κλειώ Σγουροπούλου.
Advertisements

1 Πρόγραμμα ονομάζεται η διατύπωση του αλγορίθμου σε μορφή κατανοητή από τον υπολογιστή Το Υλικό μπορεί μόνο Να αποθηκεύει και να ανακτά ακολουθίες δυαδικών.
Γεωργαλλίδης Δημήτρης Καθηγητής Πληροφορικής
Ίδιες αρχές λειτουργίας
Κεφάλαιο 6 -Περιβάλλοντα Ανάπτυξης Εφαρμογών
Κεφάλαιο 6: Εισαγωγή στον προγραμματισμό Φυσικές και τεχνητές γλώσσες.
Λογισμικό (Software).
Καθηγητής: Σπύρος Ξουργιάς1 Η Έννοια του Προγράμματος Ακριβής προσδιορισμός προβλήματος Ακριβής προσδιορισμός προβλήματος Ανάπτυξη αντίστοιχου αλγορίθμου.
Για τη διεκπεραίωση ενός προβλήματος πρέπει να ακολουθηθεί η εξής διαδικασία:  να γραφεί ο αλγόριθμος να συνταχθεί το πρόγραμμα σε γλώσσα υψηλού επιπέδου.
ΛΑΔΑΚΑΚΟΣ ΘΑΛΗΣ Α.Μ ΔΙΑΧΕΙΡΗΣΗ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ
Από την ιδέα μέχρι το λογισμικό. Ξεκινώντας από το πρόβλημα...
ΛΟΓ102: Τεχνολογία Λογισμικού Ι Διδάσκων: Νίκος Παπασπύρου 1Νίκος ΠαπασπύρουΛΟΓ102:
1 Η Σημερινή Κατάσταση της Κυπριακής Οικογένειας Κέντρο Ερευνών και Ανάπτυξης, Intercollege.
Το πρόγραμμα σπουδών στην Ελληνική εκπαίδευση. Σκοπός Σκοπός της διάλεξης είναι η περιγραφή και ανάλυση της θέσης της Πληροφορικής και των ΤΠΕ στην ελληνική.
ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΣΕΡΡΕΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Τ. Ε. ΤΟΜΕΑΣ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΤΕΧΝΙΚΩΝ.
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java.
Μεταρρύθμιση Φορολογίας Εισοδήματος. Νέες Κλίμακες Φορολογίας Εισοδήματος Το εισόδημα από μισθούς ( συντάξεις ) και επιχειρηματική δραστηριότητα φορολογείται.
LOGO Προγραμματισμός Η/Υ β’ εξάμηνο – εργαστήριο ΚΑΛΟΓΙΑΝΝΗΣ ΓΡΗΓΟΡΙΟΣ Ηλεκτρολόγος Μηχανικός και Μηχανικός Υπολογιστών Α.Π.Θ. Msc Τηλεπικοινωνίες Πολυτεχνική.
Ενότητα 1 1 Πρότυπο κόστος. Τι είναι: –Πολύ σωστά και πολύ λεπτομερειακά υπολογισμένο προϋπολογιστικό κόστος Τι εκφράζει: –Στόχους που θα πρέπει να επιτευχθούν.
Εισαγωγή στον προγραμματισμό Μέρος 3 ο Προγραμματιστικά περιβάλλοντα § 6.7.
KΛΕΟΠΑΤΡΑ ΚΤΕΝΑ LECTURE:4 KΛΕΟΠΑΤΡΑ ΚΤΕΝΑ LECTURE:4.
ΚΕΦ 6 ο ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ. ΣΤΑΔΙΑ ΕΠΙΛΥΣΗΣ ΕΝΟΣ ΠΡΟΒΛΗΜΑΤΟΣ ΚΑΤΑΝΟΗΣΗ – ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ (ΖΗΤΟΥΜΕΝΑ - ΔΕΔΟΜΕΝΑ) ΣΧΕΔΙΑΣΜΟΣ - ΑΝΑΠΤΥΞΗ ΛΥΣΗΣ.
ΘΕΑΤΡΟΠΑΙΔΑΓΩΓΙΚΟ ΠΡΟΓΡΑΜΜΑ ΣΕ ΣΥΝΕΡΓΑΣΙΑ ΜΕ ΤΟ ΣΥΛΛΟΓΟ ΑΜΕΑ ΑΡΓΟΛΙΔΑΣ.
ΤΡΟΠΟΣ ΖΩΗΣ ΚΑΙ ΚΑΡΔΙΑΓΓΕΙΑΚΑ ΝΟΣΗΜΑΤΑ
Εισαγωγή στο Περιβάλλον της Visual Basic
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΠΡΟΫΠΟΛΟΓΙΣΜΟΥΣ
Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ Β΄ ΠΛΗΡΟΦΟΡΙΚΗΣ
INSTRUCTIONS LANGUAGE OF THE MACHINE
Ενότητα 1 : Εισαγωγικά Στοιχεία της Pascal Αλέξανδρος Τζάλλας
Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ
ΧΠΕ – ΕΡΓΑΣΤΗΡΙΟ 2ο Κατανόηση του έργου ΝΕΟΛΑΙΑ – ΑΘΛΗΤΙΣΜΟΣ
Εισαγωγή στον προγραμματισμό
Νικήτας Σγούρος Μεταγλωττιστές Νικήτας Σγούρος
Νικήτας Σγούρος Μεταγλωττιστές Νικήτας Σγούρος
Σχεδίαση Λογισμικού Διδάσκων: Κων/νος Κώτης (BSc, PhD)
Δομημένος Προγραμματισμός
ΓΛΩΣΣΕΣ & ΕΡΓΑΛΕΙΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ
ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΠΕΡΙΒΑΛΛΟΝΤΑ Ανάπτυξη Εφαρμογών για Φορητές Συσκευές
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
Διαφάνειες 1-8 και 18,19,22,23 από: eclass. sch. gr/modules/video/file
Κύτταρο-πυρήνας-χρωμοσώματα-γονίδια-DNA
Εφευρέσεις που θα κάνουν την ζωή μας πιο όμορφη…
Διαφάνειες 1-8 και 18,19,22,23 από: eclass. sch. gr/modules/video/file
Η Νοτιοανατολική Ευρώπη υπό ξένη κυριαρχία
Η Νοτιοανατολική Ευρώπη υπό ξένη κυριαρχία ( )
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ
Διαθεματικό Ενιαίο Πλαίσιο Προγραμμάτων Σπουδών (ΔΕΠΠΣ) & Αναλυτικά Προγράμματα Σπουδών (ΑΠΣ) Τρύφων Μαυροπαλιάς.
ΕΦΑΡΜΟΣΜΕΝΕΣ ΤΕΧΝΕΣ ΔΙΕΥΘΥΝΣΗ ΜΕΣΗΣ ΤΕΧΝΙΚΗΣ ΚΑΙ ΕΠΑΓΓΕΛΜΑΤΙΚΗΣ ΕΚΠΑΙΔΕΥΣΗΣ.
εισαγωγή στην έννοια του Αλγόριθμου & Προγραμματισμού
Η έννοια του προβλήματος
Κοσόγλου Ιορδάνης - Msc, μαθηματικός
ΔΙΑΓΩΝΙΣΜΟΣ ΣΤΗΝ ΤΑΞΗ ΜΟΝΤΕΡΝΑ ΠΟΙΗΣΗ VS ΠΑΡΑΔΟΣΙΑΚΗ ΠΟΙΗΣΗ.
Αρχες διοικησησ & διαχειρισησ εργων
Συμβουλές για ένα υγιές βάρος
Ειδικά Θέματα στον Προγραμματισμό Υπολογιστών
Κωνσταντάρας: Χειροποίητα έπιπλα με προσωπικότητα
Απάτες στα Τρόφιμα και Ασφάλεια Τροφίμων Γιώργος Σάββα, Υγειονομικός Λειτουργός Υγειονομικές Υπηρεσίες, Ιατρικές Υπηρεσίες και υπηρεσίες Δημόσιας Υγείας,
Εισαγωγή στους Η/Υ και στο περιβάλλον της Compaq Visual Fortran
ΝΈΟ ΟΡΓΑΝΟΓΡΑΜΜΑ (ΙΑΝ14) VS. ΕΓΚΡΙΘΕΝ ΟΡΓΑΝΟΓΡΑΜΜΑ (ΑΥΓ13)
Πείθουμε τους εαυτούς μας ότι η ζωή μας θα είναι καλύτερη όταν θα παντρευτούμε, θα αποκτήσουμε ένα μωρό, μετά ένα ακόμα. Μετά αγχωνόμαστε διότι τα παιδιά.
ΗΜΥ-210: Λογικός Σχεδιασμός Εαρινό Εξάμηνο 2005
Νοσηλευτική φροντίδα ασθενών που βιώνουν Απώλεια, Θρήνο και Θάνατο
Αποικίες στον Άρη Top Six Χατζής Πέτρος Χατζής Ευάγγελος
Βιολόγος 3ο ΓΕΛ Χαϊδαρίου
Πείθουμε τους εαυτούς μας ότι η ζωή μας θα είναι καλύτερη όταν θα παντρευτούμε, θα αποκτήσουμε ένα μωρό, μετά ένα ακόμα. Μετά αγχωνόμαστε διότι τα παιδιά.
Πείθουμε τους εαυτούς μας ότι η ζωή μας θα είναι καλύτερη όταν θα παντρευτούμε, θα αποκτήσουμε ένα μωρό, μετά ένα ακόμα. Μετά αγχωνόμαστε διότι τα παιδιά.
Ζορμπάς – Καζαντζάκης Συναίσθημα – Λογική
6η Επιμορφωτική Διημερίδα Ζ’ ΕΝΩΣΗΣ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΗΘΙΚΗ Ζ΄ ΕΞΑΜΗΝΟΥ ΜΕΘΟΔΟΛΟΓΙΑ ΤΗΣ ΗΘΙΚΗΣ
Μεταγράφημα παρουσίασης:

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ Κεφάλαιο 6: Εισαγωγή στον προγραμματισμό 6.3 Φυσικές και τεχνητές γλώσσες 6.4 Τεχνικές σχεδίασης προγραμμάτων 6.7 Προγραμματιστικά περιβάλλοντα

6.3 Φυσικές και τεχνητές γλώσσες (1/4) Γλώσσες προγραμματισμού: Αναπτύχθηκαν για να μπορεί ο προγραμματιστής να δίνει εντολές στον υπολογιστή. Χρησιμοποιούνται για την επικοινωνία του ανθρώπου με τη μηχανή. Είναι τεχνητές γλώσσες που, όμως, ακολουθούν τις βασικές αρχές της γλωσσολογίας.

6.3 Φυσικές και τεχνητές γλώσσες (2/4) Χαρακτηριστικά γλωσσών (φυσικών και τεχνητών): Αλφάβητο: Το σύνολο των στοιχείων (συμβόλων) που χρησιμοποιούνται από μια γλώσσα. Λεξιλόγιο: Το σύνολο των αποδεκτών από τη γλώσσα λέξεων (δημιουργούνται ως ακολουθίες συμβόλων) Παρατήρηση: Στις γλώσσες προγραμματισμού κάθε λέξη έχει μοναδική σημασία

6.3 Φυσικές και τεχνητές γλώσσες (3/4) Χαρακτηριστικά γλωσσών (φυσικών και τεχνητών): Γραμματική: Αποτελείται από το Τυπικό: Το σύνολο των κανόνων που ορίζει τις μορφές με τις οποίες μια λέξη είναι αποδεκτή (π.χ. γλώσσα, γλώσσες, γλώσσας, όχι όμως γλώσσατ) Συντακτικό: σύνολο των κανόνων που καθορίζει τη νομιμότητα της διάταξης και της σύνδεσης των λέξεων της γλώσσας για τη δημιουργία προτάσεων (εντολών). Σημασιολογία: το σύνολο των κανόνων που καθορίζει το νόημα των λέξεων και κατά επέκταση των εκφράσεων και προτάσεων που χρησιμοποιούνται σε μία γλώσσα.

6.3 Φυσικές και τεχνητές γλώσσες (4/4) Διαφορές φυσικών και τεχνητών γλωσσών: Οι φυσικές γλώσσες εξελίσσονται διαρκώς: Νέες λέξεις δημιουργούνται Οι κανόνες γραμματικής και σύνταξης αλλάζουν Επηρεάζονται από τον κοινωνικό περίγυρο Οι τεχνητές γλώσσες παραμένουν στάσιμες: Κατασκευάζονται για ένα συγκεκριμένο σκοπό Έχουν αυστηρούς κανόνες γραμματικής και σύνταξης Εντούτοις οι γλώσσες προγραμματισμού διορθώνονται και μεταβάλλονται για να καλύψουν νέες απαιτήσεις

6.4 Τεχνικές Σχεδίασης Προγραμμάτων (1/8) Υπάρχουν διάφορες μεθοδολογίες ανάπτυξης προγραμμάτων: Ιεραρχική σχεδίαση Τμηματικός προγραμματισμός Δομημένος Προγραμματισμός

6.4 Τεχνικές Σχεδίασης Προγραμμάτων (2/8) Ιεραρχική σχεδίαση: Διαδικασία σχεδίασης από «από πάνω προς τα κάτω» (top-down program design): Οι βασικές λειτουργίες ορίζονται σε ανώτερο επίπεδο Στη συνέχεια διασπόνται σε μικρότερες Στόχος στο χαμηλότερο επίπεδο να υπάρχουν μόνο απλές λειτουργίες Στόχος η διάσπαση του αρχικού προβλήματος σε απλούστερα Χρησιμοποιούνται συχνά διαγραμματικές τεχνικές

6.4 Τεχνικές Σχεδίασης Προγραμμάτων (3/8) Ιεραρχική σχεδίαση (παράδειγμα): Υπολογισμός φόρου εισοδήματος

6.4 Τεχνικές Σχεδίασης Προγραμμάτων (4/8) Τμηματικός προγραμματισμός: Υλοποιεί την ιεραρχική σχεδίαση Κάθε υποπρόβλημα αποτελεί ανεξάρτητη ενότητα (module) Η σωστή διαίρεση του αρχικού προβλήματος σε μικρότερα είναι κρίσιμη και συχνά δύσκολη διαδικασία Πλεονεκτήματα: Μείωση λαθών Ευκολότερη παρακολούθηση αλλαγών Ευκολότερη κατανόηση Ευκολότερη συντήρηση προγράμματος από τρίτους

6.4 Τεχνικές Σχεδίασης Προγραμμάτων (5/8) Δομημένος προγραμματισμός: Παρουσιάστηκε από τους Bohm και Jacopini το 1964 Καθιερώθηκε από τον Dijkstra to 1968 μέσω της μελέτης “GO TO Statement Considered Harmful – η εντολή GOTO θεωρείται επιβλαβής” Έχει εξέχουσα θέση και υποστηρίζεται σε όλες τις σύγχρονες γλώσσες προγραμματισμού. Αναπτύχθηκε από την ανάγκη να υπάρχει μία κοινή μεθοδολογία στην ανάπτυξη των προγραμμάτων και τη μείωση των εντολών GOTO που χρησιμοποιούνται στο πρόγραμμα.

6.4 Τεχνικές Σχεδίασης Προγραμμάτων (6/8) Η εντολή GOTO – Το μαύρο πρόβατο του προγραμματισμού:

6.4 Τεχνικές Σχεδίασης Προγραμμάτων (7/8) Δομημένος προγραμματισμός: Στηρίζεται στη χρήση τριών και μόνο στοιχειωδών λογικών δομών: Δομή ακολουθίας Δομή επιλογής Δομή επανάληψης Κάθε πρόγραμμα (αλλά και κάθε ενότητα προγράμματος (module)) έχει μόνο μία είσοδο (σημείο έναρξης) και μόνο μία έξοδο (σημείο τερματισμού)

6.4 Τεχνικές Σχεδίασης Προγραμμάτων (8/8) Πλεονεκτήματα Δομημένου προγραμματισμού: Δημιουργία απλούστερων προγραμμάτων Άμεση μεταφορά των αλγορίθμων σε προγράμματα. Διευκόλυνση ανάλυσης του προγράμματος σε τμήματα. Περιορισμός των λαθών κατά την ανάπτυξη του προγράμματος. Διευκόλυνση στην ανάγνωση και κατανόηση του προγράμματος από τρίτους. Ευκολότερη διόρθωση και συντήρηση.

6.7 Προγραμματιστικά περιβάλλοντα (1/6) Κάθε πρόγραμμα (σε οποιαδήποτε γλώσσα προγραμματισμού) πρέπει να μετατραπεί σε Γλώσσα Μηχανής (μόνη μορφή αναγνωρίσιμη από τον Η/Υ) Η μετατροπή γίνεται από τα μεταφραστικά προγράμματα: Μεταγλωττιστές (Compilers): Μεταφράζει ολόκληρο το πρόγραμμα σε γλώσσα μηχανής. Παράγεται ένα νέο εκτελέσιμο πρόγραμμα σε γλώσσα μηχανής Διερμηνείς (Interpreters): Μεταφράζει μία-μία τις εντολές σε γλώσσα μηχανής. Κάθε εντολή εκτελείται αμέσως μετά τη μετάφρασή της. Δεν παράγεται εκτελέσιμο πρόγραμμα

6.7 Προγραμματιστικά περιβάλλοντα (2/6) Ορισμοί: Πηγαίο πρόγραμμα (source program): To αρχικό πρόγραμμα που γράφει ο προγραμματιστής σε μια γλώσσα προγραμματισμού. Αντικείμενο πρόγραμμα (object program): To πρόγραμμα που παράγει αρχικά ο μεταγλωττιστής. Είναι σε γλώσσα μηχανής αλλά όχι έτοιμο για εκτέλεση. Εκτελέσιμο πρόγραμμα (executable program): Το τελικό πρόγραμμα (σε γλώσσα μηχανής) που παράγεται μετά τη σύνδεση του αντικείμενου προγράμματος με άλλα τμήματα κώδικα και βιβλιοθήκες. Η σύνδεση γίνεται από ένα ειδικό πρόγραμμα τον Συνδέτη-Φορτωτή (linker-loader)

6.7 Προγραμματιστικά περιβάλλοντα (3/6) Διαδικασία μετάφρασης: Το πηγαίο πρόγραμμα ελέγχεται για συντακτικά λάθη (λάθη στη δομή και μορφή της γλώσσας) Αν δεν υπάρχουν λάθη παράγεται από τον μεταγλωττιστή το αντικείμενο πρόγραμμα Τέλος, ο συνδέτης παράγει το εκτελέσιμο πρόγραμμα

6.7 Προγραμματιστικά περιβάλλοντα (4/6) Διαδικασία μετάφρασης:

6.7 Προγραμματιστικά περιβάλλοντα (5/6) Μεταγλωττιστής vs Διερμηνέας: Μεταγλωττιστής: (-) Πριν τη χρήση του το πρόγραμμα πρέπει να περάσει τη διαδικασία μεταγλώττισης και σύνδεσης. (+) Το εκτελέσιμο πρόγραμμα που παράγεται δεν χρειάζεται εκ νέου μετάφραση. Διερμηνέας: (+) Άμεση εκτέλεση του προγράμματος και ευκολότερος εντοπισμός λογικών λαθών (λάθη στη δομή και λογική του αλγορίθμου) (-) Πιο αργή εκτέλεση, απαιτείται κάθε φορά η μετάφραση κάθε εντολής

6.7 Προγραμματιστικά περιβάλλοντα (6/6) Προγραμματιστικά Περιβάλλοντα: Περιλαμβάνουν: Έναν συντάκτη (editor), δηλ. πρόγραμμα για τη σύνταξη και διόρθωση των προγραμμάτων Έναν μεταγλωττιστή (compiler) για τη μετάφραση του προγράμματος σε γλώσσα μηχανής Έναν συνδέτη (linker) για τη σύνδεση του αντικείμενου προγράμματος και τη δημιουργία του τελικού εκτελέσιμου προγράμματος Περιλαμβάνουν επίσης ειδικά εργαλεία π.χ. ένα περιβάλλον οπτικού (visual) προγραμματισμού περιέχει ειδικό συντάκτη για τη δημιουργία γραφικών αντικειμένων.