Java 7. Οδηγός της. Εκδόσεις: Μ. Γκιούρδας. Herbert Schildt. 5 η ΕΚ ΟΣΗ. Απόδοση: Αγαμέμνων Μήλιος Μηχανικός Λογισμικού

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Java 7. Οδηγός της. Εκδόσεις: Μ. Γκιούρδας. Herbert Schildt. 5 η ΕΚ ΟΣΗ. Απόδοση: Αγαμέμνων Μήλιος Μηχανικός Λογισμικού"

Transcript

1 Οδηγός της Java 7 5 η ΕΚ ΟΣΗ Herbert Schildt Απόδοση: Αγαμέμνων Μήλιος Μηχανικός Λογισμικού Εκδόσεις: Μ. Γκιούρδας Ζωοδόχου Πηγής Τηλ.: Αθήνα, _CONT_java.indd iii 9/1/2012 9:08:53 πμ

2 Τίτλος Πρωτοτύπου: Java: A Beginner s Guide, Fifth Edition ISBN-13: ISBN-10: Copyright 2012 by McGraw-Hill Companies U.S.A. Αποκλειστικότητα για την Ελληνική Γλώσσα Εκδόσεις: Μόσχος Γκιούρδας Ζωοδόχου Πηγής Τηλ.: Αθήνα, ISBN: Επιμέλεια κειμένων: Μιχαήλ Μεταξάς Desktop Publishing: Κ. Καλαϊτζής, τηλ.: Εκτύπωση: ΜΗΤΡΟΠΟΛΙΣ Γραφικές Τέχνες Α.Ε., τηλ.: Βιβλιοδεσία: ΣΤΑΜΟΥ Γραφικές Τέχνες - Εκδόσεις, Τηλ.: Αναδημοσίευση του βιβλίου σε οποιαδήποτε μορ φή, ολόκληρου ή μέ ρους, καθώς και των περιεχομένων προ γραμ μά των, δεν επιτρέπεται χωρίς την έγγραφη εξου σιο δό τη ση του εκδότη. 00_CONT_java.indd iv 9/1/2012 9:08:53 πμ

3 Τα περιεχόμενα με μια ματιά 1 Θεμελιώδεις έννοιες της Java Εισαγωγή στους τύπους δεδομένων και τους τελεστές Προτάσεις ελέγχου προγραμμάτων Εισαγωγή στις κλάσεις, τα αντικείμενα και τις μεθόδους Περισσότεροι τύποι δεδομένων και τελεστές Μια καλύτερη ματιά στις μεθόδους και τις κλάσεις Κληρονομικότητα Πακέτα και διεπαφές Χειρισμός εξαιρέσεων Χρήση εισόδου/εξόδου Πολυνηματικός προγραμματισμός Απαριθμήσεις, αυτόματη πλαισίωση, στατική εισαγωγή και σχόλια Generics Applet, συμβάντα και διάφορα θέματα Εισαγωγή στο Swing A Απαντήσεις στα τεστ γνώσεων B Χρήση των σχολίων τεκμηρίωσης της Java Ευρετήριο _CONT_java.indd v 9/1/2012 9:08:53 πμ

4 Σχετικά με το συγγραφέα Ο Herbert Schildt είναι κορυφαίος συγγραφέας βιβλίων προγραμματισμού. Αποτελεί αυθεντία στις γλώσσες Java, C, C++ και C#. Τα βιβλία του για τον προγραμματισμό έχουν πουλήσει εκατομμύρια αντίτυπα σε όλο τον κόσμο και έχουν μεταφραστεί σε αμέτρητες γλώσσες. Έχει γράψει πολλά βιβλία για τη Java, συμπεριλαμβανομένων των Java: The Complete Reference, Herb Schildt s Java Programming Cookbook, Swing: A Beginner s Guide και The Art of Java. Μεταξύ άλλων δικών του ευπώλητων βιβλίων συναντούμε τα C++: The Complete Reference, C#: The Complete Reference και C: The Complete Reference. Αν και ενδιαφέρεται για όλες τις πτυχές της πληροφορικής, βασικό του σημείο ενδιαφέροντος αποτελούν οι γλώσσες προγραμματισμού, συμπεριλαμβανομένων μεταγλωττιστών, διερμηνευτών και γλωσσών ελέγχου ρομποτικών συσκευών. Ασχολείται επίσης ενεργά για την τυποποίηση των γλωσσών. Ο Schildt κατέχει τίτλους σπουδών από το Πανεπιστήμιο του Ιλινόις. Μπορείτε να επικοινωνήσετε μαζί του στο γραφείο συμβούλων του στο τηλέφωνο (217) Η διεύθυνση του website του είναι Σχετικά με τον τεχνικό επιμελητή Ο ρ. Danny Coward συμμετέχει ενεργά στην ανάπτυξη της πλατφόρμας της Java από το Υπήρξε ιδρυτικό μέλος της ομάδας Java EE όσο εργαζόταν στη Sun. Έχει διατελέσει μέλος της εκτελεστικής επιτροπής Java Community Process Executive Committee και έχει αναλάβει ηγετικό ρόλο σε όλες τις εκδόσεις της πλατφόρμας Java: Java SE, Java ME και Java EE. Είναι επίσης ο ιδρυτής της ομάδας JavaFX. 00_CONT_java.indd vi 9/1/2012 9:08:53 πμ

5 Περιεχόμενα ΕΙΣΑΓΩΓΗ... xvii 1 Θεμελιώδεις έννοιες της Java...1 Η προέλευση της Java...3 Η σχέση της Java με τις C και C Η σχέση της Java με τις C#...4 Η συνεισφορά της Java στο Internet...5 Τα applet της Java...5 Ασφάλεια...5 Φορητότητα...6 Η μαγεία της Java: Το Bytecode...6 Η ορολογία της Java...7 Αντικειμενοστραφής προγραμματισμός...8 Ενθυλάκωση...9 Πολυμορφισμός...10 Κληρονομικότητα...10 Η απόκτηση του πακέτου ανάπτυξης της Java...11 Ένα απλό πρώτο πρόγραμμα...12 Εισαγωγή του προγράμματος...12 Μεταγλώττιση του προγράμματος...13 Το πρώτο πρόγραμμα γραμμή προς γραμμή...13 Χειρισμός συντακτικών λαθών...16 Ένα δεύτερο απλό πρόγραμμα...16 Ένας άλλος τύπος δεδομένων...18 οκιμάστε το 1-1: Μετατροπή γαλονιών σε λίτρα...20 ύο προτάσεις ελέγχου...21 Η πρόταση if...21 Ο βρόχος for _CONT_java.indd vii 9/1/2012 9:08:53 πμ

6 viii ΠΕΡΙΕΧΟΜΕΝΑ ημιουργία μπλοκ κώδικα...24 Ερωτηματικά και τοποθέτηση...26 Πρακτικές εσοχών...26 οκιμάστε το 1-2: Βελτίωση του προγράμματος μετατροπής γαλονιών σε λίτρα...27 Οι λέξεις-κλειδιά της Java...28 Αναγνωριστές στη Java...29 Οι βιβλιοθήκες κλάσεων της Java...29 Κεφάλαιο 1 Τεστ γνώσεων Εισαγωγή στους τύπους δεδομένων και τους τελεστές...31 Γιατί οι τύποι δεδομένων είναι σημαντικοί...32 Βασικοί τύποι της Java...32 Ακέραιοι...33 Τύποι κινητής υποδιαστολής...35 Χαρακτήρες...35 Ο τύπος Boolean...37 οκιμάστε το 2-1: Πόσο μακριά είναι η αστραπή...38 Κυριολεκτικές σταθερές...39 εκαεξαδικές και οκταδικές σταθερές...40 Ακολουθίες χαρακτήρων διαφυγής...40 Κυριολεκτικές σταθερές συμβολοσειρών...41 Μια πιο προσεκτική ματιά στις μεταβλητές...42 Αρχικοποίηση μιας μεταβλητής...42 υναμική αρχικοποίηση...43 Εμβέλεια και διάρκεια ζωής των μεταβλητών...43 Τελεστές...46 Αριθμητικοί τελεστές...46 Προσαύξηση και μείωση...47 Σχεσιακοί και λογικοί τελεστές...48 Βραχυκυκλωμένοι λογικοί τελεστές...50 Ο τελεστής εκχώρησης...51 Εκχωρήσεις συντόμευσης...51 Μετατροπή τύπων στις εκχωρήσεις...53 Ρητή μετατροπή ασύμβατων τύπων...54 Σειρά προτεραιότητας τελεστών...56 οκιμάστε το 2-2: Προβολή ενός πίνακα αλήθειας για τους λογικούς τελεστές...57 Εκφράσεις...58 Μετατροπή τύπων σε εκφράσεις...58 Κενά διαστήματα και παρενθέσεις...60 Κεφάλαιο 2 Τεστ γνώσεων Προτάσεις ελέγχου προγράμματος...63 Εισαγωγή χαρακτήρων από το πληκτρολόγιο...64 Η πρόταση if _CONT_java.indd viii

7 ΠΕΡΙΕΧΟΜΕΝΑ ix Ένθετα if...67 Η σκάλα if-else-if...68 Η πρόταση switch...69 Ένθετες προτάσεις switch...72 οκιμάστε το 3-1: ημιουργήστε ένα σύστημα βοήθειας για τη Java...73 Ο βρόχος for...75 Μερικές παραλλαγές στο βρόχο for...77 Κομμάτια που λείπουν...78 Ο ατέρμων βρόχος...79 Βρόχοι χωρίς σώμα...79 ήλωση μεταβλητών ελέγχου βρόχων μέσα στο βρόχο for...80 Ο ενισχυμένος βρόχος for...81 Ο βρόχος while...81 Ο βρόχος do-while...83 οκιμάστε το 3-2: Βελτίωση του συστήματος βοήθειας για τη Java...85 Χρήση του break για έξοδο από το βρόχο...88 Χρήση του break ως μορφή του goto...89 Χρήση του continue...94 οκιμάστε το 3-3: Ολοκλήρωση του συστήματος βοήθειας για τη Java...95 Ένθετοι βρόχοι...99 Κεφάλαιο 3 Τεστ γνώσεων Εισαγωγή στις κλάσεις, τα αντικείμενα και τις μεθόδους Τα βασικά στοιχεία των κλάσεων Η γενική μορφή μιας κλάσης Ορισμός μιας κλάσης ημιουργία αντικειμένων Μεταβλητές αναφοράς και εκχώρηση Μέθοδοι Προσθήκη μεθόδου στην κλάση Vehicle Επιστροφή από μέθοδο Επιστροφή τιμής Χρήση παραμέτρων Προσθήκη παραμετροποιημένης μεθόδου στη Vehicle οκιμάστε το 4-1: ημιουργία μιας κλάσης βοήθειας Μέθοδοι κατασκευής Παραμετροποιημένες μέθοδοι κατασκευής Προσθήκη μεθόδου κατασκευής σε μια κλάση Vehicle Ο τελεστής new ξανά Αποκομιδή απορριμμάτων και χαρακτηριστικά ολοκλήρωσης Η μέθοδος finalize( ) οκιμάστε το 4-2: Παρουσίαση της αποκομιδής απορριμμάτων και της διαδικασίας ολοκλήρωσης Η λέξη-κλειδί this Κεφάλαιο 4 Τεστ γνώσεων _CONT_java.indd ix

