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

Σχετικά έγγραφα
ΚΕΦΑΛΑΙΟ 6 ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ. Η επίλυση ενός προβλήματος με τον υπολογιστή περιλαμβάνει τρία εξίσου σημαντικά στάδια.

Επιµέλεια Θοδωρής Πιερράτος

Εισαγωγή στον Προγραμματισμό

Ε Ι Α Γ Ω Γ Η Σ Ο Ν Π Ρ Ο Γ Ρ Α Μ Μ Α Σ Ι Μ Ο Κ Ε Υ Α Λ Α Ι Ο 6. Σο πρόγραμμα γράφεται σε κάποια γλώσσα προγραμματισμού.

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Κεφάλαιο 6 ο Εισαγωγή στον Προγραμματισμό 1

ΚΕΦΑΛΑΙΟ 6 ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ. 03/01/09 Χαράλαμπος Τζόκας 1

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

6. 1 Η έννοια του προγράμματος

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

Κεφάλαιο 2.3: Προγραμματισμός. Επιστήμη ΗΥ Κεφ. 2.3 Καραμαούνας Πολύκαρπος

Εισαγωγή στον προγραμματισμό

Κεφάλαιο 6 Εισαγωγή στον Προγραμματισμό. 26-Jun-15 ΑΕΠΠ - Καραμαούνας Π. 1

ΚΕΦΑΛΑΙΟ VI. Εισαγωγή στον προγραμματισμό

ΚΑΤΑΝΟΗΣΗ ΑΝΑΛΥΣΗ ΕΠΙΛΥΣΗ. Ο προγραμματισμός ασχολείται με το σύνολο των εντολών που δίνονται στον υπολογιστή ώστε να υλοποιείται ο αλγόριθμος.

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 6 ο

ΚΕΦΑΛΑΙΟ 6 - ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. Στέφανος Ουγιάρογλου

ΑΕΠΠ ΚΕΦΑΛΑΙΟ 6 ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ. 6.3 Φυσικές και Τεχνιτές Γλώσσες 6.4 Τεχνικές Σχεδίασης Προγραμμάτων

6. Εισαγωγή στον προγραµµατισµό

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

Εισαγωγή στις Αρχές της Επιστήμης των ΗΥ

Ενότητα 2 ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Κεφ. 2 Θέματα Θεωρητικής Επιστήμης Υπολογιστών. Κοντογιάννης Βασίλειος ΠΕ19

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

<<ΔΗΜΗΤΡΗΣ ΜΑΝΩΛΗΣ ΦΥΣΙΚΟΣ ΜCs>> 1

4. Συντακτικό μιας γλώσσας είναι το σύνολο των κανόνων που ορίζει τις μορφές με τις οποίες μια λέξη είναι αποδεκτή.

Μαλούτα Θεανώ Σελίδα 1

.EVAL push bx Xor bx,bh Add si,ax.loop dec cx. 1. Fortran. 2. Cobol. 3. Algol

ΚΕΦΑΛΑΙΟ 6 Ο ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Π ρ ο γ ρ α μ μ α τ ι σ μ ό ς Β α σ ι κ έ ς έ ν ν ο ι ε ς Ι σ τ ο ρ ι κ ή α ν α δ ρ ο μ ή Η έννοια του προγράμματος Ιστορική αναδρομή

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL)

Εργαστήρι Πληροφορικής Αλγόριθµος 92 Σηµειώσεις Τεχνολογικής Κατεύθυνσης Γλώσσες µηχανής Αρχικά για να µπορέσει ο υπολογιστής να εκτελέσει µία οποιαδή

ΑΕΠΠ Ερωτήσεις θεωρίας

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

10. Με πόσους και ποιους τρόπους μπορεί να αναπαρασταθεί ένα πρόβλημα; 11. Περιγράψτε τα τρία στάδια αντιμετώπισης ενός προβλήματος.

ΕΡΩΤΗΣΕΙΣ ΑΞΙΟΛΟΓΗΣΗΣ

