ΘΕΜΑΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ

Σχετικά έγγραφα
Πληροφορική ΙΙ Θεματική Ενότητα 2

ΤΕΙ ΙΟΝΙΩΝ ΝΗΣΩΝ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ - ΕΙΣ

Είναι μια αλληλουχία κατάλληλων οδηγιών(εντολών) που εκτελεί ο υπολογιστής για την επίλυση ενός προβλήματος.

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

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 18/10/07

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

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

Θέματα Προγραμματισμού Η/Υ

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1. Θέμα εργαστηρίου: Εισαγωγή στην Python και στο IDLE

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

Θέματα Προγραμματισμού Η/Υ

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

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

ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 1: Εισαγωγικές έννοιες

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr

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

Πληροφορική ΙΙ Θεματική Ενότητα 3

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

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

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

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

ΚΕΦΑΛΑΙΟ 1. Εισαγωγή στην Python. 1.1 Εισαγωγή

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

Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #1 ο : Εισαγωγή στο Περιβάλλον Ανάπτυξης (IDE)

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Python. 1η Ομάδα Ασκήσεων

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

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #1 ο : Εισαγωγή στο Περιβάλλον Ανάπτυξης (IDE)

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

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

ΚΕΦΑΛΑΙΟ 2. Τιμές, τύποι, μεταβλητές, λέξεις-κλειδιά, εντολές. 2.1 Εισαγωγή

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

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

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

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

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

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

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

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

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

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

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

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι (Python) Ενότητα 1

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

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

Εισαγωγή στη γλώσσα προγραμματισμού JAVA. Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών

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

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

Διάλεξη 2η: Αλγόριθμοι και Προγράμματα

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

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

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

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

Η γλώσσα προγραμματισμού C

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

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

Προγραμματισμός I (Θ)

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

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

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

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

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

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

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

Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών

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

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

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

Υλοποίηςη Αλγορίθμου με υπολογιςτή - Προγραμματιςμόσ

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

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

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

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

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ

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

Αντικειμενοστρεφής Προγραμματισμός

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

Κεφάλαιο 2: Μεταφραστές

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

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

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

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

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

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

Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος

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

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

Αντικειμενοστρεφής Προγραμματισμός

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΠΡΟΓΡΑΜΜΑ ΠΑΙΔΑΓΩΓΙΚΗΣ ΚΑΤΑΡΤΙΣΗΣ 2 η ΕΡΓΑΣΙΑ ΠΡΑΚΤΙΚΗΣ ΑΣΚΗΣΗΣ ΠΑΡΑΤΗΡΗΣΕΙΣ ΣΧΕΔΙΟ ΜΑΘΗΜΑΤΟΣ

Διαδικασιακός Προγραμματισμός

Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα;

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού

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

Υπολογιστές Ι. Άδειες Χρήσης. Εισαγωγή. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

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

Transcript:

ΘΕΜΑΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ Θεματική Ενότητα 3 Βασικά εργαλεία ενός προγραμματιστή (editor, compiler, linker κτλ). Το διαδικτυακό περιβάλλον που θα χρησιμοποιηθεί Πληροφορική και Υπολογιστική Βιοϊατρική Α. Κακαρούντας, Γ. Σπαθούλας, Π. Κοντού

Περιεχόμενο μαθήματος Εισαγωγή στον προγραμματισμό με χρήση της γλώσσας Python. Οι διαφάνειες ακολουθούν κυρίως το περιεχόμενο και τη δομή του βιβλίου: "Ξεκινώντας με την Python", Tony Gaddis Και συμπληρωματικά του e-book (διανέμεται δωρεάν): "A byte of Python" (ελληνική έκδοση).

Βήματα στην υπολογιστική επίλυση προβλήματος 1. Ανάλυση δεδομένων του προβλήματος 2. Μαθηματική διατύπωση του προβλήματος 3. Ανάπτυξη τεχνικών επίλυσης: αλγόριθμος Σχεδιασμός ή επιλογή αλγορίθμου Συνήθως: ένα πρόβλημα πολλοί αλγόριθμοι 4. Διατύπωση αλγορίθμου σε γλώσσα προγ/σμού: πρόγραμμα 5. Εκτέλεση προγράμματος για συγκεκριμένα δεδομένα 6. Ερμηνεία αποτελεσμάτων