8 x ΠΕΡΙΕΧΟΜΕΝΑ 5 Περισσότεροι τύποι δεδομένων και τελεστές Πίνακες Πίνακες μίας διάστασης οκιμάστε το 5-1: Ταξινόμηση ενός πίνακα Πίνακες πολλαπλών διαστάσεων Πίνακες δύο διαστάσεων Μη κανονικοί πίνακες Πίνακες τριών ή περισσότερων διαστάσεων Αρχικοποίηση πινάκων πολλαπλών διαστάσεων Εναλλακτική σύνταξη δήλωσης πίνακα Εκχώρηση αναφορών πίνακα Χρήση του μέλους length οκιμάστε το 5-2: Μια κλάση ουράς Το στυλ for-each για το βρόχο for Επανάληψη σε πίνακες πολλαπλών διαστάσεων Εφαρμογή του ενισχυμένου for Συμβολοσειρές Κατασκευή συμβολοσειρών Πράξεις σε συμβολοσειρές Πίνακες συμβολοσειρών Οι συμβολοσειρές είναι αμετάβλητες Χρήση συμβολοσειράς για έλεγχο πρότασης διακλάδωσης Χρήση ορισμάτων γραμμής εντολών Οι τελεστές bitwise Οι τελεστές bitwise AND, OR, XOR και NOT Οι τελεστές μετατόπισης Σύντομες εκχωρήσεις bitwise οκιμάστε το 5-3: Μια κλάση Showbits Ο τελεστής? Κεφάλαιο 5 Τεστ γνώσεων Μια καλύτερη ματιά στις μεθόδους και τις κλάσεις Έλεγχος πρόσβασης σε μέλη κλάσεων Τροποποιητές πρόσβασης της Java οκιμάστε το 6-1: Βελτίωση της κλάσης queue Εκχώρηση αντικειμένων σε μεθόδους Πώς εκχωρούνται τα ορίσματα Επιστροφή αντικειμένων Υπερφόρτωση μεθόδων Υπερφόρτωση μεθόδων κατασκευής οκιμάστε το 6-2: Υπερφόρτωση της μεθόδου κατασκευής queue Αναδρομή Τι είναι το static Στατικά μπλοκ _CONT_java.indd x

9 ΠΕΡΙΕΧΟΜΕΝΑ xi οκιμάστε το 6-3: Η ταξινόμηση quicksort Εισαγωγή στις ένθετες και εσωτερικές κλάσεις Varargs: Ορίσματα μεταβλητού μήκους Τα βασικά για τη varargs Υπερφόρτωση μεθόδων varargs Varargs και ασάφεια Κεφάλαιο 6 Τεστ γνώσεων Κληρονομικότητα Τα βασικά σημεία της κληρονομικότητας Πρόσβαση μελών και κληρονομικότητα Μέθοδοι κατασκευής και κληρονομικότητα Χρήση του super για κλήση μεθόδων κατασκευής υπερ-κλάσεων Χρήση του super για προσπέλαση μελών υπερ-κλάσεων οκιμάστε το 7-1: Επέκταση της κλάσης vehicle ημιουργία ιεραρχίας πολλών επιπέδων Πότε καλούνται οι μέθοδοι κατασκευής; Αναφορές υπερ-κλάσεων και αντικείμενα υπο-κλάσεων Παράκαμψη μεθόδων Οι μέθοδοι που παρακάμπτονται υποστηρίζουν τον πολυμορφισμό Γιατί χρησιμοποιούμε μεθόδους που παρακάμπτονται; Εφαρμογή παράκαμψης μεθόδων στο TwoDShape Χρήση αφηρημένων κλάσεων Χρήση του final Το final εμποδίζει την παράκαμψη Το final εμποδίζει την κληρονομικότητα Χρήση του final με μέλη δεδομένων Η κλάση Οbject Κεφάλαιο 7 Τεστ γνώσεων Πακέτα και διεπαφές Πακέτα Ορισμός πακέτου Εύρεση πακέτων και CLASSPATH Ένα σύντομο παράδειγμα πακέτου Πακέτα και πρόσβαση μελών Ένα παράδειγμα πρόσβασης πακέτου Τι είναι τα προστατευόμενα μέλη Εισαγωγή πακέτων Η βιβλιοθήκη κλάσεων της Java περιέχεται σε πακέτα ιεπαφές Υλοποίηση διεπαφών Χρήση διεπαφών αναφοράς οκιμάστε το 8-1: ημιουργία μιας διεπαφής ουράς _CONT_java.indd xi

10 xii ΠΕΡΙΕΧΟΜΕΝΑ Μεταβλητές σε διεπαφές Επέκταση διεπαφών Κεφάλαιο 8 Τεστ γνώσεων Χειρισμός εξαιρέσεων Η ιεραρχία εξαιρέσεων Τα βασικά σημεία του χειρισμού εξαιρέσεων Χρήση των try και catch Ένα απλό παράδειγμα εξαιρέσεων Οι συνέπειες μιας ασύλληπτης εξαίρεσης Αποτελεσματικός χειρισμός σφαλμάτων με εξαιρέσεις Χρήση πολλών προτάσεων catch Σύλληψη εξαιρέσεων υπο-κλάσεων Ένθετα μπλοκ try Πρόκληση εξαίρεσης Επανάληψη πρόκλησης εξαίρεσης Ανάλυση της Throwable Χρήση του finally Χρήση του throws Νέα χαρακτηριστικά εξαιρέσεων που υπάρχουν στο JDK Ενσωματωμένες εξαιρέσεις της Java ημιουργία υπο-κλάσεων εξαιρέσεων οκιμάστε το 9-1: Προσθήκη εξαιρέσεων στη κλάση Queue Κεφάλαιο 9 Τεστ γνώσεων Χρήση εισόδου/εξόδου Το σύστημα εισόδου/εξόδου της Java βασίζεται στις ροές Ροές byte και ροές χαρακτήρων Οι κλάσεις ροών byte Οι κλάσεις ροών χαρακτήρων Προεπιλεγμένες ροές Χρήση των ροών byte Ανάγνωση εισόδου κονσόλας Εγγραφή εξόδου κονσόλας Ανάγνωση και εγγραφή αρχείων με ροές byte Εισαγωγή από ένα αρχείο Εγγραφή σε ένα αρχείο Αυτόματο κλείσιμο αρχείου Ανάγνωση και εγγραφή δυαδικών δεδομένων οκιμάστε το 10-1: Μια εφαρμογή σύγκρισης αρχείων Αρχεία τυχαίας προσπέλασης Χρήση των ροών της Java που βασίζονται σε χαρακτήρες Είσοδος κονσόλας με ροές χαρακτήρων Έξοδος κονσόλας με ροές χαρακτήρων _CONT_java.indd xii

11 ΠΕΡΙΕΧΟΜΕΝΑ xiii Είσοδος/έξοδος αρχείων με ροές χαρακτήρων Χρήση ενός FileWriter Χρήση ενός FileReader Χρήση των συσκευασιών τύπων για μετατροπή αριθμητικών συμβολοσειρών οκιμάστε το 10-2: ημιουργία συστήματος βοήθειας που βασίζεται σε δίσκο Κεφάλαιο 10 Τεστ γνώσεων Πολυνηματικός προγραμματισμός Τα βασικά στοιχεία του πολυνηματικού προγραμματισμού Η κλάση Thread και η διεπαφή Runnable ημιουργία ενός νήματος Μερικές απλές βελτιώσεις οκιμάστε το 11-1: Επέκταση της Thread ημιουργία πολλαπλών νημάτων Προσδιορισμός του τέλους ενός νήματος Προτεραιότητες νημάτων Συγχρονισμός Χρήση συγχρονισμένων μεθόδων Η πρόταση synchronized Επικοινωνία νημάτων χρησιμοποιώντας τις notify( ), wait( ) και notifyall( ) Ένα παράδειγμα που χρησιμοποιεί τις wait( ) και notify( ) Αναστολή, συνέχιση και διακοπή νημάτων οκιμάστε το 11-2: Χρήση του νήματος main Κεφάλαιο 11 Τεστ γνώσεων Απαριθμήσεις, αυτόματη πλαισίωση, στατική εισαγωγή και σχόλια Απαριθμήσεις Τα βασικά σημεία των απαριθμήσεων Οι απαριθμήσεις της Java είναι τύποι κλάσεων Οι μέθοδοι values( ) και valueof( ) Μέθοδοι κατασκευής, μέθοδοι, μεταβλητές στιγμιότυπων και απαριθμήσεις ύο σημαντικοί περιορισμοί Οι απαριθμήσεις κληρονομούν το enum οκιμάστε το 12-1: Ένα φανάρι που ελέγχεται από υπολογιστές Αυτόματη πλαισίωση Συσκευασίες τύπων Τα βασικά σημεία της αυτόματης πλαισίωσης Αυτόματη πλαισίωση και μέθοδοι Η αυτόματη πλαισίωση/αποπλαισίωση γίνεται μέσα σε εκφράσεις Λίγα προειδοποιητικά λόγια Στατική εισαγωγή Σχόλια (μεταδεδομένα) Κεφάλαιο 12 Τεστ γνώσεων _CONT_java.indd xiii

12 xiv ΠΕΡΙΕΧΟΜΕΝΑ 13 Generics Τα βασικά σημεία των generics Ένα απλό παράδειγμα generics Τα generics λειτουργούν μόνο με αντικείμενα Οι τύποι των generics διαφέρουν βάσει των ορισμάτων των τύπων τους Μια κλάση generic με δύο παραμέτρους τύπων Η γενική μορφή μιας κλάσης generic Περιορισμένοι τύποι Χρήση ορισμάτων υποκατάστασης Περιορισμένοι χαρακτήρες υποκατάστασης Μέθοδοι generic Μέθοδοι κατασκευής generic ιεπαφές generic οκιμάστε το 13-1: ημιουργία μιας ουράς generic Ακατέργαστοι τύποι και παλαιός κώδικας Παρεμβολή τύπων με τον τελεστή ρόμβου Εξάλειψη Σφάλματα ασάφειας Μερικοί περιορισμοί στα generics Αδυναμία δημιουργίας στιγμιότυπων για παραμέτρους τύπων Περιορισμοί σε στατικά μέλη Περιορισμοί generic πινάκων Περιορισμοί εξαιρέσεων generic Συνέχεια της μελέτης των generics Κεφάλαιο 13 Τεστ γνώσεων Applet, συμβάντα και διάφορα θέματα Τα βασικά σημεία των applet Οργάνωση των applet και απαραίτητα στοιχεία Η αρχιτεκτονική των applet Ένας πλήρης σκελετός των applet Αρχικοποίηση και τερματισμός των applet Αίτηση επανασχεδίασης Η μέθοδος update( ) οκιμάστε το 14-1: Ένα απλό applet για σχεδίαση πλαισίου Χρήση του παραθύρου κατάστασης Πέρασμα παραμέτρων σε applet Η κλάση Applet Χειρισμός συμβάντων Το μοντέλο συμβάντων ανάθεσης Συμβάντα Πηγές συμβάντων Αισθητήριοι δέκτες συμβάντων Κλάσεις συμβάντων ιεπαφές αισθητήριων δεκτών συμβάντων _CONT_java.indd xiv

13 ΠΕΡΙΕΧΟΜΕΝΑ xv Χρήση του μοντέλου ανάθεσης συμβάντων Χειρισμός συμβάντων ποντικιού και κινήσεων ποντικιού Ένα απλό applet συμβάντος ποντικιού Περισσότερες λέξεις-κλειδιά της Java Οι τροποποιητές transient και volatile instanceof strictfp assert Εγγενείς μέθοδοι Κεφάλαιο 14 Τεστ γνώσεων Εισαγωγή στο Swing Η προέλευση και η φιλοσοφία σχεδίασης του Swing Στοιχεία και δοχεία Στοιχεία οχεία Τα πλαίσια δοχείων κορυφαίου επιπέδου ιαχείριση διατάξεων Ένα πρώτο απλό πρόγραμμα του Swing Αναλυτική περιγραφή του πρώτου παραδείγματος στο Swing Χρήση του JButton Χρήση του JTextField ημιουργία ενός JCheckBox Χρήση του JList οκιμάστε το 15-1: Ένα πρόγραμμα σύγκρισης αρχείων του Swing Χρήση ανώνυμων εσωτερικών κλάσεων για το χειρισμό συμβάντων ημιουργία ενός applet στο Swing Τι ακολουθεί; Κεφάλαιο 15 Τεστ γνώσεων A Απαντήσεις στα τεστ γνώσεων Κεφάλαιο 1: Θεμελιώδεις έννοιες της Java Κεφάλαιο 2: Εισαγωγή στους τύπους δεδομένων και τους τελεστές Κεφάλαιο 3: Προτάσεις ελέγχου προγράμματος Κεφάλαιο 4: Εισαγωγή στις κλάσεις, τα αντικείμενα και τις μεθόδους Κεφάλαιο 5: Περισσότεροι τύποι δεδομένων και τελεστές Κεφάλαιο 6: Μια καλύτερη ματιά στις μεθόδους και τις κλάσεις Κεφάλαιο 7: Κληρονομικότητα Κεφάλαιο 8: Πακέτα και διεπαφές Κεφάλαιο 9: Χειρισμός εξαιρέσεων Κεφάλαιο 10: Χρήση εισόδου/εξόδου Κεφάλαιο 11: Πολυνηματικός προγραμματισμός Κεφάλαιο 12: Απαριθμήσεις, αυτόματη πλαισίωση, στατική εισαγωγή και σχόλια Κεφάλαιο 13: Generics _CONT_java.indd xv

