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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Δομημένος Προγραμματισμός

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

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

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

ΑΣΚΗΣΕΙΣ ΘΕΩΡΙΑΣ. ΘΕΜΑ 1 Δίνεται το παρακάτω τμήμα δηλώσεων ενός προγράμματος σε «ΓΛΩΣΣΑ»: ΜΕΤΑΒΛΗΤΕΣ ΠΡΑΓΜΑΤΙΚΕΣ: Π[10] ΛΟΓΙΚΕΣ: ΒΡΕΘΗΚΕ ΑΚΕΡΑΙΕΣ: i

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

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική II. Ενότητα 3 : Γλώσσες προγραμματισμού. Δρ.

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

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

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

Βασικές Αρχές Προγραμματισμού

ΦΡΟΝΤΙΣΤΗΡΙΟ Μ.Ε. «ΠΕΡΙ ΓΝΩΣΕΩΣ»

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

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

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

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

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

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Βασικές Έννοιες Προγραμματισμού. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

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

Θέματα ΑΕΠΠ Πανελλήνιες Εξετάσεις 2008

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

ΒΙΒΛΙΑ ΒΙΒΛΙΑ

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

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

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

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

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

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

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ

Πρόβλημα 37 / σελίδα 207

Περικλέους Σταύρου Χαλκίδα Τ: & F: chalkida@diakrotima.gr W:

Transcript:

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

Κεφ. 2 Θεωρητική Επιστήμη Υπολογιστών 2.3.1.1 Έννοια προγράμματος Τι είναι πρόγραμμα και τι προγραμματισμός; Πρόγραμμα είναι το σύνολο εντολών που χρειάζεται να δοθεί στον υπολογιστή, ώστε να υλοποιηθεί ο αλγόριθμος για την επίλυση ενός προβλήματος. Προγραμματισμός είναι η εργασία σύνταξης προγραμμάτων σε κάποια γλώσσα προγραμματισμού. Γιατί αναπτύχθηκαν οι γλώσσες προγραμματισμού; Οι γλώσσες προγραμματισμού αναπτύχθηκαν για να επικοινωνεί ο άνθρωπος με τον υπολογιστή και να του δίνει οδηγίες επίλυσης προβλημάτων. Ο υπολογιστής όμως εκτελεί μόνο στοιχειώδεις ενέργειες (πρόσθεση, σύγκριση, μεταφορά-αποθήκευση) σε ακολουθίες δυαδικών ψηφίων 0 και 1 (bits) αλλά με ασύλληπτη ταχύτητα. Συνδυαζόμενες αρκετές τέτοιες στοιχειώδεις ενέργειες μπορούν να υλοποιήσουν σχεδόν οποιαδήποτε οδηγία θέλει να δώσει ο άνθρωπος στον υπολογιστή. Μια γλώσσα προγραμματισμού ορίζει οδηγίες κατανοητές στον άνθρωπο και ταυτόχρονα τις μετατρέπει σε στοιχειώδεις ενέργειες κατανοητές στον υπολογιστή.

Κεφ. 2 Θεωρητική Επιστήμη Υπολογιστών 2.3.1.1 Η εξέλιξη των γλωσσών προγραμματισμού Χρήση εντολών πιο κατανοητών από τον άνθρωπο. Μεταφέρσιμες για εκτέλεση σε κάθε υπολογιστή αρκεί να υπάρχει ο μεταγλωττιστής. Εύκολη εκμάθηση, διόρθωση λαθών συντήρηση Χρήση συμβολικών ονομάτων για τις εντολές αντί 0 και 1. Την 1 προς 1 μετάφραση ανελάμβανε ο συμβολομεταφραστής (assembler). Ωστόσο κι αυτές στενά συνδεδεμένες με την αρχιτεκτονική Επίπονος τρόπος προγραμματισμού στα πρώτα χρόνια των υπολογιστών. Εντολές ακολουθίες 0 και 1. Απαιτούσε άριστη γνώση της αρχιτεκτονικής του υπολογιστή

