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

Σχετικά έγγραφα
Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Πως θα κατασκευάσω το πρώτο πρόγραμμα;

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

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

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

4 η Εργαστηριακή Άσκηση

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

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010

Προγραμματισμός Υπολογιστών & Εφαρμογές Python. Κ.Π. Γιαλούρης

2.1. Εντολές Σχόλια Τύποι Δεδομένων

Εργαστήριο 1-1 η Άσκηση - Ανάλυση

To περιβάλλον Ανάπτυξης εφαρμογών της Visual Basic 2008 Express Edition

Γ3.3.Μ7 ΕΠΑΝΆΛΗΨΗ ΜΈΡΟΣ Α: ΈΝΝΟΙΕΣ ΤΙ ΕΊΝΑΙ Η VISUAL BASIC ΤΙ ΜΠΟΡΟΎΜΕ ΝΑ ΚΆΝΟΥΜΕ ΜΕ ΤΗ VISUAL BASIC ΑΝΤΙΚΕΊΜΕΝΑ: ΦΌΡΜΑ ΚΑΙ ΧΕΙΡΙΣΤΉΡΙΑ ΕΤΙΚΈΤΑ LABEL

3 ο Εργαστήριο Μεταβλητές, Τελεστές

Ανάπτυξη εφαρμογής Input-Output

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting)

(3) Από την εργαλειοθήκη επιλέξτε το εργαλείο «ετικέτας (Label)». Δημιουργήστε μια ετικέτα στην φόρμα σας.

Πρόσθεση + Αφαίρεση - Πολλαπλασιασμός * Διαίρεση / Πηλίκο \ Υπόλοιπο Δύναμη

ΣΗΜΕΙΩΣΕΙΣ ΓΙΑ ΤΗ VISUAL BASIC Γ ΓΥΜΝΑΣΙΟΥ

Γνωρίστε το Excel 2007

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος

Ράβδος Εργαλείων, σχεδόν τα ίδια εργαλεία και εικονίδια υπάρχουν όπως στα άλλα προγράμματα που έχετε μάθει μέχρι σήμερα.

ΤΟ ΠΕΡΙΒΑΛΛΟΝ ΤΗΣ. Εργαλειοθήκη Παρουσιάζετε το έργο σας Εκκινείτε τα σενάριά σας Σταματάτε όλα τα σενάρια. Οι 8 ομάδες της Παλέτας εντολών

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

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

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

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Τύποι δεδομένων, τελεστές, μεταβλητές

Visual Flowchart Γενικά

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Ενότητα: ΜΕΤΑΒΛΗΤΕΣ ΚΥΡΟΠΟΥΛΟΣ ΚΩΝΣΤΑΝΤΙΝΟΣ. Τμήμα Διοίκηση Επιχειρήσεων (Κοζάνη)

Αριστείδης Παλιούρας Ανακαλύψτε το Scratch 2

Ανάπτυξη εφαρμογής Input-Output

Εκφώνηση Να δημιουργήσετε ένα πρόγραμμα το οποίο θα δέχεται δύο ακεραίους αριθμούς έστω α και β και θα υπολογίζει το α υψωμένο στην δύναμη του β (α β

Στοιχειώδης προγραμματισμός σε C++

3 Αλληλεπίδραση Αντικειμένων

Τα αντικείμενα ή Χειριστήρια και οι βασικές ιδιότητες τους (properties)

Πώς μπορούμε να δημιουργούμε γεωμετρικά σχέδια με τη Logo;

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Ενότητα: Μαθηματικές Πράξεις στην Visual Basic ΚΥΡΟΠΟΥΛΟΣ ΚΩΝΣΤΑΝΤΙΝΟΣ. Τμήμα Διοίκηση Επιχειρήσεων (Κοζάνη)

ΟΔΗΓΙΕΣ ΔΗΜΙΟΥΡΓΙΑΣ ΕΦΑΡΜΟΓΗΣ ΔΙΑΧΕΙΡΙΣΗΣ ΑΜΕΣΟΥ ΑΡΧΕΙΟΥ ΣΕ ΠΕΡΙΒΑΛΛΟΝ VISUAL STUDIO NET

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Ενότητα: Χρήση εργαλείων Εικόνων, Εντολών και Ετικετών ΚΥΡΟΠΟΥΛΟΣ ΚΩΝΣΤΑΝΤΙΝΟΣ. Τμήμα Διοίκηση Επιχειρήσεων (Κοζάνη)

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

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C

2 η Εργαστηριακή Άσκηση

A7.2 Δημιουργία Απλής Γραφικής Εφαρμογής σε Περιβάλλον Scratch

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό

Προγραμματισμός Ι. Χαρακτήρες. Πανεπιστήμιο Πελοποννήσου Τμήμα Πληροφορικής & Τηλεπικοινωνιών

του προγράμματος diagrama_rohs.zip )