14 xvi ΠΕΡΙΕΧΟΜΕΝΑ Κεφάλαιο 14: Applet, συμβάντα και διάφορα θέματα Κεφάλαιο 15: Εισαγωγή στο Swing B Χρήση των σχολίων τεκμηρίωσης της Java Οι ετικέτες {@inheritdoc} {@link} Η γενική μορφή ενός σχολίου τεκμηρίωσης Η έξοδος του javadoc Ένα παράδειγμα που χρησιμοποιεί σχόλια τεκμηρίωσης Ευρετήριο _CONT_java.indd xvi

15 Εισαγωγή Java είναι η κυρίαρχη γλώσσα του Internet. Επιπλέον, είναι η παγκόσμια γλώσσα των Η Web προγραμματιστών. Για να γίνετε σήμερα επαγγελματίες προγραμματιστές Web πρέπει να διαθέτετε επάρκεια στη Java. Επομένως, αν ο προγραμματισμός του Internet είναι το μέλλον, έχετε επιλέξει την κατάλληλη γλώσσα. Η Java παίζει επίσης σημαντικό ρόλο στην επανάσταση των έξυπνων τηλεφώνων, των smartphone, επειδή χρησιμοποιείται στον προγραμματισμό των συστημάτων Android. Για να το θέσουμε απλά: Ο προγραμματισμός με τη Java είναι κομμάτι των θεμελίων του σύγχρονου κόσμου της πληροφορικής. Ο σκοπός αυτού του βιβλίου είναι να σας διδάξει τα βασικά στοιχεία του προγραμματισμού με τη Java. Εφαρμόζει μία βήμα προς βήμα προσέγγιση, η οποία συνοδεύεται από αναρίθμητα παραδείγματα, τεστ γνώσεων και εργασίες. εν προϋποθέτει οποιαδήποτε εμπειρία στον προγραμματισμό. Το βιβλίο ξεκινά με τα βασικά στοιχεία, όπως πως να μεταγλωττίζετε και εκτελείτε ένα πρόγραμμα Java. Στη συνέχεια μελετά κάθε λέξη-κλειδί, χαρακτηριστικό και δομή που διαμορφώνουν τη δομή της γλώσσας Java. Καλύπτει επίσης μερικά απ' τα πιο προχωρημένα χαρακτηριστικά της γλώσσας, όπως είναι ο πολυνηματικός προγραμματισμός και η έννοια των generics. Το βιβλίο ολοκληρώνεται με μια εισαγωγή στο Swing. Όταν θα τελειώσετε αυτό το βιβλίο, θα έχετε αποκτήσει μία στέρεα γνώση του προγραμματισμού με τη Java. Είναι σημαντικό να δηλώσουμε τώρα στην αρχή ότι αυτό το βιβλίο είναι απλά μια αφετηρία. Η Java δεν είναι μόνο τα στοιχεία που την καθορίζουν ως γλώσσα. Η Java επίσης περιλαμβάνει εκτεταμένες βιβλιοθήκες και εργαλεία που βοηθούν στην ανάπτυξη προγραμμάτων. Για να γίνεται κορυφαίος προγραμματιστής της Java πρέπει να κατέχετε όλους αυτούς τους τομείς. Μετά την ολοκλήρωση του βιβλίου, θα έχετε αποκτήσεις τις γνώσεις που είναι απαραίτητες, προκειμένου να επεκταθείτε στις υπόλοιπες πτυχές της Java. Η εξέλιξη της Java Μόνο μερικές γλώσσες έχουν ανασχηματίσει τα θεμέλια του προγραμματισμού. Σ αυτήν την κατηγορία μία γλώσσα ξεχωρίζει, επειδή ο αντίκτυπός της ήταν ταχύς και ευρύς. Αυτή η γλώσσα είναι βεβαίως η Java. εν είναι υπερβολή να πούμε ότι η αρχική έκδοση της Java 1.0 το 1995 από τη Sun Microsystems Inc. έφερε μια επανάσταση στον προγραμματισμό. Αυτή η επανάσταση μετέτρεψε ριζικά το Web σ' ένα εξαιρετικά διαδραστικό περιβάλλον. Στην πορεία, η Java έθεσε νέα πρότυπα στο σχεδιασμό των γλωσσών προγραμματισμού. 00_CONT_java.indd xvii

16 xviii ΠΕΡΙΕΧΟΜΕΝΑ Με τα χρόνια, η Java συνέχιζε να μεγαλώνει, να εξελίσσεται και να επαναπροσδιορίζεται. Αντίθετα από πολλές άλλες γλώσσες που καθυστερούν να ενσωματώσουν νέα στοιχεία, η Java βρίσκεται συνεχώς στο προσκήνιο του σχεδιασμού των γλωσσών προγραμματισμού. Ένας λόγος είναι η κουλτούρα της καινοτομίας και της αλλαγής που περιβάλλει τη Java. Ως αποτέλεσμα, η Java έχει δεχθεί πάμπολλες αναβαθμίσεις κάποιες φορές με μικρές αλλαγές και κάποιες άλλες με περισσότερες. Η πρώτη σημαντική ενημέρωση της Java ήταν η έκδοση 1.1. Οι ιδιότητες που προστέθηκαν στη Java 1.1 ήταν πιο ουσιαστικές από την αύξηση στον ελάσσονα αριθμό έκδοσης. Για παράδειγμα, η Java 1.1 ενσωμάτωνε πολλά νέα στοιχεία βιβλιοθηκών, επαναπροσδιόρισε τον τρόπο χειρισμού των συμβάντων και αναδιαμόρφωσε πολλά στοιχεία της αρχικής βιβλιοθήκης της έκδοσης 1.0. Η επόμενη σημαντική έκδοση ήταν η Java 2, με το 2 να σημαίνει δεύτερη γενιά. Η δημιουργία της Java 2 ήταν ένα σημαντικό γεγονός που σηματοδότησε την αφετηρία της σύγχρονης εποχής της γλώσσας. Η πρώτη έκδοση της Java 2 έφερε τον αριθμό έκδοσης 1.2. Μπορεί να σας φαίνεται περίεργο το γεγονός ότι η πρώτη έκδοση της Java 2 χρησιμοποίησε τον κωδικό αριθμό 1.2. Ο λόγος είναι ότι αρχικά αναφερόταν στον εσωτερικό αριθμό έκδοσης των βιβλιοθηκών της Java, αλλά αργότερα γενικεύτηκε και αναφερόταν σε ολόκληρη την έκδοση. Με τη Java 2, η Sun άλλαξε το όνομα του προϊόντος της σε J2SE (Java 2 Platform Standard Edition) και οι αριθμοί εκδόσεων ξεκίνησαν να εφαρμόζονται σ αυτό το προϊόν. Η επόμενη αναβάθμιση της Java ήταν η J2SE 1.3. Αυτή η έκδοση της Java ήταν η πρώτη σημαντική αναβάθμιση της αρχικής έκδοσης Java 2. Κυρίως κυκλοφόρησε, ώστε να προσθέσει λειτουργίες και να δέσει το περιβάλλον ανάπτυξης. Η έκδοση της J2SE 1.4 εμπλούτισε περαιτέρω τη Java. Αυτή η έκδοση περιείχε αρκετά σημαντικά νέα στοιχεία, όπως τις αλυσιδωτές εξαιρέσεις, είσοδο/έξοδο βασισμένη σε κανάλια και τη λέξη-κλειδί assert. Η έκδοση J2SE 5 έφερε τη δεύτερη επανάσταση για τη Java. Αντίθετα απ' τις περισσότερες από τις προηγούμενες αναβαθμίσεις, οι οποίες πρόσφεραν σημαντικές, αλλά κυρίως βελτιωτικές κινήσεις, η J2SE 5 επέκτεινε θεμελιωδώς το εύρος, το δύναμη και την εμβέλεια της γλώσσας. Για να σας δώσουμε μια ιδέα για το μέγεθος των αλλαγών που έφερε η J2SE 5, δείτε παρακάτω έναν κατάλογο των σημαντικότερων νέων χαρακτηριστικών που περιγράφουμε σ αυτό το βιβλίο: Γενικές μορφές (generics). Αυτόματη προσθήκη και αφαίρεση από πλαίσιο (πλαισίωση/αποπλαισίωση). Απαριθμήσεις. Ο βελτιωμένος βρόχος for τύπου for-each. Ορίσματα μεταβλητού μήκους (vararg). Στατική εισαγωγή. Σχόλια. εν πρόκειται για μια λίστα μικρών διορθώσεων ή βελτιωτικών κινήσεων. Κάθε στοιχείο της λίστας εκπροσωπεί μια σημαντική προσθήκη στη Java. Κάποια στοιχεία, όπως οι γενικές μορφές, ο εμπλουτισμένος βρόγχος for και τα vararg, εισήγαγαν νέα στοιχεία σύνταξης. Άλλα, όπως η αυτόματη πλαισίωση και αποπλαισίωση, άλλαξαν τη σημασιολογία της γλώσσας. Τα σχόλια πρόσθεσαν μια εντελώς νέα διάσταση στον προγραμματισμό. Η σημασία αυτών των στοιχείων αντανακλάται στη χρήση του αριθμού "5". Η επόμενη έκδοση της Java θα ήταν φυσιολογικά η 1.5. Ωστόσο, τα νέα χαρακτηριστικά ήταν τόσο 00_CONT_java.indd xviii

17 ΠΕΡΙΕΧΟΜΕΝΑ xix σημαντικά που μία απλή μετάβαση από την 1.4 στην 1.5 δεν μπορούσε να εκφράσει το μέγεθος των αλλαγών. Αντίθετα, η Sun επέλεξε να αυξήσει τον αριθμό έκδοσης σε 5, ώστε να δώσει έμφαση σ' ένα σημαντικό γεγονός. Έτσι, το προϊόν ονομάστηκε J2SE 5 και το πακέτο ονομάστηκε JDK 5. Ωστόσο, προκειμένου να διατηρηθεί μια σταθερότητα, η Sun αποφάσισε να χρησιμοποιήσει τον κωδικό 1.5 ως τον δικό της εσωτερικό αριθμό έκδοσης, ο οποίος επίσης αναφέρεται σαν αριθμός έκδοσης προγραμματιστή. Το 5 στο J2SE 5 ονομάζεται αριθμός έκδοσης προϊόντος. Η επόμενη έκδοση της Java ονομάστηκε Java SE 6 και η Sun για ακόμα μία φορά αποφάσισε να αλλάξει το όνομα της πλατφόρμας της Java. Παρατηρήστε αρχικά ότι το 2 εξαφανίστηκε. Έτσι, η πλατφόρμα τώρα ονομάζεται Java SE και το επίσημο όνομα του προϊόντος ήταν Java Platform, Standard Edition 6, ενώ το πακέτο προγραμματιστή της Java ονομάστηκε JDK 6. Όπως με τη J2SE 5, το 6 στο όνομα Java SE 6 είναι ο αριθμός έκδοσης προϊόντος. Ο εσωτερικός αριθμός έκδοσης προγραμματιστή είναι 1.6. Η Java SE 6 βασίστηκε στην J2SE 5 και πρόσθεσε κάποιες βελτιώσεις. Η Java SE 6 δεν πρόσθεσε σημαντικά χαρακτηριστικά στη γλώσσα, αλλά ενίσχυσε τις βιβλιοθήκες του περιβάλλοντος προγραμματισμού (API), πρόσθεσε αρκετά νέα πακέτα και πρόσφερε βελτιώσεις στο κομμάτι της εκτέλεσης. ιήλθε επίσης από αρκετές ενημερώσεις κατά τη διάρκεια της μακράς (σε όρους της Java) ζωής της, με αρκετές αναβαθμίσεις να προστίθενται στην πορεία. Γενικά, η Java SE 6 εξυπηρέτησε στην παγίωση της προόδου που έγινε με την J2SE 5. Η νεότερη έκδοση της Java ονομάζεται Java SE 7, ενώ το πακέτο προγραμματιστή JDK 7. Ο εσωτερικός αριθμός έκδοσης είναι 1.7. Η Java SE 7 είναι η πρώτη σημαντική έκδοση της Java μετά την εξαγορά της Sun Microsystems από την Oracle (μία διαδικασία, που ξεκίνησε τον Απρίλιο του 2009 και ολοκληρώθηκε τον Ιανουάριο του 2010). Η Java SE 7 περιέχει πολλά νέα χαρακτηριστικά, συμπεριλαμβανομένων σημαντικών προσθηκών στη γλώσσα και τις βιβλιοθήκες του API. Οι αναβαθμίσεις στο σύστημα εκτέλεσης της Java που υποστηρίζουν γλώσσες εκτός Java επίσης συμπεριλαμβάνονται. Όσον αφορά σ αυτό το βιβλίο, τα πιο σημαντικά χαρακτηριστικά που προστέθηκαν στη Java SE 7 είναι εκείνα που αναπτύχθηκαν με το έργο που ονομάστηκε Project Coin. Ο σκοπός του Project Coin ήταν να προσδιορίσει κάποιες μικρές αλλαγές στη γλώσσα Java, που θα ενσωματώνονταν στο JDK 7. Αν και αυτά τα νέα χαρακτηριστικά αναφέρονται συνολικά σαν μικρά, τα αποτελέσματα αυτών των αλλαγών είναι αρκετά μεγάλα όσον αφορά στον κώδικα που επηρεάζουν. Για πολλούς προγραμματιστές μάλιστα, αυτές οι αλλαγές μάλλον είναι τα πιο σημαντικά νέα χαρακτηριστικά στη Java SE 7. είτε μία λίστα με τα νέα χαρακτηριστικά της γλώσσας που καλύπτουμε σ αυτό το βιβλίο: Ένα String μπορεί τώρα να ελέγχει μια πρόταση switch. υαδικά ακέραια literal. Χαρακτήρες υπογράμμισης σε αριθμητικά literal. Μία εκτεταμένη πρόταση try, η οποία ονομάζεται try-with-resources (try με πόρους) και η οποία υποστηρίζει αυτόματη διαχείριση πόρων. (Για παράδειγμα, μια ροή αρχείων μπορεί τώρα να κλείσει αυτόματα όταν δεν είναι πλέον απαραίτητη). Παρεμβολή τύπων (μέσω του τελεστή ρόμβου) κατά την κατασκευή ενός γενικού στιγμιότυπου. Ενισχυμένος χειρισμός εξαιρέσεων, στον οποίο δύο ή περισσότερες εξαιρέσεις μπορούν να αντιμετωπιστούν με μία μόνο εντολή catch (mulitcatch) και καλύτερος έλεγχος τύπων για εξαιρέσεις, οι οποίες εμφανίζονται ξανά. 00_CONT_java.indd xix