2.3.1.1 Γνωστές γλώσσες προγραμματισμού υψηλού επιπέδου τρίτης γενιάς Γλώσσα Τομέας Εφαρμογών, χαρακτηριστικά Είδος προγρ/μού FORTRAN Μαθηματικά επιστημονικά προβλήματα (κατάλληλη για υπολογισμούς) COBOL Εμπορικές εφαρμογές (ισχυρή διαχείριση αρχείων). Ευρεία χρήση. LISP/ PROLOG Τεχνητής Νοημοσύνης (έμπειρα συστήματα, παιγνίδια κ.α.) BASIC Εκπαίδευση αρχάριων στον προγρ/μό. Δημοφιλής για εφαρμογές σε PC PASCAL Γενικής χρήσης & εκπαίδευση. Δομημένος προγρ/μός. Δημοφιλής σε PC Συναρτησιακός / λογικός C,C++ Προγραμματισμός λειτουργικών συστημάτων, δομημένος προγρ/μός. C++ : Αντικειμενοστραφής προγραμματισμός JAVA Προγρ/μός στο Διαδίκτυο, ανεξάρτητος πλατφόρμας Αντικειμενοστρ αφής

2.3.1.1 Οπτικά περιβάλλοντα προγραμματισμού, Γλώσσες 4ης γενιάς Η εμφάνιση των γραφικών περιβαλλόντων εργασίας (όπως τα Windows) δημιούργησε την ανάγκη για προγράμματα που να εκμεταλλεύονται τον γραφικό τρόπο επικοινωνίας χρήστηυπολογιστή. Τέτοια προγράμματα κατασκευάζονται με οπτικά περιβάλλοντα προγραμματισμού. Οπτικό περιβάλλον προγραμματισμού είναι εκείνο που παρέχει τη δυνατότητα να δημιουργείται γραφικά ολόκληρο το περιβάλλον μιας εφαρμογής, όπως για παράδειγμα τα πλαίσια διαλόγου ή τα μενού. Έτσι εμφανίστηκαν γλώσσες όπως οι Visual C++, Visual Basic, Delphi που ουσιαστικά αποτελούν μετεξέλιξη των παλαιότερων κειμενικών γλωσσών που ενσωματώνουν και οπτικό περιβάλλον προγραμματισμού. Αναπτύχθηκαν όμως και καθαρά οπτικές γλώσσες όπως η SCRATCH, Appinventor που επιτρέπουν τον προγραμματισμό μέσα από το γραφικό χειρισμό προγραμματιστικών στοιχείων (π.χ. πλακίδια) Γλώσσες και περιβάλλοντα προγραμματισμού που αποκρύπτουν πολλές λεπτομέρειες από τις τεχνικές υλοποίησης και βοηθούν την ταχύτατη ανάπτυξη εφαρμογών ανήκουν στις γλώσσες τέταρτης γενιάς. Π.χ. η SQL (για άντληση δεδομένων από Β.Δ.)

2.3.1.2 Προγραμματιστικά υποδείγματα Ως «Προγραμματιστικό Υπόδειγμα» εννοείται ένα πρότυπο ανάπτυξης προγραμμάτων, δηλαδή μία καθορισμένη μεθοδολογία με βάση την οποία αναπτύσσονται η δομή και τα στοιχεία του προγράμματος. Κυριότερα προγραμματιστικά υποδείγματα: προγραμματισμός: τα προγράμματα αναπτύσσονται με απλές εντολές σε προστακτική (π.χ. Διάβασε, επανάλαβε) οι οποίες μπαίνουν σε μια λογική σειρά για να λυθεί ένα πρόβλημα. (C, PASCAL, BASIC, COBOL) Συναρτησιακός προγραμματισμός: το πρόγραμμα επιλύει το πρόβλημα με τη χρήση μαθηματικών συναρτήσεων. (LISP) Λογικός προγραμματισμός: το πρόγραμμα αναπτύσσεται ως ένα σύνολο λογικών προτάσεων. (PROLOG) Παράλληλος προγραμματισμός: το πρόγραμμα αναπτύσσεται σε τμήματα που μπορούν να εκτελούνται παράλληλα σε περισσότερους από έναν επεξεργαστές (OCCAM) Αντικειμενοστραφής προγραμματισμός: Το πρόγραμμα αναπτύσσεται ως ένα σύνολο αλληλεπιδρώντων αντικειμένων που δημιουργούνται από κλάσεις-πρότυπα. Οι κλάσεις περιέχουν δεδομένα και μεθόδους που επενεργούν σε αυτά. (C++, JAVA)