Microsoft PowerPoint 2007

ΟΔΗΓΙΕΣ ΧΕΙΡΙΣΜΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ DYMO LABEL V.8

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η

Εντολές της LOGO (MicroWorlds Pro)

ΤΟ MICROSOFT POWERPOINT XP

Visual Basic Γλώσσα οπτικού

Εαρινό. Ύλη εργαστηρίου, Ασκήσεις Java

Βασικές Εντολές MicroWorlds Pro.

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

Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η

21. ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ 4 - ΔΗΜΙΟΥΡΓΩΝΤΑΣ ΜΕ ΤΟ BYOB BYOB. Αλγόριθμος Διαδικασία Παράμετροι

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

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή στην Access...9. Κεφάλαιο 2 Χειρισμός πινάκων... 25

Εισαγωγή στη γλώσσα προγραμματισμού C++

App Inventor 3ο Μάθημα (Ζάρια - επέκταση)

Περιεχόμενα. Κεφάλαιο 1 Γνωριμία με το Excel...9

Οδηγίες για το CABRI - GEOMETRY II Μωυσιάδης Πολυχρόνης - Δόρτσιος Κώστας

Γεωργάκης Αριστείδης ΠΕ20

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

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

Οδηγίες για προσθήκη Web Frames Tools to the Quick Access Bar σε μεταγενέστερη έκδοση του Word

Γ7.1 Επανάληψη ύλης Β Λυκείου. Γ Λυκείου Κατεύθυνσης

Βασικά Στοιχεία της Java

Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ.

> μεγαλύτερο <= μικρότερο ή ίσο < μικρότερο == ισότητα >= μεγαλύτερο ή ίσο!= διαφορετικό

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

Στοιχεία Προγραμματισμού Σε Γραφικό Περιβάλλον Φύλλο εργασίας 1 ο

APP INVENTOR ΟΔΗΓΟΣ 8 Οκτωβρίου 2018

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Ενότητα: Εισαγωγή ΚΥΡΟΠΟΥΛΟΣ ΚΩΝΣΤΑΝΤΙΝΟΣ. Τμήμα Διοίκηση Επιχειρήσεων (Κοζάνη)

Περιεχόμενα. Μέρος 1: Βασικές έννοιες Πληροφορικής και επικοινωνιών Μέρος 2: Χρήση υπολογιστή και διαχείριση αρχείων Πρόλογος...

Παράδειγμα «Ημίτονο και ζωγραφική!»: Έχει δει στα μαθηματικά τη γραφική παράσταση της συνάρτησης του ημιτόνου; Σας θυμίζει κάτι η παρακάτω εικόνα;

Master Mind εφαρμογή στη γλώσσα προγραμματισμού C

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 2 : ΜΕΤΑΒΛΗΤΕΣ ΤΕΛΕΣΤΕΣ & ΕΚΦΡΑΣΕΙΣ ΕΛΕΓΧΟΣ ΡΟΗΣ

Περιεχόμενα. Κεφάλαιο 1 Γνωριμία με το Excel... 9

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

SPSS Statistical Package for the Social Sciences

Οικονόμου Βαγγέλησ Διάλεξη Νο 2. Δομημένοσ Προγραμματιςμόσ - Διάλεξη 2

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ

Το PowerPoint (PP) είναι ένα γραφικό πρόγραμμα για παρουσιάσεις. Χαρακτηριστικά Παρουσιάσεων:

Microsoft PowerPoint 2010 Πανεπιστήμιο Κύπρου

ΕΡΓΑΣΤΗΡΙΟ 6: Συναρτήσεις και Αναδρομή

ΜICROSOFT VISUAL STUDIO Eργ 1: Ανάπτυξη απλής εφαρµογής: Solutions, Projects, GUI, Events, Debugging. Εισαγωγή