7 ο ΓΕΛ Καλλιθέας Οδηγός Α.Ε.Π.Π. ΚΕΦΑΛΑΙΟ 6 ο

Τεχνικές σχεδίασης προγραμμάτων, Προγραμματιστικά Περιβάλλοντα

κ ε φ ά λ α ι ο 7 0 Α. Θ Ε Ω Ρ Ι Α Η έ ν ν ο ι α τ ο υ π ρ ο γ ρ ά µ µ α τ ο ς Ι σ τ ο ρ ι κ ή Α ν α δ ρ ο µ ή π α ρ α τ ή ρ η σ η

ΑΕΠΠ Ερωτήσεις τύπου Σωστό-Λάθος

ΕΙΔΗ,ΤΕΧΝΙΚΕΣ ΚΑΙ ΠΕΡΙΒΑΛΛΟΝΤΑ ΠΡΟΓΡΑΜΜΑΤΙ- ΣΜΟΥ

Α. Ερωτήσεις Ανάπτυξης

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ - ΓΛΩΣΣΑ

Προγραμματισμός Η/Υ. Προτεινόμενα θέματα εξετάσεων Εργαστήριο. Μέρος 1 ό. ΤΕΙ Λάρισας- Σχολή Τεχνολογικών Εφαρμογών Τμήμα Πολιτικών Έργων Υποδομής

Μ Ε Ρ Ο Σ Γ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ

Κεφάλαιο 1 Προγραμματισμός Υπολογιστή. Εφαρμογές Πληροφορικής Κεφ. 7 Καραμαούνας Πολύκαρπος 1

Κεφάλαιο 7 : Είδη, Τεχνικές, και Περιβάλλοντα Προγραµµατισµού

ΙΑΓΩΝΙΣΜΑ ΣΤΗΝ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΘΕΜΑ 1 Α.

Βασίλειος Κοντογιάννης ΠΕ19

Πληροφορική 2. Γλώσσες Προγραμματισμού

Εισαγωγή στον προγραμματισμό

6.3 Φυσικές και τεχνητές γλώσσες

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

ΠΕΡΙΕΧΟΜΕΝΑ Η έννοια του προγράμματος Ιστορική αναδρομή Φυσικές και τεχνητές γλώσσες Τεχνικές σχεδίασης προγραμμάτων Αντικειμενοστραφής

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΚΕΦΑΛΑΙΟ 6. Περιβάλλοντα Ανάπτυξης Εφαρμογών. ΚΕΦΑΛΑΙΟ 6 Περιβάλλοντα Ανάπτυξης Εφαρμογών. Α Γενικού Λυκείου

Προγραμματισμός Υπολογιστών

ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΥΠΟΛΟΓΙΣΤΩΝ

ΚΕΦΑΛΑΙΟ 7 ΕΙ Η, ΤΕΧΝΙΚΕΣ ΚΑΙ ΠΕΡΙΒΑΛΛΟΝΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

ΠΕΡΙΕΧΟΜΕΝΑ Η έννοια του προγράμματος Ιστορική αναδρομή Φυσικές και τεχνητές γλώσσες Τεχνικές σχεδίασης προγραμμάτων Αντικειμενοστραφής

Γλώσσες Προγραμματισμού Μεταγλωττιστές

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1

Εισαγωγή στις Αρχές της επιστήμης των ΗΥ

Αντικειμενοστρεφής Προγραμματισμός -Python. Κ.Π. Γιαλούρης

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

Περιεχόµενα. Ανασκόπηση - Ορισµοί. Ο κύκλος ανάπτυξης προγράµµατος. Γλώσσες Προγραµµατισµού Ασκήσεις

Εισαγωγή. Διαλέξεις στο μάθημα: Μεταφραστές Γιώργος Μανής

Επιλέξτε Σωστό ή Λάθος για καθένα από τα παρακάτω:

Αρχές Προγραμματισμού Υπολογιστών