18 xx ΕΙΣΑΓΩΓΗ Όπως μπορείτε να δείτε, ακόμα κι αν τα χαρακτηριστικά του Project Coin θεωρούνταν μικρές αλλαγές στη γλώσσα, τα οφέλη τους θα είναι πολύ μεγαλύτερα απ όσο υπονοεί ο προσδιορισμός μικρές. Συγκεκριμένα, η πρόταση try-με-πόρους θα επηρεάσει βαθιά τον τρόπο που γράφεται σημαντική ποσότητα κώδικα. Η ύλη αυτού του βιβλίου έχει ενημερωθεί, ώστε να αντανακλά τις αλλαγές της Java SE 7, με πολλά νέα χαρακτηριστικά, ενημερώσεις και προσθήκες. Πώς οργανώνεται αυτό το βιβλίο Αυτό το βιβλίο αποτελεί ένα ορθολογικά οργανωμένο βοήθημα, στο οποίο κάθε χτίζεται πάνω στην προηγούμενη. Περιέχει 15 Κεφάλαια, με καθένα να αναλύει μια πτυχή της Java. Αυτό το βιβλίο είναι μοναδικό, επειδή περιλαμβάνει αρκετά ειδικά στοιχεία τα οποία ενισχύουν αυτά που μαθαίνετε. Βασικές γνώσεις και έννοιες Κάθε κεφάλαιο ξεκινά παρουσιάζοντας το σύνολο των γνώσεων που θα αποκτήσετε. Τεστ γνώσεων Κάθε κεφάλαιο ολοκληρώνεται με ένα τεστ γνώσεων, το οποίο σας δίνει τη δυνατότητα να ελέγξετε το επίπεδο των γνώσεών σας. Οι απαντήσεις παρατίθενται στο Παράρτημα A. Ρωτήστε τον ειδικό Σε όλο το βιβλίο θα βρείτε πλαίσια με τον τίτλο Ρωτήστε τον ειδικό, τα οποία περιέχουν πρόσθετες πληροφορίες ή ενδιαφέροντα σχόλια για ένα θέμα. Τα πλαίσια υλοποιούνται με μορφή ερωτήσεων-απαντήσεων. Στοιχεία «οκιμάστε το» Κάθε κεφάλαιο περιέχει ένα ή περισσότερα στοιχεία " οκιμάστε το", τα οποία είναι εργασίες που σας δείχνουν πώς να εφαρμόζετε τι έχετε μάθει. Σε πολλές περιπτώσεις, πρόκειται για πραγματικά παραδείγματα που μπορείτε να χρησιμοποιήσετε ως αφετηρία για τα δικά σας προγράμματα. εν απαιτείται εμπειρία στον προγραμματισμό Αυτό το βιβλίο δεν προϋποθέτει καμμία προηγούμενη εμπειρία στον προγραμματισμό. Έτσι, ακόμα κι αν δεν έχετε προγραμματίσει ποτέ στο παρελθόν, μπορείτε να χρησιμοποιήσετε αυτό το βιβλίο. Αν πάλι έχετε κάποια εμπειρία, μπορείτε να προχωρήσετε πιο γρήγορα. Να έχετε υπόψη σας όμως ότι η Java διαφέρει αρκετά από άλλες δημοφιλείς γλώσσες προγραμματισμού. Σε καμμία περίπτωση δεν θα πρέπει να βγάλετε βιαστικά συμπεράσματα. Ως εκ τούτου, ακόμα και για έναν έμπειρο προγραμματιστή, θα είναι χρήσιμη μια προσεκτική ανάγνωση. Απαιτούμενο λογισμικό Για να μεταγλωττίσετε και εκτελέσετε τα προγράμματα του βιβλίου, θα πρέπει να έχετε το πιο πρόσφατο πακέτο προγραμματιστή (Java Development Kit, JDK) από την Oracle, το οποίο τη δεδομένη στιγμή είναι το JDK 7. Θα βρείτε οδηγίες για το πώς θα το αποκτήσετε στο Κεφάλαιο 1. 00_CONT_java.indd xx

19 ΕΙΣΑΓΩΓΗ xxi Εάν χρησιμοποιείτε κάποια προηγούμενη έκδοση της Java, όπως την Java 5, θα μπορείτε να χρησιμοποιήσετε αυτό το βιβλίο, αλλά δεν θα μπορείτε να μεταγλωττίσετε και να εκτελέσετε τα προγράμματα που χρησιμοποιούν τα νεότερα στοιχεία της γλώσσας. Μην ξεχάσετε: Κώδικας στο Web Σας θυμίζουμε ότι ο πηγαίος κώδικας για όλα τα παραδείγματα και όλες τις εργασίες αυτού του βιβλίου διατίθεται δωρεάν στο Web, στη διεύθυνση Ευχαριστίες Ευχαριστούμε ιδιαίτερα τον Danny Coward, τον τεχνικό επιμελητή αυτής της έκδοσης του βιβλίου. Οι συμβουλές του, οι γνώσεις του και οι προτάσεις του συνέβαλαν στην επιτυχή ολοκλήρωση αυτού του βιβλίου. 00_CONT_java.indd xxi

20 xxii ΕΙΣΑΓΩΓΗ Περαιτέρω μελέτη Ο Οδηγός για τη Java 7 είναι η πύλη για τη σειρά βιβλίων προγραμματισμού του Herb Schildt. είτε μερικά ακόμα βιβλία που μπορεί να σας ενδιαφέρουν. Για να μάθετε περισσότερα για τον προγραμματισμό στη Java, συστήνουμε τα παρακάτω: Java: The Complete Reference Herb Schildt s Java Programming Cookbook The Art of Java Swing: A Beginner s Guide Εάν θέλετε να μάθετε τη C++, τα παρακάτω βιβλία θα σας φανούν ιδιαίτερα χρήσιμα: C++: The Complete Reference Herb Schildt s C++ Programming Cookbook C++ From the Ground Up STL Programming From the Ground Up The Art of C++ Εάν θέλετε να μάθετε τη C#, προτείνουμε τα παρακάτω βιβλία του Schildt: C#: The Complete Reference C#: A Beginner s Guide Εάν θέλετε να μάθετε περισσότερα για τη γλώσσα C, τότε θα σας ενδιαφέρουν οι παρακάτω τίτλοι: C: The Complete Reference Όταν χρειάζεστε σίγουρες απαντήσεις γρήγορα, στραφείτε στον Herbert Schildt, την αναγνωρισμένη αυθεντία στον προγραμματισμό. 00_CONT_java.indd xxii 9/1/2012 9:08:55 πμ

Οδηγός των Ελληνικών Microsoft WINDOWS 7

Οδηγός των Ελληνικών Microsoft WINDOWS 7 Οδηγός των Ελληνικών Microsoft WINDOWS 7 Chris Fehily Απόδοση: Αγαμέμνων Μήλιος Μηχανικός Λογισμικού Εκδόσεις: Μ. Γκιούρδας Ζωοδόχου Πηγής 70-74 - Τηλ.: 210 3630219 106 81 Αθήνα, 2010 www.mgiurdas.gr Τίτλος

Διαβάστε περισσότερα

Περιεχόμενα. Πρόλογος 15

Περιεχόμενα. Πρόλογος 15 Περιεχόμενα Πρόλογος 15 1 Δημιουργία προγραμμάτων Java 25 Ορισμός βασικής ορολογίας προγραμματισμού 26 Σύγκριση διαδικαστικού και αντικειμενοστρεφούς προγραμματισμού 29 Διαδικαστικός προγραμματισμός 29

Διαβάστε περισσότερα

Περιεχόμενα. Πρόλογος 15

Περιεχόμενα. Πρόλογος 15 Περιεχόμενα Πρόλογος 15 1 Δημιουργία προγραμμάτων Java 25 Εκμάθηση ορολογίας προγραμματισμού 26 Σύγκριση των εννοιών του διαδικαστικού και του αντικειμενοστραφούς 29 Διαδικαστικός προγραμματισμός 29 Αντικειμενοστραφής

Διαβάστε περισσότερα

Γενικά (για τις γραπτές εξετάσεις)

Γενικά (για τις γραπτές εξετάσεις) Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Διάλεξη #12 η : Επανάληψη Γαβαλάς Δαμιανός dgavalas@aegean.gr Γενικά (για τις γραπτές εξετάσεις) Δεν υπάρχει αυστηρά ορισμένη «ύλη εξετάσεων» (καθώς δεν έχετε

Διαβάστε περισσότερα

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

Αντικειμενοστρεφής Προγραμματισμός ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Αντικειμενοστρεφής Προγραμματισμός Ενότητα 1: Εισαγωγή Γρηγόρης Τσουμάκας, Επικ. Καθηγητής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Περιεχόμενα ΜΕΡΟΣ ΠΡΩΤΟ. Πρόλογος... 13

Περιεχόμενα ΜΕΡΟΣ ΠΡΩΤΟ. Πρόλογος... 13 Περιεχόμενα Πρόλογος... 13 ΜΕΡΟΣ ΠΡΩΤΟ Κεφ. 1 Περί προγραμματισμού και γλωσσών προγραμματισμού Προγράμματα και Λειτουργικά Συστήματα... 17 Γλώσσες προγραμματισμού και εργαλεία ανάπτυξης προγραμμάτων...

Διαβάστε περισσότερα

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) ADVANCED αντικειμενοστραφής προγραμματισμός ΕΚΔΟΣΗ 1.0. Σόλωνος 108,Τηλ Φαξ

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) ADVANCED αντικειμενοστραφής προγραμματισμός ΕΚΔΟΣΗ 1.0. Σόλωνος 108,Τηλ Φαξ ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) ADVANCED αντικειμενοστραφής προγραμματισμός ΕΚΔΟΣΗ 1.0 ΤΙ ΕΙΝΑΙ ΤΟ ADVANCED Οι Advanced θεματικές ενότητες είναι κατάλληλες για άτομα που επιθυμούν να συνεχίσουν σπουδές στο χώρο

Διαβάστε περισσότερα

Adobe FLASH Professional CC