Φύλλα εργασίας. MicroWorlds Pro. Πολυμεσικές Εφαρμογές με την χρήση της γλώσσας LOGO Στο Γυμνάσιο. Β. Χ. Χρυσοχοΐδης

Πώς εισάγουμε μια νέα έννοια χρησιμοποιώντας το εργαλείο Create

Transcript:

Δομημένος Προγραμματισμός ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΙΑΣ Διάλεξη 2 Νικόλαος Ζ. Ζάχαρης 2007

Σκοπός της διάλεξης Θα αναπτύξουμε ένα πρόγραμμα όπου θα επαναλάβουμε τα βήματα ανάπτυξης μιας παραθυρικής εφαρμογής. Θα χρησιμοποιήσουμε τα βασικά ελεγκτήρια (controls) της εργαλειοθήκης, Κουτί Κειμένου (TextBox), Ετικέτα (Label), Κουμπί Εντολών (Button). Θα κατανοήσουμε τους βασικούς τύπους δεδομένων και την ανάγκη μετατροπή του κειμένου σε αριθμητικό τύπο. Θα χρησιμοποιήσουμε τους βασικούς τελεστές. Θα χρησιμοποιήσουμε την δομή if και switch.

Ένας υπολογιστής H εφαρμογή θα υλοποιεί έναν υπολογιστή οοποίος θα κάνει πρόσθεση μεταξύ δύο αριθμών. Άρα ηδιεπαφή θα πρέπει να έχει δύο κουτιά κειμένου, για να πληκτρολογείται τους αριθμούς, και ένα κουμπί που μόλις το πατήσετε να υπολογίσει το αποτέλεσμα.

Έναρξη του προγράμματος Από το κουμπί Εναρξη (Start) επιλέγετε Όλα τα Προγράμματα (All Programs) και εν συνεχεία Microsoft Visual C# Express Edition.

Ηπρώτη σελίδα Η πρώτη σελίδα έχει περιοχές για γρήγορη πρόσβαση στη Βοήθεια, σε Νέα σχετικά με την C#, σε προηγούμενα Projects.

Επιλογή του είδους της εφαρμογής Windows Application εφαρμογή με γραφική διεπαφή Console Application εφαρμογή για την γραμμή εντολών Calculator Από το μενού File επιλέγετε New Project, εν συνεχεία Windows Application και πληκτρολογείται το όνομα της εφαρμογής.

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

Εάν κατά την διάρκεια της ανάπτυξης μιας εφαρμογή κλείσετε κάποιο από τα προηγούμενα παράθυρα για να αποκτήσετε περισσότερο χώρο στην οθόνη του υπολογιστή τότε μπορείτε μέσα από το μενού View να το εμφανίσετε ξανά. Properties παράθυρο των ιδιοτήτων Solution Explorer παράθυρο των αρχείων του Project Toolbox παράθυρο εργαλειοθήκης

Αποθήκευση της εφαρμογής Από την στιγμή που θα αποθηκεύσουμε την εφαρμογή θα πρέπει ανά τακτά χρονικά διαστήματα να επαναλαμβάνουμε την ίδια διαδικασία ήνα πατάμε το πλήκτρο

Για να τοποθετήσετε ένα αντικείμενο πάνω στη φόρμα υπάρχουν δύο τρόποι : Α) κάνετε ένα κλικ πάνω στο αντικείμενο και εν συνεχεία ένα κλικ πάνω στην φόρμα Β) κάνετε ένα κλικ πάνω στο αντικείμενο και κρατώντας πατημένο το αριστερό πλήκτρο το σέρνετε πάνω στη φόρμα και αφήνετε το αριστερό πλήκτρο.

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

Η εργαλειοθήκη έχει πολλά εργαλεία αντικείμενα τα οποία είναι χωρισμένα σε ομάδες ανάλογα με την εργασία τους. Η ομάδα Common Controls περιέχει τα πιο συνηθισμένα αντικείμενα που μπορείτε να τοποθετήσετε σε μια φόρμα. Button κουμπί εντολών που όταν το πατάει ο χρήστης επιτελεί ενεργοποιεί - κάποια εργασία. Label ετικέτα, μια επιγραφή που βάζετε δίπλα από τα αντικείμενα με σκοπό να καταλαβαίνει οχρήστης την εργασία του αντικειμένου. ΤextBox κουτί (πλαίσιο) κειμένου, ένας χώρος για να γράφει οχρήστης κείμενο. CheckBox πλαίσιο ελέγχου για την αποδοχή ηόχι μιας επιλογής RadioButton κουμπί ελέγχου για την επιλογή ανάμεσα σε πολλές επιλογές. ComboBox Πτυσσόμενο πλαίσιο καταλόγου, επιλογή ενός στοιχείου από το κατάλογο