Κεφάλαιο 7 Προγραμματισμός υπολογιστή

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΜΕΡΙΚΑ ΣΤΟΙΧΕΙΑ ΓΙΑ ΤΙΣ ΓΛΩΣΣEΣ ΠPOΓPAMMATIΣMOY

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 1 Ο. Εισαγωγή στις έννοιες Πρόβλημα, Αλγόριθμος, Προγραμματισμός, Γλώσσες Προγραμματισμού

ΚΕΦΑΛΑΙΟ 10 ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ

Κεφ. 1: Εισαγωγή στην έννοια του Αλγορίθμου και στον Προγραμματισμό. Η έννοια του προβλήματος

ΠΛΗΡΟΦΟΡΙΑΚΑ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

Μεταγλωττιστές Ενότητα 1: Εισαγωγή

Κεφάλαιο 7. ΕΠΑΛ Σύμης Εφαρμογές πληροφορικής Ερωτήσεις επανάληψης

Κεφάλαιο 10 ο Υποπρογράµµατα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Γ ΛΥΚΕΙΟΥ ΗΜΕΡΟΜΗΝΙΑ: 6/04/2014

ΕΙΣΑΓΩΓΗ ΣΤOΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Προγραμματισμός Ι (HY120)

Ενότητα 13. Εισαγωγή στην Πληροφορική. Κεφάλαιο 13Α. Αρχεία. Χειµερινό Εξάµηνο ρ. Παναγιώτης Χατζηδούκας (Π..407/80) προγραµµατισµός

Μέρος Α. Λογισµικό & Προγράµµατα συστήµατος και εφαρµογών ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ. Το σηµερινό µάθηµα. Λογισµικό συστηµάτων & εφαρµογών

Γεωγραφικά Συστήµατα Πληροφοριών και Αρχές Τηλεπισκόπησης

Προγραμματισμός και Εφαρμογές Υπολογιστών

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Συμβολική γλώσσα Εκπαιδευτικού Υπολογιστή - Λογισμικό Υπολογιστών

ΔΙΑΓΩΝΙΣΜΑ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

Επιμέλεια: Γιακουμόγλου Βαγγέλης.

III. Πως μετατρέπεται το πηγαίο πρόγραμμα σε εκτελέσιμο πρόγραμμα;

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Σύνοψη Θεωρίας ΟΡΙΣΜΟΣ ΚΑΙ ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΑΛΓΟΡΙΘΜΩΝ

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

Θεωρία Προγραμματισμού

Transcript:

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΚΕΦΑΛΑΙΟ 6 ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Η έννοια του προγράμματος Η επίλυση ενός πρβλήματος περιλαμβάνει Προσδιορισμό προβλήματος Ανάπτυξη αλγορίθμου Διατύπωση αλγορίθμου σε μορφή κατανοητή από τον υπολογιστή (αλλά και από τους προγραμματιστές) Ο προγραμματισμός ασχολείται με την διατύπωση του αλγορίθμου σε κατανοητή μορφή από τον Η/Υ,δηλ. τη δημιουργία του προγράμματος Πρόγραμμα = υλοποίηση αλγορίθμου, αλλά και δεδομένα και δομές δεδομένων στις οποίες ενεργεί!

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

Ιστορική αναδρομή Το υλικό εξελίσσεται γρήγορα. Η υπολογιστική ισχύς διπλασιάζεται κάθε 18 μήνες (Νόμος του Moore). Αντίθετα, οι βασικές αρχές λειτουργίας παραμένουν οι ίδιες από το 1945 (Φον Νόυμαν), ενώ οι γλώσσες προγραμματισμού αν και εμπλουτίζονται οι βασικές τους ιδιότητες μένουν ίδιες Τα δεδομένα και οι εντολές των εκτελούμενων προγραμμάτων αποθηκεύονται σε μια μοναδική μνήμη εγγραφής-ανάγνωσης. Τα περιεχόμενα της μνήμης αυτής μπορούν να διευθυνσιοδοτηθούν κατά κελί, χωρίς να μας ενδιαφέρει ο τύπος των δεδομένων που περιέχεται εκεί. Η εκτέλεση των εντολών του προγράμματος πραγματοποιείται σειριακά (εκτός και αν υπάρχει ρητή διακλάδωση), από μια εντολή στην επόμενη.

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