Adobe FLASH Professional CC Adobe FLASH Professional CC ΒHΜΑ ΠΡΟΣ ΒHΜΑ Απόδοση: Αγαμέμνων Μήλιος Μηχανικός Λογισμικού Εκδόσεις: Μ. Γκιούρδας Ζωοδόχου Πηγής 70-74 - Τηλ.: 210 3630219 106 81 Αθήνα, 2014 www.mgiurdas.gr Τίτλος Πρωτοτύπου:

Διαβάστε περισσότερα

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

Αντικειµενοστρεφής Προγραµµατισµός 16 η διάλεξη Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 Προηγούµενη ιάλεξη

Διαβάστε περισσότερα

Dreamweaver. Adobe ΒHΜΑ ΠΡΟΣ ΒHΜΑ. Εκδόσεις: Μ. Γκιούρδας. Απόδοση: Αγαμέμνων Μήλιος Μηχανικός Λογισμικού

Dreamweaver. Adobe ΒHΜΑ ΠΡΟΣ ΒHΜΑ. Εκδόσεις: Μ. Γκιούρδας. Απόδοση: Αγαμέμνων Μήλιος Μηχανικός Λογισμικού Adobe Dreamweaver CC ΒHΜΑ ΠΡΟΣ ΒHΜΑ Απόδοση: Αγαμέμνων Μήλιος Μηχανικός Λογισμικού Εκδόσεις: Μ. Γκιούρδας Ζωοδόχου Πηγής 70-74 Τηλ.: 210 3630219 106 81 Αθήνα, 2014 www.mgiurdas.gr Τίτλος Πρωτοτύπου: Adobe

Διαβάστε περισσότερα

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

Αντικειμενοστρεφής Προγραμματισμός Αντικειμενοστρεφής Προγραμματισμός Διδάσκουσα: Αναπλ. Καθηγήτρια Ανδριάνα Πρέντζα aprentza@unipi.gr Εργαστηριακός Συνεργάτης: Δρ. Βασιλική Κούφη vassok@unipi.gr Εργαστήριο 2 Βασικοί Τύποι Μεταβλητών Java

Διαβάστε περισσότερα

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) ADVANCED αντικειμενοστραφής προγραμματισμός ΕΚΔΟΣΗ 1.0. Σόλωνος 108,Τηλ Φαξ

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) ADVANCED αντικειμενοστραφής προγραμματισμός ΕΚΔΟΣΗ 1.0. Σόλωνος 108,Τηλ Φαξ ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) ADVANCED αντικειμενοστραφής προγραμματισμός ΕΚΔΟΣΗ 1.0 ΤΙ ΕΙΝΑΙ ΤΟ ADVANCED Οι Advanced θεματικές ενότητες είναι είναι κατάλληλες για άτομα που επιθυμούν να συνεχίσουν σπουδές

Διαβάστε περισσότερα

Περιεχόμενα. Περιεχόμενα

Περιεχόμενα. Περιεχόμενα Περιεχόμενα xv Περιεχόμενα 1 Αρχές της Java... 1 1.1 Προκαταρκτικά: Κλάσεις, Τύποι και Αντικείμενα... 2 1.1.1 Βασικοί Τύποι... 5 1.1.2 Αντικείμενα... 7 1.1.3 Τύποι Enum... 14 1.2 Μέθοδοι... 15 1.3 Εκφράσεις...

Διαβάστε περισσότερα

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

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων 2 Βασικές Εντολές 2.1. Εντολές Οι στην Java ακολουθούν το πρότυπο της γλώσσας C. Έτσι, κάθε εντολή που γράφουμε στη Java θα πρέπει να τελειώνει με το ερωτηματικό (;). Όπως και η C έτσι και η Java επιτρέπει

Διαβάστε περισσότερα

C# 3.0. Οδηγός της. Εκδόσεις: Μ. Γκιούρδας. Herbert Schildt. Απόδοση: Γιάννης Β. Σαμαράς Ηλεκτρολόγος Μηχανολόγος Ε.Μ.Π. M.Sc.

C# 3.0. Οδηγός της. Εκδόσεις: Μ. Γκιούρδας. Herbert Schildt. Απόδοση: Γιάννης Β. Σαμαράς Ηλεκτρολόγος Μηχανολόγος Ε.Μ.Π. M.Sc. Οδηγός της C# 3.0 Herbert Schildt Απόδοση: Γιάννης Β. Σαμαράς Ηλεκτρολόγος Μηχανολόγος Ε.Μ.Π. M.Sc. Computer Science Εκδόσεις: Μ. Γκιούρδας Ζωοδόχου Πηγής 70-74 - Τηλ.: 210 3630219 106 81 Αθήνα, 2009 www.mgiurdas.gr

Διαβάστε περισσότερα

Adobe Dreamweaver CS3

Adobe Dreamweaver CS3 i Adobe Dreamweaver CS3 Βήμα προς Βήμα Απόδοση: Αγαμέμνων Μήλιος Μηχανικός Λογισμικού Εκδόσεις: Μ. Γκιούρδας Ζωοδόχου Πηγής 70-74 - Τηλ.: 210 3630219 106 81 Αθήνα, 2007 www.mgiurdas.gr Τίτλος Πρωτοτύπου:

Διαβάστε περισσότερα

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

Γλώσσες Προγραμματισμού Το έργο υλοποιείται στο πλαίσιο του υποέργου 2 με τίτλο «Ανάπτυξη έντυπου εκπαιδευτικού υλικού για τα νέα Προγράμματα Σπουδών» της Πράξης «Ελληνικό Ανοικτό Πανεπιστήμιο» η οποία έχει ενταχθεί στο Επιχειρησιακό

Διαβάστε περισσότερα

Περιεχόμενα. Πρόλογος... 21

Περιεχόμενα. Πρόλογος... 21 Περιεχόμενα Πρόλογος... 21 Κεφάλαιο 1: Εισαγωγή στον προγραμματισμό... 25 Εισαγωγή...27 Πώς να διαβάσετε αυτό το βιβλίο...27 Η δομή των κεφαλαίων...28 Γιατί να μάθω προγραμματισμό;...31 Γιατί να μάθω C;...31

Διαβάστε περισσότερα

Προγραμματίζετε. Μάθετε να. σε 24 Ώρες. Εκδόσεις: Μ. Γκιούρδας. 3 η ΕΚ ΟΣΗ. Greg Perry Dean Miller. Απόδοση: Γιάννης Β. Σαμαράς

Προγραμματίζετε. Μάθετε να. σε 24 Ώρες. Εκδόσεις: Μ. Γκιούρδας. 3 η ΕΚ ΟΣΗ. Greg Perry Dean Miller. Απόδοση: Γιάννης Β. Σαμαράς Μάθετε να Προγραμματίζετε σε 24 Ώρες 3 η ΕΚ ΟΣΗ Greg Perry Dean Miller Απόδοση: Γιάννης Β. Σαμαράς Ηλεκτρολόγος Μηχανολόγος Ε.Μ.Π. M.Sc. Computer Science Εκδόσεις: Μ. Γκιούρδας Ζωοδόχου Πηγής 70-74 Τηλ.:

Διαβάστε περισσότερα

Photoshop CC. Adobe ΒΗΜΑ ΠΡΟΣ ΒΗΜΑ. Εκδόσεις: Μ. Γκιούρδας. Απόδοση: Γιάννης Β. Σαμαράς Ηλεκτρολόγος Μηχανολόγος Ε.Μ.Π. M.Sc.

Photoshop CC. Adobe ΒΗΜΑ ΠΡΟΣ ΒΗΜΑ. Εκδόσεις: Μ. Γκιούρδας. Απόδοση: Γιάννης Β. Σαμαράς Ηλεκτρολόγος Μηχανολόγος Ε.Μ.Π. M.Sc. Adobe Photoshop CC ΒΗΜΑ ΠΡΟΣ ΒΗΜΑ Απόδοση: Γιάννης Β. Σαμαράς Ηλεκτρολόγος Μηχανολόγος Ε.Μ.Π. M.Sc. Computer Science Εκδόσεις: Μ. Γκιούρδας Ζωοδόχου Πηγής 70-74 - Τηλ.: 210 3630219 106 81 Αθήνα, 2014 www.mgiurdas.gr

Διαβάστε περισσότερα

ActionScript 3.0 για το Adobe Flash. CS5 Professional ΒHΜΑ ΠΡΟΣ ΒHΜΑ. Εκδόσεις: Μ. Γκιούρδας. Απόδοση: Χρυσούλα Απ. Κουτρούμπα Ηλεκτρ.

ActionScript 3.0 για το Adobe Flash. CS5 Professional ΒHΜΑ ΠΡΟΣ ΒHΜΑ. Εκδόσεις: Μ. Γκιούρδας. Απόδοση: Χρυσούλα Απ. Κουτρούμπα Ηλεκτρ. ActionScript 3.0 για το Adobe Flash CS5 Professional ΒHΜΑ ΠΡΟΣ ΒHΜΑ Απόδοση: Χρυσούλα Απ. Κουτρούμπα Ηλεκτρ. Μηχανικός Εκδόσεις: Μ. Γκιούρδας Ζωοδόχου Πηγής 70-74 - Τηλ.: 210 3630219 106 81 Αθήνα, 2011

Διαβάστε περισσότερα

Περιεχόμενα. Προλεγόμενα... ix Κεφάλαιο 1 Εισαγωγή Κεφάλαιο 2 Δεδομένα και εκφράσεις Κεφάλαιο 3 Λογικές συνθήκες και δομές ελέγχου...

Περιεχόμενα. Προλεγόμενα... ix Κεφάλαιο 1 Εισαγωγή Κεφάλαιο 2 Δεδομένα και εκφράσεις Κεφάλαιο 3 Λογικές συνθήκες και δομές ελέγχου... Προλεγόμενα... ix Κεφάλαιο 1 Εισαγωγή... 1 1.1 Εισαγωγικά στοιχεία για τους υπολογιστές 2 1.2 Αλγόριθμοι, προγράμματα, προγραμματισμός 16 1.3 Η Python 25 1.4 Ο διερμηνευτής της Python 28 1.5 Το περιβάλλον

Διαβάστε περισσότερα

Adobe Premiere Pro CS6

Adobe Premiere Pro CS6 Adobe Premiere Pro CS6 ΒHΜΑ ΠΡΟΣ ΒHΜΑ Απόδοση: Αγαμέμνων Μήλιος Μηχανικός Λογισμικού Εκδόσεις: Μ. Γκιούρδας Ζωοδόχου Πηγής 70-74 - Τηλ.: 210 3630219 106 81 Αθήνα, 2013 www.mgiurdas.gr Τίτλος Πρωτοτύπου:

Διαβάστε περισσότερα

Java Μέρος Ι Αντικειμενοστρεφής Προγραμματισμός - 7

Java Μέρος Ι Αντικειμενοστρεφής Προγραμματισμός - 7 Περιεχόμενα 1 Εισαγωγικές Έννοιες...12 1.1 Το Αντικείμενο στην καθημερινότητα...12 1.2 Το Αντικείμενο στον Προγραμματισμό...12 1.3 Επικοινωνία αντικειμένων...13 1.4 Κλάση (class) αντικειμένων...14 1.4.1

Διαβάστε περισσότερα

Java 7. Μάθετε την. σε 24 Ώρες. Εκδόσεις: Μ. Γκιούρδας. 6 η ΕΚ ΟΣΗ. Απόδοση: Αγαμέμνων Μήλιος Μηχανικός Λογισμικού

Java 7. Μάθετε την. σε 24 Ώρες. Εκδόσεις: Μ. Γκιούρδας. 6 η ΕΚ ΟΣΗ. Απόδοση: Αγαμέμνων Μήλιος Μηχανικός Λογισμικού Μάθετε την Java 7 σε 24 Ώρες 6 η ΕΚ ΟΣΗ Απόδοση: Αγαμέμνων Μήλιος Μηχανικός Λογισμικού Εκδόσεις: Μ. Γκιούρδας Ζωοδόχου Πηγής 70-74 - Τηλ.: 210 3630219 106 81 Αθήνα, 2012 www.mgiurdas.gr _CONT_java7.indd

Διαβάστε περισσότερα

HTML5, CSS και JavaScript