Ηδιεπαφή της εφαρμογής 3 Ετικέτες (Labels) 3 Κουτιά Κειμένου (Τextbox) 1 Κουμπί Εντολών (Button)

Οι ιδιότητες των αντικειμένων Επιλέγετε το κάθε αντικείμενο πάνω στην φόρμα και εν συνεχεία στο παράθυρο των Properties αλλάζετε τις τιμές των ιδιοτήτων τους.

Τα ονόματα των αντικειμένων Το όνομα (Name) είναι η πρώτη και η ποιό σημαντική ιδιότητα γιατί με αυτή θα αναφερθούμε στο συγκεκριμένο αντικείμενο. Μια καλή πρακτική είναι τα ονόματα να είναι μια σύνθεση του είδους τους (π.χ. txt για κείμενο, lbl για ετικέτα, btn για κουμπί, frm για φόρμα, cmb για πλαίσιο επιλογής κ.λπ.) και της εργασίας που επιτελούν (first για το πρώτο αριθμό, second για το δεύτερο, result για το αποτέλεσμα κ.λπ. ) Οπότε τα ονόματα για τα αντικείμενα θα είναι της μορφής : txtfirst, txtsecond, txtresult κ.λπ.

Οι ιδιότητες των αντικειμένων

Οι ιδιότητες των αντικειμένων

Οι ιδιότητες των αντικειμένων

Οι ιδιότητες των αντικειμένων

Προγραμματισμός των γεγονότων Επιλέγουμε το αντικείμενο πάνω στην φόρμα και εν συνεχεία στο παράθυρο των Properties επιλέγουμε το γεγονός που θέλουμε να προγραμματίσουμε και κάνουμε διπλό κλικ.

H εφαρμογή υπολογιστής Πληκτρολογείστε τις εντολές

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

Άλλο είναι το πρώτο αντίγραφο παράδειγμα To σχέδιο της κλάσης Button Button Ιδιότητες Name Text. Μέθοδοι Click.. Αντίγραφα της κλάσης και άλλο το δεύτερο αντίγραφο. Για Αντικείμενα της Button Button Ιδιότητες Name : btnfirst Text : Πρόσθεση. Μέθοδοι Με το πάτημα θα Click.. κάνει πρόσθεση Button Ιδιότητες Name : btnsecond Text : Αφαίρεση. Μέθοδοι Με το πάτημα θα Click.. κάνει αφαίρεση

Τα αντίγραφα μιας κλάσης ονομάζονται αντικείμενα (objects) ή στιγμιότυπα (instances) της κλάσης. H C# είναι μια αντικειμενοστραφή γλώσσα προγραμματισμού γιατί εκτός από τις έτοιμες κλάσεις μπορείτε να δημιουργήσετε και τις δικές σας κλάσεις. Η διαφορά ανάμεσα στην κλάση και σε ένα αντικείμενο είναι οι εξής : Η κλάση είναι το σχέδιο πρότυπο για παράδειγμα η κλάση Άνθρωπος δεν αναφέρετε σε κάποιο συγκεκριμένο άνθρωπο αλλά είναι το πρότυπο που περιλαμβάνει τα χαρακτηριστικά (ιδιότητες) και τις ενέργειες (μεθόδους) που μπορεί να κάνει ένας άνθρωπός. Ιδιότητες Υψος Βάρος Ημερομηνία Γέννησης Μεθόδους Εργάζεται