Συμβολικές Γλώσσες Οι Οι Οι Μειονεκτήματα: ακολουθίες 0 και 1 αντικαταστάθηκαν από μνημονικές εντολές πχ. ADD γλώσσες αυτές είναι χαμηλού επιπέδου, δηλαδή στενά συνδεδεμένες με το hardware και την αρχιτεκτονική του υπολογιστή εντολές μεταφράζονται σε γλώσσα μηχανής από τον συμβολομεταφραστή (assembly) Απουσία σύνθετων λειτουργιών που οδηγούσε σε μακροσκελή προγράμματα, τα οποία αναπτύσσονταν και συντηρούνταν δύσκολα. Μη μεταφέρσιμα προγράμματα.

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

Γλώσσες υψηλού επιπέδου FORmula TRANslator: Αναπτύχθηκε από την IBM, χρησιμοποιείται για την επίλυση αριθμητικών μαθηματικών προβλημάτων COBOL: Αναπτύχθηκε την δεκαετία του 60 για εμπορικές και επιχειρησιακές εφαρμογές.

Γλώσσες υψηλού επιπέδου ALGOrithmic Language: Γενικής χρήσης γλώσσα, που δεν χρησιμοποιήθηκε αλλα επηρρέασε πολλές γλώσσες. Programming Language/1: Γενικής χρήσης γλώσσα Γλώσσες Τεχνητής Νοημοσύνης (Artificial Inteligence): LISt Processing PROgramming in LOGic Χρησιμοποιύνται σε έμπειρα συστήματα, επεξεργασία φυσικών γλωσσών κλπ

Γλώσσες υψηλού επιπέδου BASIC Pascal: C: Java: (Beginner s All Purpose Symbolic Instruction Code) Αναπτύχθηκε, ως γλώσσα για την εκπαίδευση αρχαρίων στον προγραμματισμό. Γενικής χρήσης γλώσσα, στηρίχθηκε στην ALGOL. Χρησιμοποιείται ακόμα για ανάπτυξη εφαρμογών (Delphi) και στην εκπαίδευση (ΓΛΩΣΣΑ). Χρησιμοποιείται για την ανάπτυξη δομημένων προγραμμάτων Γλώσσα προγραμματισμού συστημάτων, χρησιμοποιείται για την ανάπτυξη Λειτουργικών συστημάτων, μεταγλωττιστών κλπ. Εξελίχθηκε στην C++, μια αντικειμενοστραφής γλώσσα αντικειμενοστραφής γλώσσα, χρησιμοποιείται για εφαρμογές σε κατανεμημένα περιβάλλοντα (Διαδίκτυο). Σχεδιάστηκε με σκοπό την διαπλατφορμικότητα (Write Once Run Everywhere)

Γλώσσες υψηλού επιπέδου Για τον προγραμματισμό σε γραφικά περιβάλλοντα αναπτύχθηκαν εκδόσεις των γλωσσών που υλοποιούσαν τις έννοιες του οπτικού (visual) και του οδηγούμενου από τα γεγονότα (event driven) προγραμματισμού. Οπτικός = Δημιουργία γραφικού περιβάλλοντος με έτοιμα αντικείμενα. Οδηγούμενος από γεγονότα= Εκτέλεση λειτουργιών ανάλογα με ένα γεγονός πχ. Με το κλικ ενός κουμπιού! Διαδεδομένες Γλώσσες: Visual Basic, Visual C++, Java

Γλώσσες υψηλού επιπέδου Menu bar Tool bar Project viewer Form designer Properties viewer Console Tool box Code editor

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