HTML5, CSS και JavaScript Μάθετε HTML5, CSS και JavaScript Όλα σε Ένα 2 Η ΕΚ ΟΣΗ Julie C. Meloni Απόδοση: Γιάννης Β. Σαμαράς Ηλεκτρολόγος Μηχανολόγος Ε.Μ.Π. M.Sc. Computer Science Εκδόσεις: Μ. Γκιούρδας Ζωοδόχου Πηγής 70-74 - Τηλ.:

Διαβάστε περισσότερα

Περιεχόμενα. Πρόλογος... 17

Περιεχόμενα. Πρόλογος... 17 Περιεχόμενα Πρόλογος... 17 Κεφάλαιο 1: Εισαγωγή... 19 Πώς να διαβάσετε αυτό το βιβλίο... 20 Η γλώσσα C Ιστορική αναδρομή... 22 Τα χαρακτηριστικά της C... 23 C Μια δομημένη γλώσσα... 23 C Μια γλώσσα για

Διαβάστε περισσότερα

JOOMLA! Οπτικός Οδηγός τoυ Ελληνικού. Εκδόσεις: Μ. Γκιούρδας MARNI DERR TANYA SYMES. εύτερη έκδοση. Απόδοση: Αγαμέμνων Μήλιος Μηχανικός Λογισμικού

JOOMLA! Οπτικός Οδηγός τoυ Ελληνικού. Εκδόσεις: Μ. Γκιούρδας MARNI DERR TANYA SYMES. εύτερη έκδοση. Απόδοση: Αγαμέμνων Μήλιος Μηχανικός Λογισμικού Οπτικός Οδηγός τoυ Ελληνικού JOOMLA! εύτερη έκδοση MARNI DERR TANYA SYMES Απόδοση: Αγαμέμνων Μήλιος Μηχανικός Λογισμικού Εκδόσεις: Μ. Γκιούρδας Ζωοδόχου Πηγής 70-74 - Τηλ.: 210 3630219 106 81 Αθήνα, 2012

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 2: Τύποι δεδομένων και εμφάνιση στοιχείων...33

ΚΕΦΑΛΑΙΟ 2: Τύποι δεδομένων και εμφάνιση στοιχείων...33 ΠΕΡΙΕΧΟΜΕΝΑ Πρόλογος του συγγραφέα... 13 Πρόλογος του καθηγητή Τιμολέοντα Σελλή... 15 ΚΕΦΑΛΑΙΟ 1: Εργαλεία γλωσσών προγραμματισμού...17 1.1 Γλώσσες προγραμματισμού τρίτης γεννεάς... 18 τι είναι η γλώσσα

Διαβάστε περισσότερα

Acrobat 9. Adobe. Βήμα προς Βήμα. Εκδόσεις: Μ. Γκιούρδας. Απόδοση: Μαίρη Γκλα βά

Acrobat 9. Adobe. Βήμα προς Βήμα. Εκδόσεις: Μ. Γκιούρδας. Απόδοση: Μαίρη Γκλα βά Adobe Acrobat 9 Βήμα προς Βήμα Απόδοση: Μαίρη Γκλα βά Μαθηματικός, MSc Computer Sci ence Εκδόσεις: Μ. Γκιούρδας Ζωοδόχου Πηγής 70-74 - Τηλ.: 210 3630219 106 81 Αθήνα, 2009 www.mgiurdas.gr Τίτλος Πρωτοτύπου:

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Έλεγχος Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Σχεσιακοί Τελεστές και Ισότητας Ένα πρόγραμμα εκτός από αριθμητικές πράξεις

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Βασικά Στοιχεία της Java Βασικά Στοιχεία της Java Παύλος Εφραιμίδης Java Βασικά Στοιχεία της γλώσσας Java 1 Τύποι Δεδομένων Η Java έχει δύο κατηγορίες τύπων δεδομένων: πρωτογενείς (primitive) τύπους δεδομένων αναφορές Java Βασικά

Διαβάστε περισσότερα

Ορισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα

Ορισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα ΝΗΜΑΤΑ ΣΤΗ JAVA (1) Ορισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα πρόγραµµα. Αιτία Η δυνατότητα αποµόνωσης (ή αυτονόµησης) κάποιων

Διαβάστε περισσότερα

Photoshop CS6. Adobe ΒHΜΑ ΠΡΟΣ ΒHΜΑ. Εκδόσεις: Μ. Γκιούρδας. Απόδοση: Γιάννης Β. Σαμαράς Ηλεκτρολόγος Μηχανολόγος Ε.Μ.Π. M.Sc.

Photoshop CS6. Adobe ΒHΜΑ ΠΡΟΣ ΒHΜΑ. Εκδόσεις: Μ. Γκιούρδας. Απόδοση: Γιάννης Β. Σαμαράς Ηλεκτρολόγος Μηχανολόγος Ε.Μ.Π. M.Sc. Adobe Photoshop CS6 ΒHΜΑ ΠΡΟΣ ΒHΜΑ Απόδοση: Γιάννης Β. Σαμαράς Ηλεκτρολόγος Μηχανολόγος Ε.Μ.Π. M.Sc. Computer Science Εκδόσεις: Μ. Γκιούρδας Ζωοδόχου Πηγής 70-74 - Τηλ.: 210 3630219 106 81 Αθήνα, 2013

Διαβάστε περισσότερα

Περιεχόµενα. Πρόλογος...15

Περιεχόµενα. Πρόλογος...15 Περιεχόµενα Πρόλογος...15 Κεφάλαιο 1: Εισαγωγή...17 Τι είναι η Java... 17 Η ιστορία της Java... 21 Εκδόσεις της Java... 23 Ξεκίνηµα µε την Java... 24 Το περιβάλλον της γλώσσας... 28 ηµιουργία µιας εφαρµογής

Διαβάστε περισσότερα

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

10. Με πόσους και ποιους τρόπους μπορεί να αναπαρασταθεί ένα πρόβλημα; 11. Περιγράψτε τα τρία στάδια αντιμετώπισης ενός προβλήματος. 1. Δώστε τον ορισμό του προβλήματος. 2. Σι εννοούμε με τον όρο επίλυση ενός προβλήματος; 3. Σο πρόβλημα του 2000. 4. Σι εννοούμε με τον όρο κατανόηση προβλήματος; 5. Σι ονομάζουμε χώρο προβλήματος; 6.

Διαβάστε περισσότερα

ΠΕΡΙΕΧΟΜΕΝΑ ΜΕΡΟΣ Α : ΘΕΜΑΤΑ ΒΑΣΗΣ 1. ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ...11 2. ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ...30

ΠΕΡΙΕΧΟΜΕΝΑ ΜΕΡΟΣ Α : ΘΕΜΑΤΑ ΒΑΣΗΣ 1. ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ...11 2. ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ...30 ΠΕΡΙΕΧΟΜΕΝΑ ΜΕΡΟΣ Α : ΘΕΜΑΤΑ ΒΑΣΗΣ 1. ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ...11 1.1 Τι είναι Πληροφορική;...11 1.1.1 Τι είναι η Πληροφορική;...12 1.1.2 Τι είναι ο Υπολογιστής;...14 1.1.3 Τι είναι το Υλικό και το

Διαβάστε περισσότερα

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

Βασικά Στοιχεία της Java Βασικά Στοιχεία της Παύλος Εφραιμίδης 1 Βασικά Στοιχεία της γλώσσας Τύποι Δεδομένων Η έχει δύο κατηγορίες τύπων δεδομένων: πρωτογενείς (primitive) iti τύπους δεδομένων δδ αναφορές 2 Βασικά Στοιχεία της

Διαβάστε περισσότερα

Νήµαταστην Java. Συγχρονισµός νηµάτων Επικοινωνία νηµάτων Εκτελέσιµα αντικείµενα Νήµατα δαίµονες Οµάδες νηµάτων. Κατανεµηµένα Συστήµατα 11-1

Νήµαταστην Java. Συγχρονισµός νηµάτων Επικοινωνία νηµάτων Εκτελέσιµα αντικείµενα Νήµατα δαίµονες Οµάδες νηµάτων. Κατανεµηµένα Συστήµατα 11-1 Νήµαταστην Java Συγχρονισµός νηµάτων Επικοινωνία νηµάτων Εκτελέσιµα αντικείµενα Νήµατα δαίµονες Οµάδες νηµάτων Κατανεµηµένα Συστήµατα 11-1 Νήµαταστην Java γεννηθείσα notify notifyall έτοιµη start εκπνοή

Διαβάστε περισσότερα

Ανάπτυξη και Σχεδίαση Λογισμικού

Ανάπτυξη και Σχεδίαση Λογισμικού Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Βασικά Στοιχεία Το αλφάβητο της C Οι βασικοί τύποι της C Δηλώσεις μεταβλητών Είσοδος/Έξοδος Βασικές εντολές της C Αλφάβητο

Διαβάστε περισσότερα

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

Εισαγωγή στην γλώσσα προγραμματισμού C Εισαγωγή στην γλώσσα προγραμματισμού C Χαρακτηριστικά της C Ιδιαίτερα δημοφιλής Έχει χρησιμοποιηθεί για τον προγραμματισμό ευρέος φάσματος συστημάτων και εφαρμογών Γλώσσα μετρίου επιπέδου Φιλοσοφία: Ο

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008 ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008 Κατασκευαστές (Constructors) Ειδικός τύπος μεθόδων, οι οποίες: - είναι public και έχουν το ίδιο όνομα με αυτό της κλάσης - χρησιμοποιούνται για να αρχικοποιήσουν κάποιες

Διαβάστε περισσότερα

ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ

ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ ii ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ 1. Εισαγωγή - Βασικές έννοιες....1 1.1 Εσωτερική παράσταση δεδομένων....2 1.1.1 Παράσταση θέσης....3 1.1.2 Μετατροπές μεταξύ συστημάτων διαφορετικών βάσεων....5 1.1.3 Οι αριθμητικές

Διαβάστε περισσότερα

Εισαγωγή στη JAVA. Εισαγωγή στη Java. Η Java είναι δημιούργημα της SUN MICROSYSTEMS.

Εισαγωγή στη JAVA. Εισαγωγή στη Java. Η Java είναι δημιούργημα της SUN MICROSYSTEMS. Εισαγωγή στη JAVA Σύντομο Ιστορικό Η Java και το διαδίκτυο Το πρώτο απλό πρόγραμμα σε JAVA Μεταβλητές και σταθερές Παραστάσεις και εντολές Οι βασικοί τύποι δεδομένων στη Java Οι βασικοί Τελεστές στη Java

Διαβάστε περισσότερα

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

Αντικειμενοστραφής Προγραμματισμός Αντικειμενοστραφής Προγραμματισμός ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Ενότητα 3: Έλεγχος ροής και επαναλήψεις. Δρ. Χαράλαμπος Ζ. Πατρικάκης Τμήμα Ηλεκτρονικών Μηχανικών

Διαβάστε περισσότερα

Certified Java Programmer (CJP)

Certified Java Programmer (CJP) Certified Java Programmer (CJP) Εξεταστέα Ύλη (Syllabus) Πνευµατικά ικαιώµατα Το παρόν είναι πνευµατική ιδιοκτησία της ACTA Α.Ε. και προστατεύεται από την Ελληνική και Ευρωπαϊκή νοµοθεσία που αφορά τα

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός (ΤΛ1006)

Δομημένος Προγραμματισμός (ΤΛ1006) Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Εφαρμοσμένων Επιστημών Τμήμα Ηλεκτρονικών Μηχανικών Τομέας Αυτοματισμού και Πληροφορικής Δομημένος Προγραμματισμός (ΤΛ1006) Δρ. Μηχ. Νικόλαος Πετράκης, Καθηγητής

Διαβάστε περισσότερα

Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 7 η Διάλεξη: Σύντομη εισαγωγή στην Java

Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 7 η Διάλεξη: Σύντομη εισαγωγή στην Java Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 7 η Διάλεξη: Σύντομη εισαγωγή στην Java Δρ. Απόστολος Γκάμας Λέκτορας (407/80) gkamas@uop.gr Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου Διαφάνεια 1 Εισαγωγή

Διαβάστε περισσότερα

Πρόγραµµα 9.1 Πέρασµα δεδοµένων στην µνήµη

Πρόγραµµα 9.1 Πέρασµα δεδοµένων στην µνήµη 9.1 Γενικά Οι εφαρµογές που δηµιουργούνται από ένα προγραµµατιστή µπορούν ανά πασά στιγµή να καταρρεύσουν από κάποιο λάθος κατά την λειτουργία τους. Αυτές οι καταστάσεις συµβαίνουν από αµέλεια του προγραµµατιστή