Ένα αντικείμενο είναι ένα συγκεκριμένο παράδειγμα (στιγμιότυπο) της κλάσης το οποίο έχει τις δικές του ιδιότητες και μεθόδους τις οποίες έχει αντιγράψει από την κλάση. Για παράδειγμα ο Κώστας Αργυρίου και η Μαρία Λουκά είναι δύο διαφορετικά αντικείμενα (στιγμιότυπα) της κλάσης Άνθρωπος. Το κάθε αντικείμενο έχει το δικό του ύψος, βάρος, ημερομηνία γέννησης και άλλες ενέργειες κάνει όταν εργάζεται. Φυσικά και τα δύο αντικείμενα είναι της ιδίας κλάσης αλλά άλλες τιμές έχει το ένα και άλλες τιμές έχει το άλλο αντικείμενο. Κατά τον ίδιο τρόπο και στην εφαρμογή μας έχουμε διαφορετικά αντικείμενα της κλάσης TextBox όπου το καθένα έχει τις δικές του ιδιότητες τις οποίες μπορούμε να τροποποιήσουμε είτε γραφικά (από το παράθυρο των ιδιοτήτων) είτε προγραμματιστικά. Έτσι λοιπόν για να προσθέσουμε την επιθυμητή λειτουργικότητα στo αντικείμενο btncalculate θα πρέπει να γράψουμε τις εντολές στο γεγονός Click.

Έλεγχος Σφαλμάτων Εκτέλεση της εφαρμογής

H εφαρμογή υπολογιστής Βιβλιοθήκες Το project Calculator Τα όρια της φόρμας έναρξη τέλος Η μέθοδος Click της BtnCalculate

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

1 2 Στα πλαίσια του μαθήματος ΔΕΝ θα μας απασχολήσει ο έτοιμος κώδικας που δημιουργεί το περιβάλλον ανάπτυξης ( ητρέχουσα και οι επόμενες 4 διαφάνειες) απλά το συζητάμε για να έχετε μια γενική εικόνα το τι συμβαίνει πίσω από την σκηνή. Αν στο παράθυρο του Solution Explorer πατήσετε πάνω στο αρχείο Form1.Designer.cs τότε θα εμφανιστεί το ανωτέρω παράθυρο, το οποίο περιλαμβάνει ένα σύνολο εντολών με το όνομα InitializeComponent το οποίο δημιουργεί και τοποθετεί τα αντικείμενα πάνω στην φόρμα.

Παρατηρείστε ότι παρ όλο ότι πρόκειται για διαφορετικό αρχείο Form1.Designer.cs οι εντολές του, περικλείονται από το namespace Calculator το project που δημιουργήσαμε αρχικά που σημαίνει ότι παίρνει μέρος στην ίδια εφαρμογή. Άρα ότι κλάσεις περικλείονται μέσα σε ένα namespace παρ όλο ότι βρίσκονται σε διαφορετικά αρχεία θεωρούνται σαν μέρος μιας κοινής εφαρμογής, από την στιγμή που μοιράζονται το ίδιο όνομα στο namespace. Για παράδειγμα μια εφαρμογή αποτελείται από πέντε διαφορετικές φόρμες. Για καλύτερο έλεγχο τοποθετούμε την κάθε μια σε διαφορετικό αρχείο αλλά για να θεωρούνται μια κοινή εφαρμογή τοποθετούμε όλες τις εντολές μέσα σε άγκιστρα χρησιμοποιώντας το ίδιο namespace. Η χρήση του namespace είναι σημαντική γιατί μας επιτρέπει να χρησιμοποιούμε τα ίδια ονόματα π.χ. σε φόρμες - αρκεί να είναι σε διαφορετικά namespaces.