Γλώσσες 4ης Γενιάς Προσανατολισμένες Οι Η περισσότερο σε χρήστες, ώστε να μπορούν να αναπτύξουν μικρές εφαρμογές. γλώσσες αυτές μοιάζουν περισσότερο με την ανθρώπινη γλώσσα, και κάνουν εύκολη την ανάκτηση και παρουσίαση δεδομένων από Βάσεις Δεδομένων: SELECT ENAME, JOB, SAL FROM EMPLOYES WHERE DEPTNO=20 AND SAL > 300000; ερώτηση αυτή σε SQL εκτελεί αναζήτηση στη βάση δεδομένων EMPLOYES και επιστρέφει το όνομα, τη θέση και το μισθό των υπαλλήλων της διεύθυνσης 20 που κερδίζουν πάνω από 300.000 δρχ.

Με Ταξινόμηση Γλωσσών Προγραμματισμού βάση την κατηγορία προγραμματισμού που αντιπροσωπεύουν Οι γλώσσες προγραμματισμού υψηλού επιπέδου, με βάση την κατηγορία προγραμματισμού που αντιπροσωπεύουν διακρίνονται σε: 1. Διαδικασιακές ή αλγοριθμικές, π.χ. Pascal. 2. Αντικειμενοστραφείς π.χ. C++. 3. Συναρτησιακές π.χ. LISP. 4. Μη διαδικασιακές ή γλώσσες πολύ υψηλού επιπέδου, π.χ. PROLOG. 5. Ερωταπαντήσεων, π.χ. SQL.

Ταξινόμηση Γλωσσών Προγραμματισμού Οι γλώσσες προγραμματισμού υψηλού επιπέδου, με βάση την περιοχή χρήσης διακρίνονται σε: 1. Γενικής χρήσης, π.χ. BASIC ή Pascal, οι οποίες διακρίνονται περαιτέρω σε: 1.1 Επιστημονικής κατεύθυνσης, π.χ. FORTRAN. 1.2 Εμπορικής κατεύθυνσης π.χ. COBOL. Μερικές γλώσσες χρησιμοποιούνται και στους δυο τομείς πχ. BASIC, PASCAL 2. Προγραμματισμού συστημάτων π.χ. C. 3. Τεχνητής νοημοσύνης π.χ. LISP,PROLOG. 4. Ειδικής χρήσης, για εφαρμογές στη ρομποτική, στην Διαχείριση Βάσεων Δεδομένων, στην εκπαίδευση μέσω υπολογιστή

Καλύτερη Γλώσσα Προγραμματισμού Οι περισσότερες γλώσσες προγραμματισμού είναι κατάλληλες για συγκεκριμένες εφαρμογές. Έτσι, δεν υπάρχει μία γλώσσα προγραμματισμού που να υπερτερεί όλων των υπολοίπων. Η επιλογή της γλώσσας για την ανάπτυξη μιας εφαρμογής εξαρτάται από: 1. Το είδος της εφαρμογής. 2. Το υπολογιστικό περιβάλλον στο οποίο θα εκτελεστεί η εφαρμογή. 3. Τα προγραμματιστικά περιβάλλοντα 4. Τις γνώσεις του προγραμματιστή

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

Φυσικές και τεχνητές γλώσσες Οι φυσικές γλώσσες και οι γλώσσες προγραμματισμού προσδιορίζονται από: Το αλφάβητο: Αλφάβητο μιας γλώσσας καλείται το σύνολο των στοιχείων, που χρησιμοποιείται από τη γλώσσα. Για παράδειγμα η ελληνική γλώσσα χρησιμοποιεί τα πεζά(α-ω) και κεφαλαία (Α-Ω) του αλφαβήτου Το λεξιλόγιο: Aποτελείται από τις λέξεις που δημιουργούνται από τα στοιχεία του αλφαβήτου και είναι αποδεκτές από την γλώσσα. Η γραμματική: Aποτελείται από το τυπικό (τυπολογικό) και το συντακτικό. Τυπικό είναι το σύνολο των κανόνων που ορίζει τις αποδεκτές μορφές μιας λέξης. Συντακτικό είναι οι κανόνες δημιουργίας προτάσεων από συνδυασμούς λέξεων. Η γνώση του Συντακτικού επιτρέπει τη δημιουργία σωστών προτάσεων στις φυσικές γλώσσες, ενώ στις γλώσσες προγραμματισμού τη δημιουργία σωστών εντολών. Η σημασιολογία: Oι κανόνες που καθορίζουν το νόημα των λέξεων, των εκφράσεων και των προτάσεων μιας γλώσσας. Στις γλώσσες προγραμματισμού, ο δημιουργός της γλώσσας αποφασίζει τη σημασιολογία των λέξεων της γλώσσας.

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