Διαβάστε περισσότερα

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ Ενότητα 6: Λογισμικό Υπολογιστών Γλώσσες Προγραμματισμού Πασχαλίδης Δημοσθένης Τμήμα Διαχείρισης Εκκλησιαστικών Κειμηλίων Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε

Διαβάστε περισσότερα

2 Ορισμός Κλάσεων. Παράδειγμα: Μηχανή για Εισιτήρια. Δομή μιας Κλάσης. Ο Σκελετός της Κλάσης για τη Μηχανή. Ορισμός Πεδίων 4/3/2008

2 Ορισμός Κλάσεων. Παράδειγμα: Μηχανή για Εισιτήρια. Δομή μιας Κλάσης. Ο Σκελετός της Κλάσης για τη Μηχανή. Ορισμός Πεδίων 4/3/2008 Παράδειγμα: Μηχανή για Εισιτήρια 2 Ορισμός Κλάσεων Σύνταξη κλάσης: πεδία, κατασκευαστές, μέθοδοι Ένας αυτόματος εκδότης εισιτηρίων είναι μια μηχανή που δέχεται χρήματα και εκδίδει ένα εισιτήριο. Εκδίδει

Διαβάστε περισσότερα

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

FORTRAN και Αντικειμενοστραφής Προγραμματισμός FORTRAN και Αντικειμενοστραφής Προγραμματισμός Παραδόσεις Μαθήματος 2016 Δρ Γ Παπαλάμπρου Επίκουρος Καθηγητής ΕΜΠ georgepapalambrou@lmentuagr Εργαστήριο Ναυτικής Μηχανολογίας (Κτίριο Λ) Σχολή Ναυπηγών

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ (ΤΛ2007 )

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2014-15

Διαβάστε περισσότερα

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

Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον Κεφάλαιο 6ο Εισαγωγή στον Προγραµµατισµό Μέρος Πρώτο (6.1, 6.2 και 6.3) Α. Ερωτήσεις Σωστού Λάθους 1. Η γλώσσα µηχανής είναι µία γλώσσα υψηλού επιπέδου.

Διαβάστε περισσότερα

Κλάσεις και Αντικείµενα

Κλάσεις και Αντικείµενα Κλάσεις και Αντικείµενα Γρηγόρης Τσουµάκας Τµήµα Πληροφορικής, Αριστοτέλειο Πανεπιστήµιο Θεσσαλονίκης Κλάσεις και Αντικείµενα 2 Τα αντικείµενα σε µια αντικειµενοστρεφή γλώσσα προγραµµατισµού, µοντελοποιούν

Διαβάστε περισσότερα

E π A π π ª π. Â È ÛÌfi ÔÁÈÛÌÈÎÔ. TfiÌÔ ' ÏÒÛÛÂ ÚÔÁÚ ÌÌ ÙÈÛÌÔ II. KÏÂ ÓıË Ú ÌappleÔ Ï Ë. (AÓÙÈÎÂÈÌÂÓÔÛÙÚÂÊ ÚÔÁÚ ÌÌ ÙÈÛÌfi )

E π A π π ª π. Â È ÛÌfi ÔÁÈÛÌÈÎÔ. TfiÌÔ ' ÏÒÛÛÂ ÚÔÁÚ ÌÌ ÙÈÛÌÔ II. KÏÂ ÓıË Ú ÌappleÔ Ï Ë. (AÓÙÈÎÂÈÌÂÓÔÛÙÚÂÊ ÚÔÁÚ ÌÌ ÙÈÛÌfi ) E π A π π ª π Â È ÛÌfi ÔÁÈÛÌÈÎÔ TfiÌÔ ' KÏÂ ÓıË Ú ÌappleÔ Ï Ë ÏÒÛÛÂ ÚÔÁÚ ÌÌ ÙÈÛÌÔ II (AÓÙÈÎÂÈÌÂÓÔÛÙÚÂÊ ÚÔÁÚ ÌÌ ÙÈÛÌfi ) ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Σχολή Θετικών Επιστηµών και Τεχνολογίας Πρόγραµµα Σπουδών

Διαβάστε περισσότερα

PHP, MySQL. και Apache Όλα σε Ένα. Μάθετε. Εκδόσεις: Μ. Γκιούρδας. Julie C. Meloni. 5 η Έκδοση

PHP, MySQL. και Apache Όλα σε Ένα. Μάθετε. Εκδόσεις: Μ. Γκιούρδας. Julie C. Meloni. 5 η Έκδοση Μάθετε PHP, MySQL και Apache Όλα σε Ένα Julie C. Meloni 5 η Έκδοση Απόδοση: Γιάννης Β. Σαμαράς Ηλεκτρολόγος Μηχανολόγος Ε.Μ.Π. M.Sc. Computer Science Εκδόσεις: Μ. Γκιούρδας Ζωοδόχου Πηγής 70-74 - Τηλ.:

Διαβάστε περισσότερα

Ειδικά Θέματα Προγραμματισμού

Ειδικά Θέματα Προγραμματισμού Ειδικά Θέματα Προγραμματισμού Ενότητα 3: Τύποι Δεδομένων - Τελεστές Μιχάλας Άγγελος Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

Μέρος Ι: Εγκατάσταση και ιαμόρφωση των MySQL, Apache και PHP

Μέρος Ι: Εγκατάσταση και ιαμόρφωση των MySQL, Apache και PHP Εισαγωγή... 1 Σε Ποιους Απευθύνεται το Βιβλίο... 1 Η Οργάνωση του Βιβλίου... 2 Ο Πηγαίος Κώδικας του Βιβλίου... 3 Συμβάσεις που Χρησιμοποιούνται σε Αυτό το Βιβλίο... 3 Μέρος Ι: Εγκατάσταση και ιαμόρφωση

Διαβάστε περισσότερα

ΟΜΑΔΑ Ε ΓΕΩΡΓΙΟΥ ΦΩΤΕΙΝΗ ΗΛΙΟΥΔΗ ΑΦΡΟΔΙΤΗ ΜΕΤΑΛΛΙΔΟΥ ΧΡΥΣΗ ΝΙΖΑΜΗΣ ΑΛΕΞΑΝΔΡΟΣ ΤΖΗΚΑΛΑΓΙΑΣ ΑΝΔΡΕΑΣ ΤΡΙΓΚΑΣ ΑΓΓΕΛΟΣ

ΟΜΑΔΑ Ε ΓΕΩΡΓΙΟΥ ΦΩΤΕΙΝΗ ΗΛΙΟΥΔΗ ΑΦΡΟΔΙΤΗ ΜΕΤΑΛΛΙΔΟΥ ΧΡΥΣΗ ΝΙΖΑΜΗΣ ΑΛΕΞΑΝΔΡΟΣ ΤΖΗΚΑΛΑΓΙΑΣ ΑΝΔΡΕΑΣ ΤΡΙΓΚΑΣ ΑΓΓΕΛΟΣ ΟΜΑΔΑ Ε ΓΕΩΡΓΙΟΥ ΦΩΤΕΙΝΗ ΗΛΙΟΥΔΗ ΑΦΡΟΔΙΤΗ ΜΕΤΑΛΛΙΔΟΥ ΧΡΥΣΗ ΝΙΖΑΜΗΣ ΑΛΕΞΑΝΔΡΟΣ ΤΖΗΚΑΛΑΓΙΑΣ ΑΝΔΡΕΑΣ ΤΡΙΓΚΑΣ ΑΓΓΕΛΟΣ Η ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΣΤΟ ΛΥΚΕΙΟ Εισαγωγή Η μεγάλη ανάπτυξη και ο ρόλος που

Διαβάστε περισσότερα

3. Εκφράσεις και έλεγχος ροής

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

Διαβάστε περισσότερα

Αντικειμενοστρέφεια. Henri Matisse, Harmony in Red, Κωστής Σαγώνας Νίκος Παπασπύρου

Αντικειμενοστρέφεια. Henri Matisse, Harmony in Red, Κωστής Σαγώνας Νίκος Παπασπύρου Αντικειμενοστρέφεια Henri Matisse, Harmony in Red, 1908 Κωστής Σαγώνας Νίκος Παπασπύρου Ορισμοί αντικειμενοστρέφειας Ποιοι είναι οι ορισμοί των παρακάτω; Αντικειμενοστρεφής

Διαβάστε περισσότερα

Εισαγωγή σε αντικειμενοστραφή concepts. Και λίγη C#

Εισαγωγή σε αντικειμενοστραφή concepts. Και λίγη C# Εισαγωγή σε αντικειμενοστραφή concepts Και λίγη C# Κλάσεις Κλάση: τύπος δεδομένων που αποτελεί συλλογή πεδίων, ορισμών συναρτήσεων/μεθόδων και ορισμών άλλων τύπων δεδομένων. Αντίστοιχο σκεπτικό με struct

Διαβάστε περισσότερα

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

ΒΙΒΛΙΑ ΒΙΒΛΙΑ ΠΑΡΑΡΤΗΜΑ 05 ΠΛΗΡΟΦΟΡΙΚΗ Σύγκριση της Διδακτέας-εξεταστέας ύλης του πανελλαδικώς εξεταζόμενου μαθήματος «ΠΛΗΡΟΦΟΡΙΚΗ» (πρώην Περιβάλλον), της Γ τάξης ημερήσιου Γενικού Λυκείου, μεταξύ του σχολικού έτους

Διαβάστε περισσότερα

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ Μέρος 5ο ΝΙΚΟΛΑΟΣ ΣΤΕΡΓΙΟΥΛΑΣ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ 1 Η ΕΝΤΟΛΗ for Με την εντολή for δημιουργούμε βρόχους επανάληψης σε

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΝΑΠΤΥΞΗ ΚΑΙ ΣΧΕΔΙΑΣΗ ΛΟΓΙΣΜΙΚΟΥ Η γλώσσα προγραμματισμού C ΕΡΓΑΣΤΗΡΙΟ 2: Εκφράσεις, πίνακες και βρόχοι 14 Απριλίου 2016 Το σημερινό εργαστήριο

Διαβάστε περισσότερα

Διάλεξη 3: Προγραμματισμός σε JAVA I. Διδάσκων: Παναγιώτης Ανδρέου

Διάλεξη 3: Προγραμματισμός σε JAVA I. Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 3: Προγραμματισμός σε JAVA I Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: - Στοιχειώδης Προγραμματισμός - Προγραμματισμός με Συνθήκες - Προγραμματισμός με Βρόγχους

Διαβάστε περισσότερα

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

Στοιχειώδης προγραμματισμός σε C++ Στοιχειώδης προγραμματισμός σε C++ Σύντομο Ιστορικό. Το πρόγραμμα Hello World. Ο τελεστής εξόδου. Μεταβλητές και δηλώσεις τους. Αντικείμενα, μεταβλητές, σταθερές. Ο τελεστής εισόδου. Θεμελιώδεις τύποι.

Διαβάστε περισσότερα

Πίνακας Περιεχομένων. μέρος A 1 Εισαγωγή στην Τεχνολογία Λογισμικού

Πίνακας Περιεχομένων. μέρος A 1 Εισαγωγή στην Τεχνολογία Λογισμικού Πρόλογος...21 μέρος A Εισαγωγή στην Τεχνολογία Λογισμικού 1 Εισαγωγή στην Τεχνολογία Λογισμικού 1.1 Το λογισμικό...25 1.1.1 Ο ρόλος και η σημασία του λογισμικού...26 1.1.2 Οικονομική σημασία του λογισμικού...28

Διαβάστε περισσότερα

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

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον κεφ.6 Εισαγωγή στον Προγραμματισμό Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον κεφ.6 Εισαγωγή στον Προγραμματισμό Μάριος Αραποστάθης Καθηγητής πληροφορικής Βαρβάκειου Λύκειου http://users.sch.gr/mariosarapostathis 6.1 Η έννοια του

Διαβάστε περισσότερα

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

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΡΧΗ 1ης ΣΕΛΙ ΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΣΕΠΤΕΜΒΡΙΟΥ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ : 7 ΘΕΜΑ Α :

Διαβάστε περισσότερα

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

Πληροφορική 2. Γλώσσες Προγραμματισμού Πληροφορική 2 Γλώσσες Προγραμματισμού 1 2 Γλώσσες προγραμματσιμού Επιτρέπουν την κωδικοποίηση των αλγορίθμων Η εκτέλεση ενός προγράμματος θα πρέπει να δίνει τα ίδια αποτελέσματα με την νοητική εκτέλεση