Για να γίνει το τελευταίο κατανοητό θεωρήστε ότι έχετε μια φόρμα ηοποία έχει δύο αντικείμενα είτε της ίδιας είτε διαφορετικής κλάσης. Δεν γίνεται αυτά τα αντικείμενα να έχουν τα ίδια ονόματα γιατί πολύ απλά δεν θα μπορούσε το περιβάλλον ανάπτυξης να τα ξεχωρίσει μεταξύ τους. Αν είχαμε δύο φόρμες με ονόματα form1 και form2 θα μπορούσαμε να τοποθετήσουμε στην πρώτη φόρμα ένα TextBox με όνομα txtfirst και επίσης να τοποθετήσουμε στην δεύτερη φόρμα ένα TextBox με όνομα txtfirst. Σε αυτή την περίπτωση δεν υπάρχει πρόβλημα γιατί το κάθε αντικείμενο ανήκει σε διαφορετικό χώρο που καθορίζει ηαντίστοιχη φόρμα. Έτσι το πλήρες όνομα του καθενός είναι form1.txtfirst και του άλλου είναι form2.txtfirst. To ίδιο ακριβώς συμβαίνει σε υψηλότερο επίπεδο για τις φόρμες (και γενικότερα τις κλάσεις), δηλαδή δεν μπορεί να συνυπάρχουν με το ίδιο όνομα μέσα στο ίδιο namespace. Για να χρησιμοποιήσουμε τις κλάσεις ενός namespace υπάρχουν δύο τρόποι α) το πλήρες όνομα π.χ. ΟνομαNameSpace.ΌνομαΚλάσης β) να χρησιμοποιήσετε μόνο το ΌνομαΚλάσης αρκεί να δηλώσετε στην αρχή του αρχείου την εντολή using ΟνομαNameSpace; Έτσι λοιπόν στην αρχή του κάθε προγράμματος υπάρχει ένα σύνολο από namespaces στις προηγούμενες διαφάνειες γράφουμε βιβλιοθήκες - που χρησιμοποιούνται στα πλαίσια του προγράμματος. Το κάθε namespace ομαδοποιεί λειτουργίες κατά ενέργεια, π.χ. το System.IO έχει λειτουργίες και κλάσεις για την διαχείριση των αρχείων ενώ το System.Data έχει λειτουργίες και κλάσεις για την σύνδεση με Βάσεις Δεδομένων.

Η κάθε φόρμα της εφαρμογής είναι ένα αντικείμενο της κλάσης Form και το ιδιαίτερο στοιχείο της C# είναι ότι επιτρέπει ο κώδικας μιας κλάσης να υπάρχει σε διαφορετικά αρχεία, γράφοντας πριν από το όνομα της κλάσης την λέξη partial. Έτσι λοιπόν ο κώδικας της frmcalculate υπάρχει στα αρχεία Form1.cs και Form1.Designer.cs. Αυτή η τακτική είναι χρήσιμη γιατί κρύβει τις λεπτομέρειες της σχεδίασης της φόρμας που δεν μας ενδιαφέρει η υλοποίηση τους αφού γίνετε με γραφικό τρόπο - από τον προγραμματισμό των γεγονότων που πρέπει εμείς να κάνουμε γράφοντας τις αντίστοιχες εντολές. Το αρχείο Form1.resx μπορεί να χρησιμοποιηθεί για να τοποθετήσουμε διάφορα resources (Π.χ. Εικόνες, ήχους, video, κείμενο) που θα χρησιμοποιηθούν στα πλαίσια της εφαρμογής

Το τελευταίο αρχείο που δημιουργεί αυτόματα το περιβάλλον ανάπτυξης είναι το Program.cs το οποίο δεν έχει άλλο σκοπό παρά να εκτελέσει την εφαρμογή δηλαδή να δημιουργήσει ένα νέο αντικείμενο της κλάσης frmcalculate.

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

char : ένας Unicode χαρακτήρας string : ένα αλφαριθμητικόαπό Unicode χαρακτήρες. bool : μια λογική μεταβλητήμε τιμές true ή false. object : Ένα αντικείμενο.

Η δήλωση (δημιουργία) μιας μεταβλητής και η απόδοση μιας τιμής γίνεται με τους εξής τρόπους : Τύπο_Δεδομένων Όνομα_Μεταβλητής; Όνομα_Μεταβλητής = Τιμή; παράδειγματα int x; x = 3; string t; t = "Welcome in C#"; char y; y = 'F'; bool g; g = true; double foros foros = 0.4; float fpa = 18.5f; Όταν αποδίδετε μια δεκαδική τιμή σε μια μεταβλητή ηπροκαθορισμένη ρύθμιση είναι ότι πρόκειται για αριθμό τύπου double. Για να δηλώσετε ότι πρόκειται για float θα πρέπει στο τέλος του αριθμού να βάλετε f ή F. Διαφορετικά θα βάλετε μπροστά από την τιμή την λέξη float μέσα σε παρενθέσεις : float fpa = (float) 18.5;