Σκοπός είναι η διάσπαση λοιπόν του προβλήματος σε μια σειρά από απλούστερα υποπροβλήματα, τα οποία να είναι εύκολο να επιλυθούν οδηγώντας στην επίλυση του αρχικού προβλήματος. Για την υποβοήθηση της ιεραρχικής σχεδίασης χρησιμοποιούνται διάφορες διαγραμματικές τεχνικές. Τεχνικές Σχεδίασης Προγραμμάτων Ιεραρχική Σχεδίαση Από επάνω προς τα κάτω (Top down) σχεδίαση. Περιλαμβάνει τον καθορισμό των βασικών λειτουργιών ενός προγράμματος, σε ανώτερο επίπεδο, και στη συνέχεια τη διάσπαση των λειτουργιών αυτών σε όλο και μικρότερες λειτουργίες, μέχρι το τελευταίο επίπεδο που οι λειτουργίες είναι πολύ απλές, ώστε να επιλυθούν εύκολα.

Τεχνικές Σχεδίασης Προγραμμάτων Τμηματικός Προγραμματισμός Υλοποιεί την Ιεραρχική Σχεδίαση. Μετά την ανάλυση σε υποπροβλήματα κάθε υποπρόβλημα αποτελέι ξεχωριστή ενότητα (module) που αναπτύσσεται ξεχωριστά από τα υπόλοιπα τμήματα. Διευκολύνει την δημιουργία του προγράμματος Μειώνει τα λάθη Επιτρέπει την ευκολότερη παρακολούθηση, κατανόηση και συντήρηση του προγράμματος

Τεχνικές Σχεδίασης Αναπτύχθηκε Βασικός Προγραμμάτων Δομημένος Προγραμματισμός ως μεθοδολογία την δεκαετία του 60, σαν απάντηση στην δυσκολία συντήρησης των προγραμμάτων. λόγος ήταν η χρήση της εντολής GOTO που άλλαζε διαρκώς την ροή του προγράμματος.

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

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

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

Προγραμματιστικά Περιβάλλοντα Μεταγλώττιση και Σύνδεση Πηγαίο πρόγραμμα (Source code) Αναπτύσσεται με την βοήθεια του συντάκτη (editor) Μικρός επεξεργαστής κειμένου με δυνατότητες που διευκολύνουν την γραφή προγραμμάτων Εκτελείται από τον υπολογιστή Αντικείμενο πρόγραμμα (Object code) Σε γλώσσα μηχανής αλλά δεν εκτελείται Συνδέει το αντικείμενο πρόγραμμα με βιβλιοθήκες,είτε του προγραμματιση, είτε της γλώσσας

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

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

Προγραμματιστικά Περιβάλλοντα ΑΣΚΗΣΕΙΣ

Προγραμματιστικά Περιβάλλοντα ΑΣΚΗΣΕΙΣ (ΤΕΤΡΑΔΙΟ ΜΑΘΗΤΗ)

Προγραμματιστικά Περιβάλλοντα 2007

Προγραμματιστικά Περιβάλλοντα ΑΣΚΗΣΕΙΣ

Προγραμματιστικά Περιβάλλοντα ΑΣΚΗΣΕΙΣ

Προγραμματιστικά Περιβάλλοντα ΑΣΚΗΣΕΙΣ