Διαβάστε περισσότερα

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

ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Τρίτη Διάλεξη Εντολές Επιλογής και Επανάληψης Εντολές επιλογής Εντολή if Η πιο απλή μορφή της if συντάσσεται ως εξής: if ( συνθήκη ) Οι εντολές μέσα στα άγκιστρα αποτελούν

Διαβάστε περισσότερα

Περιεχόμενα. Λίγα λόγια για αυτή την έκδοση... 23

Περιεχόμενα. Λίγα λόγια για αυτή την έκδοση... 23 Περιεχόμενα Λίγα λόγια για αυτή την έκδοση...... 23 Κεφάλαιο 1 Εισαγωγή... 25 O στόχος του βιβλίου και σε ποιους απευθύνεται... 27 Πώς να διαβάσετε αυτό το βιβλίο... 27 Εκπαίδευση από απόσταση... 29 Ιστορική

Διαβάστε περισσότερα

Το πρόγραμμα HelloWorld.java. HelloWorld. Κλάσεις και Αντικείμενα (2) Ορισμός μιας Κλάσης (1) Παύλος Εφραιμίδης pefraimi <at> ee.duth.

Το πρόγραμμα HelloWorld.java. HelloWorld. Κλάσεις και Αντικείμενα (2) Ορισμός μιας Κλάσης (1) Παύλος Εφραιμίδης pefraimi <at> ee.duth. Το πρόγραμμα HelloWorld.java Σχόλια στη Java HelloWorld Παύλος Εφραιμίδης pefraimi ee.duth.gr Java Το πρόγραμμα HelloWorld 1 Java Το πρόγραμμα HelloWorld 2 Σχόλια στη Java ΗγλώσσαJava υποστηρίζει

Διαβάστε περισσότερα

Διαγράμματα Κλάσεων στη Σχεδίαση

Διαγράμματα Κλάσεων στη Σχεδίαση Διαγράμματα Κλάσεων στη Σχεδίαση περιεχόμενα παρουσίασης Αφηρημένες κλάσεις Ιδιότητες Λειτουργίες Απλοί τύποι Συσχετίσεις Εξάρτηση Διεπαφές αφηρημένες κλάσεις Οι αφηρημένες κλάσεις δεν μπορούν να δημιουργήσουν

Διαβάστε περισσότερα

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

Αντικειμενοστρεφής Προγραμματισμός ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Αντικειμενοστρεφής Προγραμματισμός Ενότητα 11: Χειρισμός Σφαλμάτων Γρηγόρης Τσουμάκας, Επικ. Καθηγητής Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

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

Σου προτείνω να τυπώσεις τις επόμενες τέσσερις σελίδες σε ένα φύλο διπλής όψης και να τις έχεις μαζί σου για εύκολη αναφορά. AeppAcademy.com facebook.com/aeppacademy Γεια. Σου προτείνω να τυπώσεις τις επόμενες τέσσερις σελίδες σε ένα φύλο διπλής όψης και να τις έχεις μαζί σου για εύκολη αναφορά. Καλή Ανάγνωση & Καλή Επιτυχία

Διαβάστε περισσότερα

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

Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα; Εισαγωγή Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα; 1. Σελίδα μαθήματος Εγγραφή Ο κάθε φοιτητής πρέπει να κάνει εγγραφή στη σελίδα του μαθήματος στην πλατφόρμα e-class

Διαβάστε περισσότερα

Οντοκεντρικός Προγραμματισμός

Οντοκεντρικός Προγραμματισμός Οντοκεντρικός Προγραμματισμός Ενότητα 2: Η ΓΛΩΣΣΑ JAVA Σύγκριση JAVA-C ΔΙΔΑΣΚΟΝΤΕΣ: Ιωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ & Πληροφορικής ΣΥΓΚΡΙΣΗ JAVA - C ΤΥΠΟΙ

Διαβάστε περισσότερα

Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript

Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript Β.1 Τύποι Δεδομένων Όλες οι γλώσσες προγραμματισμού (πρέπει να) υποστηρίζουν πέντε (5) πρωταρχικούς τύπους δεδομένων: char (character) int (integer)

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη των υπολογιστών

Εισαγωγή στην επιστήμη των υπολογιστών Εισαγωγή στην επιστήμη των υπολογιστών Λογισμικό Υπολογιστών Γλώσσες Προγραμματισμού 1 Εξέλιξη Οι γλώσσες προγραμματισμού είναι σύνολα από προκαθορισμένες λέξεις οι οποίες συνδυάζονται σε προγράμματα σύμφωνα

Διαβάστε περισσότερα

Προγράμματα με δομή Κληρονομικότητας

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

Διαβάστε περισσότερα

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

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 6 η Βρόχοι Επανάληψης Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή

Διαβάστε περισσότερα

Πλήρες Εγχειρίδιο. της C++ 8 η ΕΚΔΟΣΗ. Εκδόσεις: Μ. Γκιούρδας. Siddhartha Rao. Απόδοση: Μαίρη Γκλα βά

Πλήρες Εγχειρίδιο. της C++ 8 η ΕΚΔΟΣΗ. Εκδόσεις: Μ. Γκιούρδας. Siddhartha Rao. Απόδοση: Μαίρη Γκλα βά Πλήρες Εγχειρίδιο της C++ 8 η ΕΚΔΟΣΗ Siddhartha Rao Απόδοση: Μαίρη Γκλα βά Μαθηματικός, MSc Computer Sci ence Εκδόσεις: Μ. Γκιούρδας Ζωοδόχου Πηγής 70-74 - Τηλ.: 210 3630219 106 81 Αθήνα, 2017 www.mgiurdas.gr

Διαβάστε περισσότερα

Πρόλογος... xiii ΜΕΡΟΣ 1 1 Εισαγωγή στο Excel Βασικές λειτουργίες του Excel... 21

Πρόλογος... xiii ΜΕΡΟΣ 1 1 Εισαγωγή στο Excel Βασικές λειτουργίες του Excel... 21 Πρόλογος... xiii ΜΕΡΟΣ 1 1 Εισαγωγή στο Excel...3 1.1 Τι νέο υπάρχει στο Excel 2016...4 1.1.1 Νέες λειτουργίες του Excel 2016...4 1.2 Διάφοροι τρόποι εκκίνησης του Excel...6 1.3 Εξοικείωση με το περιβάλλον

Διαβάστε περισσότερα

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

3 Αλληλεπίδραση Αντικειμένων Αφαίρεση και Αρθρωσιμότητα 3 Αλληλεπίδραση Αντικειμένων Πώς συνεργάζονται τα αντικείμενα που δημιουργούμε Αφαίρεση (abstraction) είναι η δυνατότητα να αγνοούμε τις λεπτομέρειες και να εστιάζουμε την προσοχή

Διαβάστε περισσότερα

Περιεχόμενα ΜΕΡΟΣ 1. Πρόλογος... xiii. 1 Εισαγωγή στο Excel Βασικές λειτουργίες του Excel... 23

Περιεχόμενα ΜΕΡΟΣ 1. Πρόλογος... xiii. 1 Εισαγωγή στο Excel Βασικές λειτουργίες του Excel... 23 Περιεχόμενα Πρόλογος... xiii ΜΕΡΟΣ 1 1 Εισαγωγή στο Excel...3 1.1 Τι νέο υπάρχει στο Excel 2016...4 1.1.1 Νέες λειτουργίες του Excel 2016...4 1.2 Διάφοροι τρόποι εκκίνησης του Excel...6 1.3 Εξοικείωση

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΑ. 2.5.1 attributes 2.5.2 parameters

ΚΕΦΑΛΑΙΑ. 2.5.1 attributes 2.5.2 parameters Vellum Object Oriented Programming - Java Certificate Πιστοποιητικό ανάπτυξης εφαρµογών αντικειµενοστραφούς προγραµµατισµού µε την γλώσσα Java Vellum Global Educational Services Σελίδα 1 από 1 Vellum Object

Διαβάστε περισσότερα

ΜΑΘΗΜΑ: Εργαλεία Ανάπτυξης εφαρμογών internet.

ΜΑΘΗΜΑ: Εργαλεία Ανάπτυξης εφαρμογών internet. ΜΑΘΗΜΑ: Εργαλεία Ανάπτυξης εφαρμογών internet. ΩΡΕΣ ΔΙΔΑΣΚΑΛΙΑΣ: ΕΙΔΟΣ ΜΑΘΗΜΑΤΟΣ: Μικτό Γενικός σκοπός είναι να αποκτήσει ο καταρτιζόμενος τις αναγκαίες γνώσεις σχετικά με εργαλεία και τις τεχνικές για

Διαβάστε περισσότερα

Δομές ελέγχου ροής προγράμματος

Δομές ελέγχου ροής προγράμματος Δομές ελέγχου ροής προγράμματος Υπάρχουν δύο είδη δομών ελέγχου ροής (control flow): Οι δομές επιλογής και Οι δομές επανάληψης Δομές ελέγχου ροής προγράμματος Είδος δομής Δομές επιλογής Δομή ελέγχου ροής

Διαβάστε περισσότερα

Εργαστήριο 02: Προγραμματισμός με Γενικούς Τύπους (JAVA Generics) ΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι

Εργαστήριο 02: Προγραμματισμός με Γενικούς Τύπους (JAVA Generics) ΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι Εργαστήριο 02: Προγραμματισμός με Γενικούς Τύπους (JAVA Generics) ΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι 1 Generic Types Τα Generics έχουν προστεθεί στη JAVA από το 2004 ως μέρος του J2SE 5.0 Με τη χρήση

Διαβάστε περισσότερα

Ανάπτυξη και Σχεδίαση Λογισμικού

Ανάπτυξη και Σχεδίαση Λογισμικού Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Συναρτήσεις (Functions) Οι βασικές λειτουργικές ενότητες ενός προγράμματος C Καλούνται με ορίσματα που αντιστοιχούνται σε

Διαβάστε περισσότερα

Οι εντολές ελέγχου της ροής ενός προγράμματος.

Οι εντολές ελέγχου της ροής ενός προγράμματος. Κεφάλαιο ΙΙI: Οι εντολές ελέγχου της ροής ενός προγράμματος 31 Εντολές ελέγχου της ροής Στο παρόν κεφάλαιο ασχολούμαστε με την σύνταξη των εντολών της C οι οποίες εισάγουν λογική και ελέγχουν την ροή εκτέλεσης

Διαβάστε περισσότερα

for for for for( . */

for for for for( . */ Εισαγωγή Στον Προγραµµατισµό «C» Βρόχοι Επανάληψης Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Ο βρόχος for Η εντολή for χρησιµοποιείται

Διαβάστε περισσότερα

PHP, MySQL. Μάθετε. και Apache. Όλα σε Ένα. Εκδόσεις: Μ. Γκιούρδας. 4 η Έκδοση. Julie C. Meloni

PHP, MySQL. Μάθετε. και Apache. Όλα σε Ένα. Εκδόσεις: Μ. Γκιούρδας. 4 η Έκδοση. Julie C. Meloni Μάθετε PHP, MySQL και Apache Όλα σε Ένα Julie C. Meloni 4 η Έκδοση Απόδοση: Γιάννης Β. Σαμαράς Ηλεκτρολόγος Μηχανολόγος Ε.Μ.Π. M.Sc. Computer Science Εκδόσεις: Μ. Γκιούρδας Ζωοδόχου Πηγής 70-74 - Τηλ.:

Διαβάστε περισσότερα

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

Κεφ. 2 Θέματα Θεωρητικής Επιστήμης Υπολογιστών. Κοντογιάννης Βασίλειος ΠΕ19 Κεφ. 2 Θέματα Θεωρητικής Επιστήμης Υπολογιστών Κεφ. 2 Θεωρητική Επιστήμη Υπολογιστών 2.3.1.1 Έννοια προγράμματος Τι είναι πρόγραμμα και τι προγραμματισμός; Πρόγραμμα είναι το σύνολο εντολών που χρειάζεται

Διαβάστε περισσότερα

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

Αντικειµενοστραφής Προγραµµατισµός Κλάσεις Αντικειµενοστραφής Προγραµµατισµός Κλάσεις Αντικείµενα Ιεραρχία κλάσεων Κλάσεις. Ιδιότητες Συµπεριφορά Ιδιότητες (Μεταβλητές) Συµπεριφορά (Μέθοδοι) Κληρονοµικότητα Μέθοδοι επικάλυψης Η χρήση του

Διαβάστε περισσότερα