Βήματα στην υπολογιστική επίλυση προβλήματος 1. Ανάλυση δεδομένων του προβλήματος 2. Μαθηματική διατύπωση του προβλήματος 3. Ανάπτυξη τεχνικών επίλυσης: αλγόριθμος Σχεδιασμός ή επιλογή αλγορίθμου Συνήθως: ένα πρόβλημα πολλοί αλγόριθμοι 4. Διατύπωση αλγορίθμου σε γλώσσα προγ/σμού: πρόγραμμα 5. Εκτέλεση προγράμματος για συγκεκριμένα δεδομένα 6. Ερμηνεία αποτελεσμάτων

Γλώσσες προγραμματισμού Γλώσσα μηχανής (ΓΜ) Οι εντολές είναι αλληλουχίες από bits Εκτελούνται άμεσα από τη CPU Διαφορετική για κάθε τύπο επεξεργαστή Γλώσσα assembly Μνημονικά ονόματα αντί bits (ίδιο πλήθος εντολών) Μετατροπή σε ΓΜ από κατάλληλο πρόγραμμα (assembler) Διαφορετική για κάθε τύπο επεξεργαστή Γλώσσες υψηλού επιπέδου (π.χ. Fortran, C, C++, Java) Υψηλή αφαίρεση / ευκολότερος προγραμματισμός Μετατροπή σε ΓΜ από κατάλληλα προγράμματα: μεταγλωττιστές (compilers) ή διερμηνείς (interpreters) Ανεξάρτητες από τύπο επεξεργαστή: υψηλή φορητότητα

Γλώσσες προγραμματισμού Γλώσσες υψηλού επιπέδου Μοιάζουν με τη φυσική μας γλώσσα Έχουν το δικό τους αλφάβητο, λεξιλόγιο και συντακτικό. Μερικές από τις πιο δημοφιλείς γλώσσες για ανάπτυξη γενικών ή εξειδικευμένων εφαρμογών είναι η C, η C++, η Java, η PHP, η C#, η Python, η JavaScript, η Perl, Visual Basic, η Pascal, η Prolog. Ανάλογα με το είδος της εφαρμογής που θέλουμε να αναπτύξουμε επιλέγουμε την κατάλληλη γλώσσα προγραμματισμού.

Το "Hello world!" σε C #include <stdio.h> main() { printf("hello world!\n"); }

Το "Hello world!" σε Assembly ; Hello World for Intel Assembler (MSDOS) mov ax,cs mov ds,ax mov ah,9 mov dx, offset Hello int 21h xor ax,ax int 21h Hello: db "Hello World!",13,10,"$"

Το "Hello world!" σε Γλώσσα Μηχ. 0000000 457f 464c 0101 0001 0000 0000 0000 0000 0000020 0002 0003 0001 0000 82c0 0804 0034 0000 0000040 1d08 0000 0000 0000 0034 0020 0007 0028 0000060 0021 001e 0006 0000 0034 0000 8034 0804 0000100 8034 0804 00e0 0000 00e0 0000 0005 0000 0000120 0004 0000 0003 0000 0114 0000 8114 0804... 0026060 6e69 755f 6573 0064 5f5f 6164 6174 735f 0026100 6174 7472 5f00 764a 525f 6765 7369 6574 0026120 4372 616c 7373 7365 5f00 675f 6f6d 5f6e 0026140 7473 7261 5f74 005f 0026150 (712 γραμμές)

Το "Hello world!" σε Python print('hello word!')

Το "Hello world!" σε Java public class HelloWorld { public static void main(string[] args) { System.out.println( Hello World! ); } }

Εργαλεία προγραμματισμού Τα κύρια εργαλεία που χρησιμοποιεί ένας προγραμματιστής για να αναπτύξει μία εφαρμογή σε μία συγκεκριμένη γλώσσα προγραμματισμού υψηλού επιπέδου είναι: ένας συντάκτης κειμένων (editor) ένα μεταφραστικό πρόγραμμα (μεταγλωττιστής ή διερμηνευτής) ένα ειδικό πρόγραμμα που ονομάζεται συνδέτης (linker) εργαλεία εντοπισμού λαθών