Η δήλωση (δημιουργία) μιας μεταβλητής και η απόδοση μιας τιμής γίνεται και σε ένα βήμα : Τύπο_Δεδομένων Όνομα_Μεταβλητής = Τιμή; παράδειγματα int x= 3; string t = "Welcome in C#"; char y = 'F'; bool g= true; double foros foros = 0.4; float fpa = 18.5f; H λέξη μεταβλητή έχει την έννοια ότι ητιμή του αποθηκευτικού χώρου μεταβάλετε : int posotita = 2;.. posotita = 8;.. posotita = 14; Η μεταβλητή posotita έχει τιμή 2 Η μεταβλητή posotita έχει τιμή 8 Η μεταβλητή posotita έχει τιμή 14

Τα όρια της κλάσης frmcalculate Τα όρια της μεθόδου frmcalculate Τα όρια της μεθόδου btncalculate_click

Σε οποιοδήποτε σημείο μέσα σε μια κλάση μπορείτε να δηλώσετε μια μεταβλητή αλλά ηεμβέλεια της και ησυμπεριφορά της διαφοροποιείται εάν είναι : Καθολική : δηλώνετε σε οποιοδήποτε σημείο έξω από το σώμα οποιασδήποτε μεθόδου. Στην προηγούμενη διαφάνεια στα πράσινα σημεία 1, 2 και 3. Τοπική : δηλώνετε στο σώμα μιας μεθόδου. Για παράδειγμα οι μεταβλητές x, y και sum στο σώμα της btncalculate_click. Η C# δεν αποδίδει προκαθορισμένη τιμή σε μια τοπική μεταβλητή. Για παράδειγμα αν δηλώσετε : int x; int y = 0; Τότε το y έχει τιμή 0 ενώ το x δεν έχει τιμή και κατά συνέπεια η πράξη y = 2 * x; θα δημιουργήσει σφάλμα οπότε πριν χρησιμοποιήσετε μια τοπική μεταβλητή θα πρέπει να της έχετε δώσει τιμή. Το ίδιο ΔΕΝ ισχύει σε καθολική μεταβλητή γιατί αρχικοποιούνται ανάλογα με το τύπο δεδομένων τους με προκαθορισμένες τιμές. Π.χ. Οι αριθμητικές τιμές με 0, οι λογικές με false, οι χαρακτήρες με. Στα αλφαριθμητικά (string) είτε σαν Τοπικές είτε σαν Καθολικές μεταβλητές πριν τις χρησιμοποιήσετε θα πρέπει να τους έχετε δώσει τιμή.

Μια τοπική μεταβλητή μπορεί να χρησιμοποιηθεί είναι γνωστή - μόνο μέσα στο σώμα της μεθόδου που την έχουμε δηλώσει. Μια καθολική μεταβλητή μπορεί να χρησιμοποιηθεί είναι γνωστή - μόνο μέσα στο σώμα της κλάσεως που την έχουμε δηλώσει, και κατά συνέπεια σε κάθε μέθοδο της. class TestClass { int x; class TestClass { int x; void first_method() { k = 5; } void first_method() { Η y χρησιμοποιείται y= 5; έξω από το σώμα της } μεθόδου που την έχει δημιουργήσει. } void second_method() { int y; y = 8; x = 2 * y; } int k; } void second_method() { int y; y = 8; x = 2 * y; } int k;

Μέσα στο σώμα μιας μεθόδου μια τοπική μεταβλητή μπορεί να έχει το ίδιο όνομα με μια καθολική μεταβλητή. Σε αυτή την περίπτωση ηχρήση της μεταβλητής, μέσα στο σώμα της μεθόδου, αναφέρετε στην τοπική μεταβλητή. class TestClass { int x = 8; void first_method() { Ητιμήτηςκείναι 16. k = 2 * x; Χρησιμοποιείτε η } καθολική x } void second_method() { int x = 4; κ = 2 * x; } int k; Η τιμή της κ είναι 8. Χρησιμοποιείτε η τοπική x

Μεταβλητές του ιδίου τύπου μπορείτε να τις δηλώσετε στην ίδια γραμμή αφού τις χωρίσετε με κόμμα : double x,y,z,sum; double x; double y; double z; Όλοι οι τύποι δεδομένων στην C# είναι κλάσεις με ιδιότητες και μεθόδους, οπότε όλες οι μεταβλητές είναι αντικείμενα της συγκεκριμένης κλάσης.