2.3.1.3 Δομημένος προγραμματισμός Δομημένος προγραμματισμός είναι μια μεθοδολογία ανάλυσης, σχεδίασης και συγγραφής προγραμμάτων που αναπτύχθηκε και διαδόθηκε ταχύτατα στο χώρο της Πληροφορικής. Χρησιμοποιεί: Ιεραρχική σχεδίαση: διαίρεση του προβλήματος συνεχώς σε απλούστερα μέχρι να είναι πολύ απλά να επιλυθούν. Τμηματικός προγραμματισμός: υλοποιεί την ιεραρχική σχεδίαση ως ένα σύνολο ανεξάρτητων ενοτήτων-υποπρογραμμάτων που καθένα υλοποιεί συγκεκριμένη λειτουργία. Τρεις βασικές αλγοριθμικές δομές: 1) Ακολουθία, 2) Επιλογή, 3) Επανάληψη Έτσι καθίσταται άσκοπη η χρήση της εντολής GOTO που χρησιμοποιούνταν παλαιότερα, άλλαζε ανεξέλεγκτα την ροή των προγραμμάτων και δυσχέραινε την κατανόηση, διόρθωση και συντήρησή τους.

2.3.2 Σχεδίαση και συγγραφή κώδικα Εργαλεία προγραμματιστικών περιβαλλόντων: Συντάκτης: ειδικό πρόγραμμα που διευκολύνει τη σύνταξη του πηγαίου προγράμματος. Επισημαίνει με διαφορετικό χρώμα τις δεσμευμένες λέξεις, παρέχει λίστα των εντολών να επιλέξει ο προγραμματιστής κλπ. Μεταγλωττιστής: Διαβάζει όλο το πηγαίο πρόγραμμα και το μεταφράζει, αν δεν έχει συντακτικά λάθη, σε μορφή αναγνωρίσιμη από τον υπολογιστή (αντικείμενο πρόγραμμα). Συνδέτης-φορτωτής: Συνδέει το αντικείμενο πρόγραμμα που παράγει ο μεταγλωττιστής με τις βιβλιοθήκες της γλώσσας και παράγει το τελικό εκτελέσιμο πρόγραμμα Διερμηνευτής: Διαβάζει μεταφράζει εκτελεί μια μια τις εντολές του πηγαίου προγράμματος την ώρα που τις γράφει ο προγραμματιστής εντοπίζοντας άμεσα τυχόν συντακτικά λάθη αλλά και διευκολύνοντας τον προγραμματιστή να δει πιθανά λογικά λάθη. Διευκολύνει την ανάπτυξη αλλά καθυστερεί την εκτέλεση. Συντακτικά λάθη: οφείλονται σε αναγραμματισμούς, σε λανθασμένη σύνταξη εντολών, παράλειψη δήλωσης μεταβλητών κ.α. Δεν επιτρέπουν να γίνει η μετάφραση. Παράδειγμα υπολ. Μέσου όρου:... Δειάβασε α β ΜΟ α+β:2)... Λογικά λάθη: βρίσκονται δυσκολότερα. Εκτελούνται κανονικά οι εντολές αλλά δεν βγάζουν το επιθυμητό. Παράδειγμα υπολογισμού μέσου όρου: Διάβασε α,β ΜΟ α+β/2