Συντάκτης κειμένων (editor) Εργαλείο συγγραφής του αρχικού προγράμματος, που ονομάζεται πηγαίο πρόγραμμα ή κώδικας (source code). Notepad Notepad ++ Crimson Editor UltraEdit Και πολλά άλλα.

Συντάκτης κειμένων (editor)

Συντάκτης κειμένων (editor)

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

Μεταφραστικό Πρόγραμμα Μεταγλωττιστής: δέχεται στην είσοδο ένα πρόγραμμα γραμμένο σε μια γλώσσα υψηλού επιπέδου και παράγει ένα ισοδύναμο πρόγραμμα σε γλώσσα μηχανής. Το «νέο πρόγραμμα» - αντικείμενο πρόγραμμα μπορεί να εκτελείται οποτεδήποτε από τον υπολογιστή και είναι τελείως ανεξάρτητο από το αρχικό πρόγραμμα

Μεταγλωττιστές (compilers) Προγράμματα που μετατρέπουν ένα πηγαίο πρόγραμμα (Γ.Υ.Ε.)σε εκτελέσιμο (σε Γ.Μ.) Το παραγόμενο εκτελέσιμο πρόγραμμα τρέχει αυτόνομα σε κάθε υπολογιστή που καταλαβαίνει τη συγκεκριμένη Γ.Μ.

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

Διερμηνευτής (Interpreters) Προγράμματα που εκτελούν άμεσα ένα πηγαίο πρόγραμμα γραμμένο σε γλώσσα υψηλού επιπέδου. Γλώσσα μηχανής Αρχείο προγράμματος (πηγαίο) Διερμηνέας Για κάθε εντολή ΕΚΤΕΛΕΣΗ Δεν παράγουν πλήρη εκτελέσιμο κώδικα αλλά ανά εντολή Για την εκτέλεση του πηγαίου προγράμματος σε κάποιον υπολογιστή απαιτείται και η ύπαρξη του διερμηνέα. Τα ερμηνευόμενα προγράμματα είναι πιο αργά από τα μεταγλωττισμένα

Συνδέτης (linker) Συνδέει το αντικείμενο πρόγραμμα ή ένα σύνολο από αντικείμενα προγράμματα με έτοιμα υποπρογράμματα της βιβλιοθήκης της γλώσσας προγραμματισμού ή του προγραμματιστή. Το τελικό πρόγραμμα που παράγεται είναι το εκτελέσιμο πρόγραμμα ή κώδικας (executable code), είναι διατυπωμένο σε γλώσσα μηχανής και μπορεί να εκτελεστεί άμεσα από τον επεξεργαστή του υπολογιστή.

Σφάλματα προγραμματισμού a) Συντακτικά σφάλματα (syntax errors) Ανιχνεύονται από τον compiler/interpreter. b) Σφάλματα κατά την εκτέλεση (run-time errors) Ανιχνεύονται από τον interpreter (σε γλώσσες που διαθέτουν). c) Σφάλματα λογικής (bugs) Ανιχνεύονται από τον προγραμματιστή (debugging). Δυσκολία εντοπισμού σφαλμάτων (συνήθως): c > b > a Σχεδιασμός προγ/τος Συγγραφή κώδικα Διόρθωση συντακτικών σφαλμάτων Τεστάρισμα κώδικα Διόρθωση λογικών σφαλμάτων

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

Προγραμματιστικό περιβάλλον Η ανάπτυξη των σύγχρονων εφαρμογών είναι μια απαιτητική και δύσκολη διαδικασία. Οι προγραμματιστές χρησιμοποιούν για τη σχεδίαση, την κωδικοποίηση, τον έλεγχο λαθών και τη συντήρηση μιας εφαρμογής ένα ολοκληρωμένο περιβάλλον ανάπτυξης (Integrated Development Environment -IDE). Dev-C++, BlueJ, JBuilder, NetBeans IDE, Eclipse, Microsoft Visual Studio, Apple Xcode και Komodo IDE & EDIT. Στα ολοκληρωμένα περιβάλλοντα ανάπτυξης συνυπάρχουν σε ένα ενοποιημένο περιβάλλον διάφορα από τα εργαλεία που αναφέρθηκαν και έτσι διευκολύνεται και επιταχύνεται η ανάπτυξη μιας εφαρμογής