Όλοι οι αριθμητικοί δεδομένων υποστηρίζουν την μέθοδο Parse ηοποία παίρνει ένα αλφαριθμητικό και επιστρέφει την αντίστοιχη αριθμητική τιμή. Το txtfirst είναι ένα κουτί κειμένου και αν θεωρήσετε ότι περιέχει το αλφαριθμητικό "12" τότε η τιμή της t είναι 12. ("345"); Ητιμή της m είναι 345. Oι γραμμές byte t; και int m; δημιουργούν αποθηκευτικούς χώρους στην μνήμη του υπολογιστή ικανούς να κρατήσει ο καθένας από ένα ακέραιο (διαφορετικής χωρητικότητας, δες πίνακα) αντίστοιχα. Η μέθοδος Parse του αντιστοίχου τύπου - αποδίδει τιμή στην καθεμία από τις μεταβλητές.

Αριθμητικοί Τελεστές Τελεστής = + - * / % ++ -- Σημασία Απόδοση τιμής Πρόσθεση Αφαίρεση, Πρόσημο πολλαπλασιασμός διαίρεση υπόλοιπο αύξηση της τιμής της μεταβλητής κατά 1 ελάττωση της τιμής της μεταβλητής κατά 1

Παράδειγμα χρήσης αριθμητικών τελεστών. int x = 3; x = x + 4; Απόδωση τιμής x = 3 Πρόσθεση x = 7 x = x - 1; Αφαίρεση x = 6 x = x % 2; Yπόλοιπο x = 0 int y = ++x; Aύξησε το x κατά 1 δηλαδή να γίνει x= 1 και μετά απόδωσε το x στο y int y = x++; Απόδωσε το x στο y και μετά αύξησε το x κατά 1 int y = --x; Μείωσε το x κατά 1 και μετά απόδωσε το x στο y int y = x--; Απόδωσε το x στο y και μετά μείωσε το x κατά 1

Ολοκλήρωση της εφαρμογής private void btncalculate_click(object sender, EventArgs e) { double x, y, sum; } x = double.parse(txtfirst.text); y = double.parse(txtsecond.text); sum = x + y; txtresult.text = sum.tostring(); 1) Δημιουργία μεταβλητών για την αποθήκευση πραγματικών αριθμών με ονόματα x, y, και sum. 2) Μετατροπή του περιεχομένου του πρώτου κουτιού κειμένου σε πραγματικό αριθμό και απόδοση της τιμής στη μεταβλητή x. 3) Μετατροπή του περιεχομένου του δεύτερου κουτιού κειμένου σε πραγματικό αριθμό και απόδοση της τιμής στη μεταβλητή y. 4) Πρόσθεση της τιμής της x και y και απόδοση του αποτελέσματος στη μεταβλητή sum. 5) Μετατροπή της αριθμητικής τιμής σε αλφαριθμητικό και απόδοση στο κουτί κειμένου txtresult.

H εφαρμογή υπολογιστής

Επέκταση της εφαρμογής Προσθήκη ενός κουτιού κειμένου για την υποστήριξη των μαθηματικών πράξεων

Οι ιδιότητες των αντικειμένων

Αν μια ακέραια μεταβλητή με όνομα x θέλω να συγκρίνω αν έχει τιμή μικρότερη ή ίση από 5 θα γράφαμε : int x; if(x <= 5) { Εντολές αν η συνθήκη είναι αληθής... }

Bελτίωση της λειτουργικότητας

Πρόγραμμα Φορολογίας

Παράδειγμα Να δημιουργήσετε ένα πρόγραμμα φορολογίας το οποίο θα δέχεται έναν πραγματικό αριθμό ο οποίος αντιστοιχεί στο εισόδημα ενός πολίτη και υπολογίζει το φόρο όπως παρακάτω : Έως 1000 Ευρώ, ο φόρος είναι 0 Από 1000 μέχρι 2000 Ευρώ, ο φόρος είναι 200 Ευρώ. Από 2000 μέχρι 3000 ο φόρος είναι 15 % του εισοδήματος πέραν των 2000 Ευρώ Για μεγαλύτερα ποσά είναι 25 % του εισοδήματος, πέραν των 3000 Ευρώ

Ηδιεπαφή της εφαρμογής

Οι ιδιότητες των αντικειμένων

Οι ιδιότητες των αντικειμένων

Οι ιδιότητες των αντικειμένων

Έλεγχος Σφαλμάτων Έκτέλεση της εφαρμογής