Διαδικασία εκτέλεσης ενός προγράμματος Τα βασικά βήματα είναι: Συγγραφή Μεταγλώττιση Σύνδεση Εκτέλεση

Βασικά χαρακτηριστικά της Python Γλώσσα προγραμματισμού υψηλού επιπέδου Υποστηρίζει Αντικειμενοστραφή και Διαδικαστικό Προγραμματισμό. Interpreted κατά το run-time (scripting language*). Εκτελείται: είτε ανά εντολή (εντολή: μια ή πολλές γραμμές κώδικα) στο Python shell/κέλυφος (command line) (Διαδραστική Λειτουργία) είτε σαν πλήρες αρχείο προγράμματος με κατάληξη.py (Λειτουργία Script)

Βασικά χαρακτηριστικά της Python Δυναμική γλώσσα στον ορισμό τύπου των μεταβλητών. Εύκολη στην σύνταξη και στην εκμάθηση, κατανόηση, ανάγνωση. Δημιουργία μικρότερων σε μέγεθος προγραμμάτων σε σχέση με άλλες γλώσσες προγραμματισμού. Χρησιμοποιείται ευρέως και για web-apps. Πληθώρα υλοποιήσεων: Cpython, Cython, Jython, PyPy, Πληθώρα IDEs: IDLE, IPython, PythonAnywhere (on-line)

Τρόποι υλοποίησης ενός προγράμματος Python Διαδραστική Λειτουργία Εκκινώντας το Python GUI (IDLE) εμφανίζεται κάτι σαν: Python 3.2.5 (default, May 15 2013, 23:07:10) [MSC v.1500 64 bit (AMD64)] on win32 Type "copyright", "credits" or "license()" for more information. >>> Και με συγγραφή εντολής μετά το >>> και Enter αυτή διερμηνεύεται και εκτελείται

Τρόποι υλοποίησης ενός προγράμματος Python Λειτουργία Script Σύνταξη του κώδικα του προγράμματος σε κάποιον editor και αποθήκευση σε αρχείο με κατάληξη.py (π.χ., hello.py) Διερμηνεύεται και εκτελείται η κάθε εντολή του προγράμματος Με την εντολή python hello.py σε command line Με χρήση του Run στο παράθυρο του Editor του IDLE Πριν εκτελεστεί κάποια εντολή ελέγχεται για συντακτικά σφάλματα

Τρόποι υλοποίησης ενός προγράμματος Python

Είσοδος/Έξοδος (I/O) Η συνάρτηση εξόδου print για εκτύπωση στην οθόνη Σύνταξη: ή print("συμβολοσειρά εξόδου") print('συμβολοσειρά εξόδου') [Μία ακολουθία χαρακτήρων που χρησιμοποιείται από ένα πρόγραμμα, ονομάζεται συμβολοσειρά (string)] Η συνάρτηση εισόδου input για είσοδο δεδομένων από το πληκτρολόγιο Σύνταξη variable = input('συμβολοσειρά μηνύματος προτροπής')

Παραδείγματα εξόδου (print) >>> print('hello world') ή print("hello world") Hello world >>> print('λευκάδα, Τ.Κ. 31 100') Λευκάδα, Τ.Κ. 31 100 Πρόγραμμα quotes.py print("i'm Mike.") print('read "Othello" by tomorrow!') Έξοδος (προσέξτε τις αλλαγές γραμμής και τα κενά): I'm Mike. 'Read "Othello" by tomorrow! I'm reading "Othello" tonight. One Two print('''i'm reading "Othello" tonight.''') Three # ή """... """ one two three print("""one Two Three""") print('one', 'two','three')

tutorialspoint https://www.tutorialspoint.com/ https://www.tutorialspoint.com/python/ https://www.tutorialspoint.com/ipython_termina l_online.php

ΘΕΜΑΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ Θεματική Ενότητα 3 Βασικά εργαλεία ενός προγραμματιστή (editor, compiler, linker κτλ). Το διαδικτυακό περιβάλλον που θα χρησιμοποιηθεί Πληροφορική και Υπολογιστική Βιοϊατρική Α. Κακαρούντας, Γ. Σπαθούλας, Π. Κοντού