Java ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Paul Deitel. Harvey Deitel. Εκδόσεις: Μ. Γκιούρδας ΕΚΑΤΗ ΕΚ ΟΣΗ. Deitel & Associates, Inc. Deitel & Associates, Inc.

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

Download "Java ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Paul Deitel. Harvey Deitel. Εκδόσεις: Μ. Γκιούρδας ΕΚΑΤΗ ΕΚ ΟΣΗ. Deitel & Associates, Inc. Deitel & Associates, Inc."

Transcript

1 Java ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΕΚΑΤΗ ΕΚ ΟΣΗ Paul Deitel Deitel & Associates, Inc. Harvey Deitel Deitel & Associates, Inc. Απόδοση: Μαίρη Γκλαβά Μαθηματικός, MSc Computer Science Εκδόσεις: Μ. Γκιούρδας Ζωοδόχου Πηγής Τηλ.: Αθήνα, 2016

2 Τίτλος Πρωτοτύπου: Java How to Program - Tenth Edition ISBN ISBN Copyright 2015, 2012, 2009 Pearson Education, Inc. Upper Saddle River, New Jersey Αποκλειστικότητα για την Ελληνική Γλώσσα Εκδόσεις: Μόσχος Γκιούρδας Ζωοδόχου Πηγής Τηλ.: Αθήνα, ISBN: Επιμέλεια κειμένων: Μιχαήλ Μεταξάς Desktop Publishing: Κ. Καλαϊτζής, τηλ.: Εκτύπωση: ΜΗΤΡΟΠΟΛΙΣ Γραφικές Τέχνες Α.Ε., τηλ.: Βιβλιοδεσία: ΣΤΑΜΟΥ Γραφικές Τέχνες Εκδόσεις, τηλ.: Αναδημοσίευση του βιβλίου σε οποιαδήποτε μορ φή, ολόκληρου ή μέ ρους, καθώς και των περιεχομένων προ γραμ μά των, δεν επιτρέπεται χωρίς την έγγραφη εξου σιο δό τη ση του εκδότη.

3 Στον Brian Goetz, Στον Αρχιτέκτονα και Καθοδηγητή των Προδιαγραφών της Γλώσσας Java της Oracle για το Project Lambda της Java SE 8: Η καθοδήγησή σου μας βοήθησε να κάνουμε το βιβλίο καλύτερο. Σε ευχαριστούμε που επέμενες να το κάνουμε σωστά. Paul και Harvey Deitel

4 Περιεχόμενα Πριν τον Πρόλογο Πρόλογος Πριν Ξεκινήσετε xxiii xxv xxxix 1 Εισαγωγή στους Υπολογιστές, το Internet και την Java Εισαγωγή Υπολογιστές: Υλικό και Λογισμικό Ο Νόμος του Moore Οργάνωση των Υπολογιστών Ιεραρχία εδομένων Γλώσσες Μηχανής, Γλώσσες Assembly και Γλώσσες Υψηλού Επιπέδου Εισαγωγή στην Τεχνολογία Αντικειμένων Το Αυτοκίνητο ως Αντικείμενο Μέθοδοι και Κλάσεις ημιουργία Στιγμιότυπων Επαναχρησιμοποίηση Μηνύματα και Κλήσεις Μεθόδων Ιδιότητες και Μεταβλητές Στιγμιότυπου Ενθυλάκωση και Απόκρυψη Πληροφοριών Κληρονομικότητα ιασυνδέσεις Αντικειμενοστραφής Ανάλυση και Σχεδίαση H UML (Unified Modeling Language) Λειτουργικά Συστήματα Windows Ένα Ιδιοταγές Κλειστό Λειτουργικό Σύστημα Linux Ένα Ανοικτό Λειτουργικό Σύστημα Android Γλώσσες Προγραμματισμού Java Ένα Τυπικό Περιβάλλον Ανάπτυξης της Java οκιμή μιας Java Εφαρμογής Το Internet και το World Wide Web Το Internet: Ένα ίκτυο ικτύων Το World Wide Web: Κάνοντας Φιλικό το ιαδίκτυο Web Υπηρεσίες και Mashup Ajax Το ιαδίκτυο των Πραγμάτων Τεχνολογίες Λογισμικού Παραμένοντας Ενημερωμένοι με τις Τεχνολογίες Πληροφοριών 30

5 viii ΠΕΡΙΕΧΟΜΕΝΑ 2 Εισαγωγή στην Σύνταξη Java Εφαρμογών: Είσοδος/Έξοδος και Τελεστές Εισαγωγή Το Πρώτο σας Πρόγραμμα στην Java: Εκτύπωση μιας Γραμμής Κειμένου Τροποποίηση του Πρώτου σας Java Προγράμματος Εμφάνιση Κειμένου με την printf Μια Άλλη Εφαρμογή: Πρόσθεση Ακεραίων ηλώσεις import ήλωση της Κλάσης Addition ήλωση και ημιουργία ενός Scanner για Λήψη της Εισόδου του Χρήστη από το Πληκτρολόγιο ήλωση Μεταβλητών για Αποθήκευση Ακέραιων Προτροπή του Χρήστη για Είσοδο Λήψη ενός int ως Είσοδο από τον Χρήστη Προτροπή και Είσοδος ενός εύτερου int Χρήση Μεταβλητών σε έναν Υπολογισμό Εμφάνιση του Αποτελέσματος του Υπολογισμού Τεκμηρίωση του Java API Έννοιες Σχετικές με τη Μνήμη Πράξεις Λήψη Αποφάσεων: Τελεστές Ισότητας και Σχεσιακοί Τελεστές Συμπέρασμα 58 3 Εισαγωγή στις Κλάσεις και τα Αντικείμενα Εισαγωγή Μεταβλητές Στιγμιοτύπων, Μέθοδοι set και Μέθοδοι get Κλάση Account με μια Μεταβλητή Στιγμιοτύπου, μια Μέθοδο set και μια Μέθοδο get Κλάση AccountTest που ημιουργεί και Χρησιμοποιεί ένα Αντικείμενο της Κλάσης Account Μεταγλώττιση και Εκτέλεση μιας Εφαρμογής με Πολλές Κλάσεις UML ιάγραμμα Κλάσης για την Κλάση Account με μια Μεταβλητή Στιγμιοτύπου και Μεθόδους set και get Πρόσθετες Σημειώσεις για την Κλάση AccountTest Μηχανική Λογισμικού με private Μεταβλητές Στιγμιοτύπου και public μεθόδους set και get Πρωταρχικοί Τύποι ως προς τους Τύπους Αναφορών Κλάση Account: Αρχικοποίηση Αντικειμένων με Συναρτήσεις ημιουργίας ήλωση μιας Συνάρτησης ημιουργίας Account για Προσαρμοσμένη Αρχικοποίηση Αντικειμένων Κλάση AccountTest: Αρχικοποίηση Αντικειμένων Account Όταν ημιουργούνται Κλάση Account με Υπόλοιπο - Αριθμοί Κινητής Υποδιαστολής Κλάση Account με μια Μεταβλητή Στιγμιοτύπου Τύπου double Κλάση AccountTest για Χρήση της Κλάσης Account (Προαιρετικό) Μελέτη Περίπτωσης Γραφικού Περιβάλλοντος Χρήστη και Γραφικών: Χρήση Παραθύρων ιαλόγου Συμπέρασμα 93 4 Προτάσεις Ελέγχου: Μέρος 1, Τελεστές Εκχώρησης, ++ και Εισαγωγή Αλγόριθμοι Ψευδοκώδικας ομές Ελέγχου Πρόταση if μιας Επιλογής Πρόταση ιπλής Επιλογής if else 106

6 ΠΕΡΙΕΧΟΜΕΝΑ ix 4.7 Κλάση Student: Ένθετες Προτάσεις if else Πρόταση Επανάληψης while Σχηματισμός Αλγορίθμων: Επανάληψη Ελεγχόμενη από Μετρητή Σχηματισμός Αλγορίθμων: Επανάληψη Ελεγχόμενη από Τιμή Σήματος Σχηματισμός Αλγορίθμων: Ένθετες Προτάσεις Ελέγχου Σύνθετοι Τελεστές Εκχώρησης Τελεστές Αύξησης και Μείωσης Πρωταρχικοί Τύποι (Προαιρετικό) Μελέτη Περίπτωσης Γραφικού Περιβάλλοντος Χρήστη και Γραφικών: ημιουργία Απλών Σχεδίων Συμπέρασμα Προτάσεις Ελέγχου: Μέρος 2 Λογικοί Τελεστές Εισαγωγή Τα Βασικά της Ελεγχόμενης από Μετρητή Επανάληψης Πρόταση Επανάληψης for Παραδείγματα Χρήσης της Πρότασης for Πρόταση Επανάληψης do while Πρόταση Πολλαπλών Επιλογών switch Μελέτη Περίπτωσης Κλάσης AutoPolicy: Strings σε Προτάσεις switch Προτάσεις break και continue Λογικοί Τελεστές Σύνοψη ομημένου Προγραμματισμού (Προαιρετικό) Μελέτη Περίπτωσης Γραφικού Περιβάλλοντος Χρήστη και Γραφικών: Σχεδίαση Ορθογωνίων και Ελλείψεων Συμπέρασμα Μέθοδοι: Μια Βαθύτερη ιερεύνηση Εισαγωγή Λειτουργικές Μονάδες Προγραμμάτων της Java Μέθοδοι static, Πεδία static και η Κλάση Math ήλωση Μεθόδων με Πολλές Παραμέτρους Σημειώσεις για την ήλωση και τη Χρήση Μεθόδων Στοίβα Κλήσεων Μεθόδων και Πλαίσια Στοίβας Προβιβασμός και Αλλαγή Τύπου Ορισμάτων Πακέτα Java API Μελέτη Περίπτωσης: Ασφαλής Γεννήτρια Τυχαίων Αριθμών Μελέτη Περίπτωσης: Ένα Τυχερό Παιχνίδι Παρουσίαση των Τύπων enum Εμβέλεια των ηλώσεων Υπερφόρτωση Μεθόδων (Προαιρετικό) Μελέτη Περίπτωσης Γραφικού Περιβάλλοντος Χρήστη και Γραφικών: Χρώματα και Σχήματα με Γέμισμα Συμπέρασμα Πίνακες και Λίστες Πινάκων Εισαγωγή Πίνακες ήλωση και ημιουργία Πινάκων Παραδείγματα Χρήσης Πινάκων ημιουργία και Αρχικοποίηση ενός Πίνακα Χρήση ενός Πίνακα Αρχικοποίησης Υπολογισμός της Τιμής που Αποθηκεύεται σε έναν Πίνακα Άθροιση των Στοιχείων Ενός Πίνακα Χρήση Ραβδογραμμάτων για την Γραφική Εμφάνιση των εδομένων ενός Πίνακα 251

7 x ΠΕΡΙΕΧΟΜΕΝΑ Χρήση των Στοιχείων Ενός Πίνακα σαν Μετρητές Χρήση Πινάκων για Ανάλυση Αποτελεσμάτων ημοσκόπησης Χειρισμός Εξαιρέσεων: Επεξεργασία της Λανθασμένης Απόκρισης Η Πρόταση try Εκτέλεση του Τμήματος catch Μέθοδος tostring της Παραμέτρου Εξαίρεσης Μελέτη Περίπτωσης: Προσομοίωση Ανακατέματος και Μοιράσματος Τράπουλας Βελτιωμένη Πρόταση for Πέρασμα Πινάκων σε Μεθόδους Πέρασμα με Τιμή ως προς Πέρασμα με Αναφορά Μελέτη Περίπτωσης: Η Κλάση GradeBook με Χρήση ενός Πίνακα για Αποθήκευση Βαθμών Πολυδιάστατοι Πίνακες Μελέτη περίπτωσης: Η Κλάση GradeBook με Χρήση ενός ισδιάστατου Πίνακα Λίστες Ορισμάτων Μεταβλητού Μήκους Χρήση Ορισμάτων Γραμμής Εντολών Η Κλάση Arrays Εισαγωγή σε Συλλογές και στην Κλάση ArrayList (Προαιρετικό) Μελέτη Περίπτωσης Γραφικού Περιβάλλοντος Χρήστη και Γραφικών: Σχεδίαση Τόξων Συμπέρασμα Κλάσεις και Αντικείμενα: Μια Βαθύτερη ιερεύνηση Εισαγωγή Μελέτη Περίπτωσης Κλάσης Time Έλεγχος Πρόσβασης σε Μέλη Αναφορά στα Μέλη του Τρέχοντος Αντικειμένου με την Αναφορά this Μελέτη Περίπτωσης Κλάσης Time: Υπερφορτωμένες Συναρτήσεις ημιουργίας Προεπιλεγμένες Συναρτήσεις ημιουργίας και Συναρτήσεις ημιουργίας Χωρίς Ορίσματα Σημειώσεις για τις Μεθόδους Set και Get Σύνθεση Τύποι enum Συλλογή Απορριμμάτων Μέλη Κλάσης static static Import Μεταβλητές Στιγμιοτύπου final Πρόσβαση Επιπέδου Πακέτου Χρήση της BigDecimal για Ακριβείς Νομισματικούς Υπολογισμούς (Προαιρετικό) Μελέτη Περίπτωσης Γραφικού Περιβάλλοντος Χρήστη και Γραφικών: Χρήση Αντικειμένων με Γραφικά Συμπέρασμα Αντικειμενοστραφής Προγραμματισμός: Κληρονομικότητα Εισαγωγή Υπερκλάσεις και Υποκλάσεις Μέλη protected Σχέση Ανάμεσα σε Υπερκλάσεις και Υποκλάσεις ημιουργία και Χρήση μιας Κλάσης CommissionEmployee ημιουργία και Χρήση μιας Κλάσης BasePlusCommissionEmployee ημιουργία Ιεραρχίας Κληρονομικότητας CommissionEmployeeBasePlusCommissionEmployee Ιεραρχία Κληρονομικότητας CommissionEmployee-BasePlusCommission- Employee με Χρήση protected Μεταβλητών Στιγμιοτύπου 379

8 ΠΕΡΙΕΧΟΜΕΝΑ xi Ιεραρχία Κληρονομικότητας CommissionEmployee-BasePlusCommission- Employee με Χρήση private Μεταβλητών Στιγμιοτύπου Συναρτήσεις ημιουργίας σε Υποκλάσεις Η Κλάση Object (Προαιρετικό) Μελέτη Περίπτωσης Γραφικού Περιβάλλοντος Χρήστη και Γραφικών: Εμφάνιση Κειμένου και Εικόνων με Χρήση Ετικετών Συμπέρασμα Αντικειμενοστραφής Προγραμματισμός: Πολυμορφισμός και ιασυνδέσεις Εισαγωγή Παραδείγματα Πολυμορφισμού Παρουσίαση Πολυμορφικής Συμπεριφοράς Αφαιρετικές Κλάσεις και Μέθοδοι Μελέτη Περίπτωσης: Σύστημα Μισθοδοσίας με Χρήση Πολυμορφισμού Αφαιρετική Υπερκλάση Employee Ειδική Υποκλάση SalariedEmployee Ειδική Υποκλάση HourlyEmployee Ειδική Υποκλάση CommissionEmployee Έμμεση Ειδική Υποκλάση BasePlusCommissionEmployee Πολυμορφική Επεξεργασία, Τελεστής instanceof και Υποβιβασμός Τύπου Επιτρεπόμενες Εκχωρήσεις Μεταξύ Μεταβλητών Υπερκλάσεων και Υποκλάσεων Μέθοδοι και Κλάσεις final Μια Πληρέστερη Επεξήγηση της Κλήσης Μεθόδων από Συναρτήσεις ημιουργίας ημιουργία και Χρήση ιασυνδέσεων Ανάπτυξη μιας Ιεραρχίας Payable ιασύνδεση Payable Κλάση Invoice Τροποποίηση της Κλάσης Employee για Υλοποίηση της ιασύνδεσης Payable Τροποποίηση της Κλάσης SalariedEmployee για Χρήση στην Ιεραρχία Payable Χρήση της διασύνδεσης Payable για Πολυμορφική Επεξεργασία των Invoice και Employee Συνήθεις ιασυνδέσεις του Java API Βελτιώσεις της ιασύνδεσης στη Java SE Μέθοδοι ιασύνδεσης default Μέθοδοι ιασυνδέσεων static Λειτουργικές ιασυνδέσεις (Προαιρετικό) Μελέτη Περίπτωσης Γραφικού Περιβάλλοντος Χρήστη και Γραφικών: Σχεδίαση με Πολυμορφισμό Συμπέρασμα Χειρισμός Εξαιρέσεων: Μια Βαθύτερη Προσέγγιση Εισαγωγή Παράδειγμα: ιαίρεση διά του Μηδενός Χωρίς Χειρισμό Εξαιρέσεων Παράδειγμα: Χειρισμός Εξαιρέσεων ArithmeticException και InputMismatchException Πότε να Χρησιμοποιείτε Χειρισμό Εξαιρέσεων Ιεραρχία Εξαιρέσεων της Java Μπλοκ finally Ξετύλιγμα Στοίβας και Λήψη Πληροφοριών από ένα Αντικείμενο Εξαιρέσεων Αλυσιδωτές Εξαιρέσεις ήλωση Νέων Τύπων Εξαιρέσεων Προϋποθέσεις και Μετά-Υποθέσεις 465

9 xii ΠΕΡΙΕΧΟΜΕΝΑ ιαβεβαιώσεις try με Πόρους: Αυτόματη Αποδέσμευση Πόρων Συμπέρασμα Συστατικά Γραφικού Περιβάλλοντος Χρήστη: Μέρος Εισαγωγή Το Περιβάλλον του Nimbus Απλή Είσοδος / Έξοδος Βασισμένη σε GUI με το JOptionPane Επισκόπηση των Συστατικών Swing Εμφάνιση Κειμένου και Εικόνων σε Ένα Παράθυρο Πεδία Κειμένου και Εισαγωγή στον Χειρισμό Συμβάντων με Ένθετες Κλάσεις Συνήθεις Τύποι Συμβάντων GUI και ιασυνδέσεις Ακρόασης Συμβάντων Πώς Λειτουργεί ο Χειρισμός Συμβάντων JButton Κουμπιά που ιατηρούν την Κατάσταση JCheckBox JRadioButton JcomboBox και Χρήση μιας Ανώνυμης Εσωτερικής Κλάσης για τον Χειρισμό Συμβάντων JList Λίστες Πολλαπλών Επιλογών Χειρισμός Συμβάντων Ποντικιού Κλάσεις Προσαρμογής Υποκλάση JPanel για Σχεδίαση με το Ποντίκι Χειρισμός Συμβάντων Πληκτρολογίου Εισαγωγή στους ιαχειριστές ιατάξεων FlowLayout BorderLayout GridLayout Χρήση Πάνελ για ιαχείριση πιο Περίπλοκων ιατάξεων JTextArea Συμπέρασμα Γραφικά και Java 2D Εισαγωγή Πλαίσια Γραφικών και Αντικείμενα Γραφικών Έλεγχος Χρωμάτων Χειρισμός Γραμματοσειρών Σχεδίαση Γραμμών, Ορθογωνίων και Ελλείψεων Σχεδίαση Τόξων Σχεδίαση Πολυγώνων και Πολύγραμμων Java 2D API Συμπέρασμα Συμβολοσειρές, Χαρακτήρες και Κανονικές Εκφράσεις Εισαγωγή Τα Βασικά των Χαρακτήρων και των Συμβολοσειρών Η Κλάση String Συναρτήσεις ημιουργίας String String Μέθοδοι length, charat και getchars Σύγκριση Συμβολοσειρών Εντοπισμός Χαρακτήρων και Υποσυμβολοσειρών σε Συμβολοσειρές Εξαγωγή Υποσυμβολοσειρών από Συμβολοσειρές Συνένωση Συμβολοσειρών ιάφορες Μέθοδοι String 608

10 ΠΕΡΙΕΧΟΜΕΝΑ xiii String Μέθοδος valueof Κλάση StringBuilder Συναρτήσεις ημιουργίας StringBuilder StringBuilder Μέθοδοι length, capacity, setlength και ensurecapacity StringBuilder Μέθοδοι charat, setcharat, getchars και reverse Μέθοδοι StringBuilder append Μέθοδοι Εισαγωγής και ιαγραφής της StringBuilder Η Κλάση Character Μετατροπή Συμβολοσειρών σε ιακριτικά Κανονικές Εκφράσεις, Κλάση Pattern και Κλάση Matcher Συμπέρασμα Αρχεία, Ροές και Σειριακή Επεξεργασία Αντικειμένων Εισαγωγή Αρχεία και Ροές Χρήση Κλάσεων και ιασυνδέσεων ΝΙΟ για Λήψη Πληροφοριών Αρχείων και Καταλόγων Αρχεία Κειμένου Σειριακής Προσπέλασης ημιουργία Αρχείου Κειμένου Σειριακής Προσπέλασης Ανάγνωση εδομένων από Αρχείο Κειμένου Σειριακής Προσπέλασης Μελέτη Περίπτωσης: Πρόγραμμα Ελέγχου Πιστώσεων Ενημέρωση Αρχείων Σειριακής Προσπέλασης Αντικείμενο Σειριακής Επεξεργασίας ημιουργία ενός Αρχείου Σειριακής Προσπέλασης Χρησιμοποιώντας Σειριοποίηση Αντικειμένων Ανάγνωση και Αποσειριοποίηση εδομένων από Αρχείο Σειριακής Πρόσβασης Άνοιγμα Αρχείων με την JFileChooser (Προαιρετικό) Πρόσθετες Κλάσεις java.io ιασυνδέσεις και Κλάσεις για Είσοδο και Έξοδο Βασισμένη σε byte ιασυνδέσεις και Κλάσεις για Είσοδο και Έξοδο Βασισμένη σε Χαρακτήρες Συμπέρασμα Γενικές Συλλογές Εισαγωγή Επισκόπηση Συλλογών Κλάσεις Τύπου Wrapper Αυτόματη Συσκευασία και Αυτόματη Αποσυσκευασία ιασύνδεση Collection και Κλάση Collections Λίστες ArrayList και Iterator LinkedList Μέθοδοι Συλλογών Μέθοδος sort Μέθοδος shuffle Μέθοδοι reverse, fill, copy, max και min Μέθοδος binarysearch Μέθοδοι addall, frequency και disjoint Η Κλάση Stack του Πακέτου java.util Οι Κλάσεις PriorityQueue και η ιασύνδεση Queue Σύνολα Χάρτες Η Κλάση Properties Συγχρονισμένες Συλλογές Μη Τροποποιήσιμες Συλλογές Αφαιρετικές Υλοποιήσεις 722

11 xiv ΠΕΡΙΕΧΟΜΕΝΑ Συμπέρασμα Τα Lambdas και οι Ροές της Java SE Εισαγωγή Επισκόπηση Τεχνολογιών Λειτουργικού Προγραμματισμού Λειτουργικές ιασυνδέσεις Εκφράσεις Lambda Ροές εδομένων Λειτουργίες IntStream ημιουργία ενός IntStream και Εμφάνιση των Τιμών του με την Τερματική Λειτουργία foreach Τερματικές Λειτουργίες count, min, max, sum και average Τερματική Λειτουργία reduce Ενδιάμεσες Πράξεις: Φιλτράρισμα και Ταξινόμηση των Τιμών της IntStream Ενδιάμεση Πράξη: Απεικόνιση ημιουργώντας Ροές από int με τις IntStream Μεθόδους range και rangeclosed Χειρισμοί Stream<Integer> ημιουργία ενός Stream<Integer> Ταξινομώντας ένα Stream και Συλλέγοντας τα Αποτελέσματα Φιλτράροντας ένα Stream και Αποθηκεύοντας τα Αποτελέσματα για Μετέπειτα Χρήση Φιλτράρισμα και Ταξινόμηση ενός Stream και Συλλογή των Αποτελεσμάτων Ταξινομώντας τα Προηγουμένως Συλλεχθέντα Αποτελέσματα Χειρισμοί Stream<String> Απεικόνιση ενός String σε Κεφαλαία Χρησιμοποιώντας μια Αναφορά Μεθόδου Φιλτράρισμα String και Ταξινόμησή τους σε Αύξουσα Σειρά Ανεξάρτητη από Κεφαλαία-Πεζά Φιλτράρισμα String και Ταξινόμησή τους σε Φθίνουσα Σειρά Ανεξάρτητη από Κεφαλαία-Πεζά Χειρισμοί Stream<Employee> ημιουργία και Εμφάνιση ενός List<Employee> Φιλτράρισμα Eργαζομένων με Μισθούς σε ένα Καθορισμένο Εύρος Ταξινόμηση Εργαζομένων ως προς Πολλά Πεδία Απεικόνιση Εργαζομένων σε Μοναδικά String Επωνύμων Ομαδοποιώντας Εργαζομένους Κατά Τμήμα Μετρώντας τον Αριθμό των Εργαζομένων σε Κάθε Τμήμα Άθροισμα και Μέσος Όρος Μισθών των Εργαζομένων ημιουργία ενός Stream<String> από ένα Αρχείο ημιουργία Ροών με Τυχαίες Τιμές Lambda Χειριστές Συμβάντων Πρόσθετες Σημειώσεις για τις ιασυνδέσεις της Java SE Η Java SE 8 και οι Λειτουργικοί Προγραμματιστικοί Πόροι Συμπέρασμα Αναδρομή Εισαγωγή Έννοιες Αναδρομής Παράδειγμα Χρήσης Αναδρομής: Παραγοντικά Επανα-υλοποίηση της Κλάσης FactorialCalculator Χρησιμοποιώντας την Κλάση BigInteger Παράδειγμα Χρήσης Αναδρομής: Σειρά Fibonacci 783

12 ΠΕΡΙΕΧΟΜΕΝΑ xv 18.6 Αναδρομή και η Στοίβα Κλήσεων Μεθόδων Αναδρομή ως προς Επανάληψη Οι Πύργοι του Ανόι Fractal Το Fractal Καμπύλη του Koch (Προαιρετικό) Μελέτη Περίπτωσης: Το Fractal Lo Feather Αναδρομή με Οπισθοχώρηση Συμπέρασμα Αναζήτηση, Ταξινόμηση και το Μεγάλο Ο Εισαγωγή Γραμμική Αναζήτηση Σύνταξη του Μεγάλου Ο Αλγόριθμοι Ο(Ι) Αλγόριθμοι Ο(n) Αλγόριθμοι Ο(n 2 ) Μεγάλο Ο της Γραμμικής Αναζήτησης υαδική Αναζήτηση Υλοποίηση υαδικής Αναζήτησης Αποτελεσματικότητα υαδικής Αναζήτησης Αλγόριθμοι Ταξινόμησης Ταξινόμηση Επιλογής Υλοποίηση της Ταξινόμηση Επιλογής Αποτελεσματικότητα της Ταξινόμησης Επιλογής Ταξινόμηση Εισαγωγής Υλοποίηση της Ταξινόμηση Εισαγωγής Αποτελεσματικότητα της Ταξινόμησης Εισαγωγής Ταξινόμηση Συγχώνευσης Υλοποίηση της Ταξινόμησης Συγχώνευσης Αποτελεσματικότητα της Ταξινόμησης με Συγχώνευση Σύνοψη του Μεγάλου Ο για τους Αλγορίθμους Αναζήτησης και Ταξινόμησης Αυτού του Κεφαλαίου Συμπέρασμα Γενικές Κλάσεις και Μέθοδοι Εισαγωγή Κίνητρα για Χρήση Γενικών Μεθόδων Γενικές Μέθοδοι: Υλοποίηση και Μετάφραση κατά την Μεταγλώττιση Πρόσθετα Θέματα Μετάφρασης Κατά την Μεταγλώττιση: Μέθοδοι που Χρησιμοποιούν μια Παράμετρο Τύπου ως Τύπο Επιστροφής Υπερφόρτωση Γενικών Μεθόδων Γενικές Κλάσεις Ακατέργαστοι Τύποι Χαρακτήρες-Μπαλαντέρ σε Μεθόδους που έχονται Παραμέτρους Τύπων Συμπέρασμα Προσαρμοσμένες Γενικές ομές εδομένων Εισαγωγή Αυτοαναφερόμενες Κλάσεις υναμική έσμευση Μνήμης Συνδεδεμένες Λίστες Απλές Συνδεδεμένες Λίστες Υλοποίηση μιας Γενικής Κλάσης List 873

13 xvi ΠΕΡΙΕΧΟΜΕΝΑ Γενικές Κλάσεις ListNode και List Η Κλάση ListTest Η List Μέθοδος insertatfront Η List Μέθοδος insertatback Η List Μέθοδος removefromfront Η List Μέθοδος removefromback Η List Μέθοδος print ημιουργία των ικών σας Πακέτων Στοίβες Ουρές ένδρα Συμπέρασμα Συστατικά GUI: Μέρος Εισαγωγή JSlider Κατανόηση των Παραθύρων της Java Χρήση Μενού με Πλαίσια JPopupMenu Προσαρμόσιμη Εμφάνιση και Αίσθηση JDesktopPane και JInternalFrame JTabbedPane ιαχειριστής ιάταξης BoxLayout ιαχειριστής ιάταξης GridBagLayout Συμπέρασμα Ταυτόχρονη Εκτέλεση Εισαγωγή Καταστάσεις Νημάτων και Ο Κύκλος Ζωής Ενός Νήματος Καταστάσεις New και Runnable Κατάσταση Waiting Κατάσταση Timed Waiting Κατάσταση Blocked Κατάσταση Terminated Ο Τρόπος που Βλέπει το Λειτουργικό Σύστημα την Κατάσταση Runnable Προτεραιότητες Νημάτων και Χρονοπρογραμματισμός Νημάτων Επ' Αόριστον Αναβολή και οι Αδιέξοδες Καταστάσεις ημιουργία και Εκτέλεση Νημάτων με το Πλαίσιο Εργασίας Executor Συγχρονισμός Νημάτων Αμετάβλητα εδομένα Λειτουργία Παρακολούθησης Μη Συγχρονισμένη Κοινή Χρήση Μεταβλητών εδομένων Συγχρονισμένη Κοινή Χρήση Μεταβλητών εδομένων Κάνοντας τις Λειτουργίες Ατομικές Σχέση Παραγωγού / Καταναλωτή Χωρίς Συγχρονισμό Σχέση Παραγωγού / Καταναλωτή: ArrayBlockingQueue (Για Προχωρημένους) Σχέση Παραγωγού / Καταναλωτή με synchronized, wait, notify και notifyall (Για Προχωρημένους) Σχέση Παραγωγού / Καταναλωτή: Buffer με Όρια (Για Προχωρημένους) Σχέση Παραγωγού / Καταναλωτή: Οι ιασυνδέσεις Lock και Condition Συγχρονισμένες Συλλογές Πολυνηματισμός με GUI: SwingWorker Εκτέλεση Υπολογισμών σε ένα Νήμα Worker: Αριθμοί Fibonacci 1012

14 ΠΕΡΙΕΧΟΜΕΝΑ xvii Επεξεργασία Ενδιάμεσων Αποτελεσμάτων: Το Κόσκινο του Ερατοσθένους Χρονισμοί sort/parallelsort με το Java SE 8 API Date/Time Java SE 8: Σειριακές ως προς Παράλληλες Ροές (Για Προχωρημένους) ιασυνδέσεις Callable και Future (Για Προχωρημένους) Πλαίσιο Εργασίας Fork/Join Συμπέρασμα Προσπέλαση Βάσεων εδομένων με το JDBC Εισαγωγή Σχεσιακές Βάσεις εδομένων Η Βάση εδομένων books SQL Βασικό Ερώτημα SELECT Φράση WHERE Φράση ORDER BY Συγχώνευση εδομένων από Πολλούς Πίνακες: INNER JOIN Πρόταση INSERT Πρόταση UPDATE Πρόταση DELETE ιαμόρφωση μιας Java DB Βάσης εδομένων ημιουργία Βάσεων εδομένων του Κεφαλαίου στα Windows ημιουργία των Βάσεων εδομένων του Κεφαλαίου στο Mac OS X ημιουργία των Βάσεων εδομένων του Κεφαλαίου στο Linux Χειρισμός Βάσεων εδομένων με το JDBC Σύνδεση και Υποβολή Ερωτημάτων σε μία Βάση εδομένων Υποβολή Ερωτημάτων στην Βάση εδομένων books ιασύνδεση RowSet Προτάσεις PreparedStatement Αποθηκευμένες ιαδικασίες Επεξεργασία Συναλλαγών Συμπέρασμα Το Περιβάλλον του JavaFX Εισαγωγή Το JavaFX Scene Builder και το NetBeans IDE ομή του Παραθύρου των Εφαρμογών του JavaFX Εφαρμογή Welcome Εμφάνιση Κειμένου και μιας Εικόνας ημιουργώντας το Έργο της Εφαρμογής Παράθυρο Έργων του NetBeans Βλέποντας τα Περιεχόμενα του Έργου Προσθέτοντας μια Εικόνα στο Έργο Ανοίγοντας το JavaFX Scene Builder από το NetBeans Αλλαγή σε ένα VBox Layout Container ιαμορφώνοντας το Κοντέινερ ιάταξης VBox Προσθήκη και ιαμόρφωση ενός Label Προσθήκη και ιαμόρφωση ενός ImageView Εκτέλεση της Εφαρμογής Welcome Εφαρμογή Tip Calculator Εισαγωγή στο Χειρισμό Συμβάντων οκιμή της Εφαρμογής Tip Calculator Επισκόπηση των Τεχνολογιών ημιουργία του GUI της Εφαρμογής Κλάση TipCalculator Κλάση TipCalculatorController Λειτουργίες που Καλύπτονται στα Κεφάλαια για το JavaFX Συμπέρασμα 1134

15 xviii ΠΕΡΙΕΧΟΜΕΝΑ 26 JavaFX GUI: Μέρος Εισαγωγή Εγκατάσταση των JDK 8, NetBeans 8 και JavaFX Scene Builder ιάταξη Κόμβων σε ένα Γράφημα Σκηνής Εφαρμογή Painter: RadioButton, Συμβάντα του Ποντικιού και Σχήματα Επισκόπηση Τεχνολογιών ημιουργία του Έργου ημιουργία του GUI Υποκλάση Painter της Application Κλάση PainterController Εφαρμογή Color Chooser: Συνδέσεις Ιδιοτήτων και Ακροατές Ιδιοτήτων Επισκόπηση Τεχνολογιών ημιουργία του Έργου ημιουργία του GUI Υποκλάση ColorChooser της Application Κλάση ColorChooserController Εφαρμογή Cover Viewer: GUI Καθοδηγούμενα από εδομένα με Συλλογές JavaFX Επισκόπηση Τεχνολογιών ημιουργία του Έργου Προσθήκη Εικόνων στο Έργο ημιουργία του GUI Υποκλάση CoverViewer της Application Κλάση CoverViewerController Εφαρμογή Cover Viewer: Προσαρμογή Κελιών της ListView Επισκόπηση Τεχνολογιών Αντιγραφή του Έργου CoverViewer Προσαρμοσμένη Κλάση Factory Κελιών ImageTextCell Κλάση CoverViewerController Συμπέρασμα ικτύωση Εισαγωγή Χειρισμός URL Ανάγνωση Αρχείου σε Έναν Web ιακομιστή ημιουργία ενός Απλού ιακομιστή Χρησιμοποιώντας Υποδοχές Ροής ημιουργία ενός Απλού Πελάτη Χρησιμοποιώντας Υποδοχές Ροής Αλληλεπίδραση Πελάτη/ ιακομιστή με Συνδέσεις Υποδοχής Ροών Datagram: Αλληλεπίδραση Πελάτη/ ιακομιστή Χωρίς Συνδέσεις Τρίλιζα Πελάτη/ ιακομιστή με Χρήση ενός Πολυνηματικού ιακομιστή [Προσφορά στο Web] Μελέτη Περίπτωσης: DeitelMessenger Συμπέρασμα Java Persistence API (JPA) Εισαγωγή Επισκόπηση των Τεχνολογιών JPA ημιουργούμενες Κλάσεις Οντοτήτων Σχέσεις Μεταξύ Πινάκων Στις Κλάσεις Οντοτήτων Το Πακέτο javax.persistence Υποβολή Ερωτημάτων σε μια Βάση εδομένων με JPA ημιουργία της Java DB Βάσης εδομένων Συμπλήρωση της Βάσης εδομένων books με εδομένα ημιουργία του Java Έργου Προσθήκη των Βιβλιοθηκών JPA και Java DB ημιουργία της Μονάδας Persistence για τη Βάση εδομένων books 1229

16 ΠΕΡΙΕΧΟΜΕΝΑ xix Υποβολή Ερωτημάτων στον Πίνακα Authors JPA Λειτουργίες για την Αυτοδημιουργούμενη Κλάση Authors Ερωτήματα με Όνομα και Πρόσβαση εδομένων από Πολλαπλούς Πίνακες Χρήση ενός Ερωτήματος με Όνομα για Λήψη μιας Λίστας από Συγγραφείς και Εμφάνιση των Συγγραφέων με τα ISBN τους Χρήση ενός Ερωτήματος με Όνομα για Λήψη μιας Λίστας από Τίτλους και Εμφάνιση Κάθε Τίτλου με τον Αντίστοιχο Συγγραφέα Βιβλίο ιευθύνσεων: Χρήση του JPA και Συναλλαγών για Τροποποίηση μιας Βάσης εδομένων Επεξεργασία Συναλλαγών ημιουργία της Βάσης εδομένων AddressBook και της Μονάδας persistence Κλάση Οντοτήτων Addresses Κλάση AddressBook Άλλες Λειτουργίες του JPA Web Πόροι Συμπέρασμα JavaServer Faces και Web Εφαρμογές: Μέρος Εισαγωγή Συναλλαγές HyperText Transfer Protocol (HTTP) Πολυεπίπεδη Αρχιτεκτονική Εφαρμογών Η Πρώτη JSF Web Εφαρμογή σας Το Προκαθορισμένο index.html Έγγραφο: Εισαγωγή στα Facelet Εξέταση της Κλάσης WebTimeBean ημιουργία της WebTime JSF Web Εφαρμογής στο NetBeans Αρχιτεκτονική Μοντέλου-Προβολής-Ελεγκτή των Εφαρμογών JSF Συνηθισμένα JSF Συστατικά Επικύρωση με Χρήση Τυπικών JSF Συστατικών Validator Παρακολούθηση Συνόδου Cookie Παρακολούθηση Συνόδων με τα Συμπέρασμα JavaServer Faces και Web Εφαρμογές: Μέρος Εισαγωγή Πρόσβαση σε Βάσεις εδομένων από Web Εφαρμογές ιαμόρφωση της Βάσης εδομένων 1292 Κλάση AddressBean Facelets Σελίδα index.xhtml Facelets Σελίδα addentry.xhtml Ajax Προσθήκη Λειτουργικότητας Ajax στην Εφαρμογή Επικύρωσης Συμπέρασμα Web Υπηρεσίες Βασισμένες σε REST Εισαγωγή Τα Βασικά Web των Υπηρεσιών Simple Object Access Protocol (SOAP) Representational State Transfer (REST) JavaScript Object Notation (JSON) ημοσίευση και Κατανάλωση Web Υπηρεσιών Βασισμένες στο SOAP ημιουργία μιας Web Εφαρμογής και Προσθήκη μιας Κλάσης Web Υπηρεσίας στο NetBeans 1316

17 xx ΠΕΡΙΕΧΟΜΕΝΑ Ορισμός της Web υπηρεσίας WelcomeSOAP στο NetBeans ημοσίευση της Web υπηρεσίας WelcomeSOAP από το NetBeans οκιμή της Web υπηρεσίας WelcomeSOAP με την Ιστοσελίδα Tester του GlassFish Application Server Περιγραφή μιας Web Υπηρεσίας με την Web Service Description Language (WSDL) ημιουργία ενός Πελάτη για Κατανάλωση της Web Υπηρεσίας WelcomeSOAP Κατανάλωση της Web υπηρεσίας WelcomeSOAP ημοσίευση και Κατανάλωση μιας XML Web Υπηρεσίας Βασισμένης σε REST ημιουργία XML Web Υπηρεσίας Βασισμένης σε REST Κατανάλωση μιας XML Web Υπηρεσίας Βασισμένης σε REST ημοσίευση και Κατανάλωση JSON Web Υπηρεσιών Βασισμένων σε REST ημιουργία μιας JSON Web Υπηρεσίας Βασισμένης σε REST Κατανάλωση μιας JSON Web Υπηρεσίας Βασισμένης σε REST Παρακολούθηση Συνόδων σε μια SOAP Web Υπηρεσία ημιουργία μιας Web Υπηρεσίας Blackjack Κατανάλωση της Web Υπηρεσίας Blackjack Κατανάλωση μιας SOAP Web Υπηρεσίας με Χρήση Βάσης εδομένων ημιουργία της Βάση εδομένων Reservation ημιουργία μιας Web Εφαρμογής για Αλληλεπίδραση με την Υπηρεσία Reservation Γεννήτρια Εξισώσεων: Επιστροφή Τύπων Ορισμένων από το Χρήστη ημιουργία της Web Υπηρεσίας EquationGeneratorXML Κατανάλωση της Web Υπηρεσίας EquationGeneratorXML ημιουργία της Web Υπηρεσίας EquationGeneratorJSON Κατανάλωση της Web Υπηρεσίας EquationGeneratorJSON Συμπέρασμα Μελέτη Περίπτωσης ΑΤΜ, Μέρος 1: Αντικειμενοστραφής Σχεδίαση με την UML Εισαγωγή στη Μελέτη Περίπτωσης Εξέταση του Εγγράφου Προδιαγραφών Προσδιορισμός των Κλάσεων σε ένα Έγγραφο Προδιαγραφών Προσδιορισμός Ιδιοτήτων Κλάσεων Προσδιορισμός Καταστάσεων και ραστηριοτήτων Αντικειμένων Προσδιορισμός Λειτουργιών Κλάσεων Υποδεικνύοντας την Συνεργασία Μεταξύ Αντικειμένων Συμπέρασμα Μελέτη Περίπτωσης ΑΤΜ, Μέρος 2: Υλοποίηση μιας Αντικειμενοστραφούς Σχεδίασης Εισαγωγή Ξεκινώντας τον Προγραμματισμό των Κλάσεων του Συστήματος ATM Ενσωμάτωση Κληρονομικότητας και Πολυμορφισμού στο Σύστημα ATM Υλοποίηση της Μελέτης Περίπτωσης του ΑΤΜ Κλάση ATM Κλάση Screen Κλάση Keypad Κλάση CashDispenser Κλάση DepositSlot Κλάση Account Κλάση BankDatabase Κλάση Transaction Κλάση BalanceInquiry Κλάση Withdrawal 1449

18 ΠΕΡΙΕΧΟΜΕΝΑ xxi Κλάση Deposit Κλάση ATMCaseStudy Συμπέρασμα 1456 A ιάγραμμα Προτεραιότητας Τελεστών 1459 B Σύνολο Χαρακτήρων ASCII 1461 Γ Λέξεις-Κλειδιά και εσμευμένες Λέξεις 1462 Πρωταρχικοί Τύποι 1463 E Χρήση του Debugger 1464 Ε.1 Εισαγωγή 1465 Ε.2 Σημεία ιακοπής και οι Εντολές run, stop, cont και print 1465 Ε.3 Οι Εντολές print και set 1469 Ε.4 Έλεγχος της Εκτέλεσης Χρησιμοποιώντας τις Εντολές step, step up και next 1471 Ε.5 Η Εντολή watch 1474 Ε.6 Η Εντολή clear 1476 Ε.7 Συμπέρασμα 1478 ΣΤ Χρήση της Τεκμηρίωσης του Java API 1480 ΣΤ.1 Εισαγωγή 1480 ΣΤ.2 Πλοήγηση στο Java API 1481 Ζ ημιουργία Τεκμηρίωσης με το javadoc 1489 Ζ.1 Εισαγωγή 1489 Ζ.2 Σχόλια Τεκμηρίωσης 1489 Ζ.3 Τεκμηρίωση του Java Πηγαίου Κώδικα 1490 Ζ.4 javadoc 1497 Ζ.5 Αρχεία που Παράγονται από το javadoc 1498 Η Unicode 1502 Η.1 Εισαγωγή 1502 Η.2 Unicode Μορφές Μετασχηματισμού 1503 Η.3 Χαρακτήρες και ιακοσμητικά Εικονίδια 1504 Η.4 Πλεονεκτήματα/Μειονεκτήματα της Unicode 1505 Η.5 Χρήση της Unicode 1505 Η.6 Εύρος Χαρακτήρων 1507 Θ Μορφοποιημένη Έξοδος 1509 Θ.1 Εισαγωγή 1510 Θ.2 Ροές 1510 Θ.3 Μορφοποίηση Εξόδου με την printf 1510 Θ.4 Εμφάνιση Ακεραίων 1511 Θ.5 Εμφάνιση Αριθμών Κινητής Υποδιαστολής 1512 Θ.6 Εμφάνιση Συμβολοσειρών και Χαρακτήρων 1514 Θ.7 Εμφάνιση Ημερομηνιών και Ωρών 1515 Θ.8 Άλλοι Χαρακτήρες Μετατροπής 1517 Θ.9 Εμφάνιση με Πλάτη Πεδίων και Ακρίβεια 1519 Θ.10 Χρήση Σημαιών στην Συμβολοσειρά Μορφοποίησης της printf 1521 Θ.11 Εμφάνιση με είκτες Ορισμάτων 1525

19 xxii ΠΕΡΙΕΧΟΜΕΝΑ Θ.12 Εμφάνιση Κυριολεκτικών και Ακολουθιών ιαφυγής 1525 Θ.13 Μορφοποίηση Εξόδου με την Κλάση Formatter 1526 Θ.14 Συμπέρασμα 1527 Ι Αριθμητικά Συστήματα 1528 Ι.1 Εισαγωγή 1529 Ι.2 Συντόμευση υαδικών Αριθμών σε Οκταδικούς και εκαεξαδικούς Αριθμούς 1532 Ι.3 Μετατροπή Οκταδικών και εκαεξαδικών Αριθμών σε υαδικούς Αριθμούς 1533 Ι.4 Μετατροπή από υαδικούς, Οκταδικούς, εκαεξαδικούς σε εκαδικούς 1533 Ι.5 Μετατροπή από εκαδικούς σε υαδικούς, Οκταδικούς ή εκαεξαδικούς 1534 Ι.6 Αρνητικοί υαδικοί Αριθμοί: Σύνταξη Συμπληρωματική του ύο 1536 ΙΑ Χειρισμός Bit 1538 ΙΑ.1 Εισαγωγή 1538 ΙΑ.2 Χειρισμός Bit και Τελεστές Επιπέδου Bit 1538 ΙΑ.3 Κλάση BitSet 1548 ΙΒ Προτάσεις break και continue 1552 ΙΒ.1 Εισαγωγή 1552 ΙΒ.2 Πρόταση με Ετικέτα break 1552 ΙΒ.3 Πρόταση με Ετικέτα continue 1553 ΙΓ UML 2: Πρόσθετοι Τύποι ιαγραμμάτων 1555 ΙΓ.1 Εισαγωγή 1555 ΙΓ.2 Πρόσθετοι Τύποι ιαγραμμάτων 1555 Ι Μοτίβα Σχεδίασης 1557 Ι.1 Εισαγωγή 1557 Ι.2 ημιουργικά, ομικά και Συμπεριφοριστικά Μοτίβα Σχεδίασης 1558 Ι.2.1 ημιουργικά Μοτίβα Σχεδίασης 1559 Ι.2.2 ομικά Μοτίβα Σχεδίασης 1561 Ι.2.3 Συμπεριφοριστικά Μοτίβα Σχεδίασης 1562 Ι.2.4 Συμπέρασμα 1563 Ι.3 Μοτίβα Σχεδίασης σε Πακέτα java.awt και javax.swing 1563 Ι.3.1 ημιουργικά Μοτίβα Σχεδίασης 1563 Ι.3.2 ομικά Μοτίβα Σχεδίασης 1564 Ι.3.3 Συμπεριφοριστικά Μοτίβα Σχεδίασης 1566 Ι.3.4 Συμπέρασμα 1570 Ι.4 Μοτίβα Σχεδίασης Συγχρονισμού 1570 Ι.5 Μοτίβα Σχεδίασης που Χρησιμοποιούνται στα Πακέτα java.io και java.net 1571 Ι.5.1 ημιουργικά Μοτίβα Σχεδίασης 1571 Ι.5.2 ομικά Μοτίβα Σχεδίασης 1571 Ι.5.3 Αρχιτεκτονικά Μοτίβα Σχεδίασης 1573 Ι.5.4 Συμπέρασμα 1575 Ι.6 Μοτίβα Σχεδίασης που Χρησιμοποιούνται στο Πακέτο java.util 1575 Ι.6.1 ημιουργικά Μοτίβα Σχεδίασης 1575 Ι.6.2 Συμπεριφοριστικά Μοτίβα Σχεδίασης 1575 Ι.7 Συμπέρασμα 1576 Ευρετήριο 1577

20 Πριν τον Πρόλογο Είχα μαγευτεί με την Java πριν την έκδοση 1.0 το 1995 και στη συνέχεια έγινα προγραμματιστής της Java, συγγραφέας, ομιλητής, εισηγητής και Oracle Java Technology Ambassador. Σ' αυτό το ταξίδι, ήταν μεγάλη μου τιμή να θεωρώ συνάδελφό μου τον Paul Deitel και να συστήνω συχνά τα βιβλία του. Στις πολλές εκδόσεις του, αυτό το βιβλίο έχει αποδειχθεί σπουδαίο βοήθημα για Πανεπιστημιακά και επαγγελματικά μαθήματα που εγώ, όπως και άλλοι, έχουμε αναπτύξει, προκειμένου να διδάξουμε την Java γλώσσα προγραμματισμού. Ένα ποιοτικό χαρακτηριστικό που καθιστά αυτό το βιβλίο ένα σπουδαίο βοήθημα είναι η εκτενής και πλήρης κάλυψη των εννοιών της Java, όπως και αυτών που παρουσιάσθηκαν πρόσφατα στην Java SE 8. Ένα άλλο χρήσιμο ποιοτικό χαρακτηριστικό είναι η αντιμετώπιση των εννοιών και πρακτικών που είναι απαραίτητες για την αποτελεσματική ανάπτυξη λογισμικού. Καθώς είμαι θαυμαστής αυτού του βιβλίου εδώ και πολύ καιρό, θα ήθελα να αναφέρω μερικές από τις λειτουργίες αυτής της δέκατης έκδοσης, για την οποία είμαι ενθουσιασμένος. Αυτές είναι: Ένα φιλόδοξο νέο κεφάλαιο σχετικά με τις lambda εκφράσεις και ροές της Java. Αυτό το κεφάλαιο αρχίζει με μια εισαγωγή στο λειτουργικό προγραμματισμό, παρουσιάζοντας τις lambda εκφράσεις της Java και πώς να χρησιμοποιείτε τις ροές, ώστε να εκτελείτε εργασίες λειτουργικού προγραμματισμού σε συλλογές. Αν και η συγχρονικότητα είχε αναφερθεί ακόμα και στην πρώτη έκδοση του βιβλίου, η σημαντικότητά της όλο και αυξάνεται εξαιτίας των πολυπύρηνων αρχιτεκτονικών. Υπάρχουν παραδείγματα χρονισμού, με χρήση των νέων κλάσεων Date/Time API που παρουσιάσθηκαν στο Java SE 8, στο κεφάλαιο της συγχρονικότητας που δείχνουν τις βελτιώσεις στην απόδοση με την πολυπύρηνη αρχιτεκτονική ως προς την μονοπύρηνη. Το JavaFX είναι η τεχνολογία GUI/γραφικών/πολυμέσων της Java που προχωρά μπροστά, έτσι είναι ωραίο να βλέπουμε τρία κεφάλαια αφιερωμένα στο JavaFX με το παιδαγωγικό στυλ "ζωντανού κώδικα" της Deitel. Σας παρακαλώ, ενωθείτε μαζί μου για να συγχαρούμε τους Paul και Harvey Deitel για την τελευταία έκδοση μιας εξαιρετικής πηγής για τους σπουδαστές της Πληροφορικής όπως και για τους προγραμματιστές! James L. Weaver Java Technology Ambassador Oracle Corporation

21

22 Πρόλογος Το κύριο πλεονέκτημα μιας γλώσσας είναι η καθαρότητα... Γαληνός Καλωσορίσατε στον προγραμματισμό της γλώσσας Java και στο βιβλίο αυτό! Αυτό το βιβλίο παρουσιάζει τεχνολογίες αιχμής σχετικές με τους υπολογιστές σε σπουδαστές, εκπαιδευτικούς και προγραμματιστές. Είναι κατάλληλο για εισαγωγικά ακαδημαϊκά και επαγγελματικά μαθήματα με βάση συστάσεις για το πρόγραμμα σπουδών ACM και IEEE και για την προετοιμασία διαγωνισμών AP Computer Science. Εάν δεν το έχετε κάνει ακόμα, παρακαλώ διαβάστε το οπισθόφυλλο και το εσωτερικό οπισθόφυλλο, γιατί παρουσιάζουν την ουσία του βιβλίου. Σ' αυτό τον Πρόλογο, παρέχουμε περισσότερες λεπτομέρειες. Εστιάζουμε στις καλύτερες πρακτικές της μηχανικής λογισμικού. Την καρδιά του βιβλίου διέπει η υπογραφή Deitel "προσέγγιση ζωντανού κώδικα" (live-code approach), που αντί να χρησιμοποιούμε τμήματα κώδικα, παρουσιάζουμε τις περισσότερες έννοιες στα πλαίσια πλήρως λειτουργικών προγραμμάτων που εκτελούνται σε πρόσφατες εκδόσεις των Windows, OS X και Linux. Κάθε ολοκληρωμένο παράδειγμα κώδικα ακολουθείται μετά απ' τα αποτελέσματα εκτελέσεων. Επικοινωνώντας με τους Συγγραφείς Καθώς διαβάζετε αυτό το βιβλίο, αν έχετε ερωτήσεις, στείλτε ένα στην διεύθυνση και θα σας απαντήσουμε γρήγορα. Για ενημερώσεις για αυτό το βιβλίο, επισκεφθείτε την διεύθυνση Εγγραφείτε στο ηλεκτρονικό περιοδικό μας Deitel Buzz Online στην διεύθυνση και μπορείτε να συμμετέχετε σε μέσα κοινωνικής δικτύωσης της Deitel μέσω Facebook (http://www.deitel.com/deitelfan) Twitter Google+ (http://google.com/+deitelfan) YouTube (http://youtube.com/deiteltv) LinkedIn (http://linkedin.com/company/deitel-&-associates) Πηγαίος Κώδικας και Βίντεο-Σημειώσεις Όλος ο πηγαίος κώδικας είναι διαθέσιμος στην διεύθυνση και στο συνοδευτικό δικτυακό τόπο του βιβλίου (που επίσης περιέχει εκτενείς βίντεο-σημειώσεις):

23 xxvi ΠΡΟΛΟΓΟΣ Αρθρωτή Οργάνωση Αυτό το βιβλίο είναι κατάλληλο για μαθήματα προγράμματα προγραμματισμού διαφόρων επιπέδων, κυρίως για μαθήματα πρώτου και δευτέρου επιπέδου και εισαγωγικές σειρές μαθημάτων σχετικών ειδικοτήτων. Η αρθρωτή οργάνωση του βιβλίου βοηθά τους εισηγητές να προγραμματίσουν την ύλη τους: Εισαγωγή Κεφάλαιο 1 Εισαγωγή στους Υπολογιστές, το Internet και την Java Κεφάλαιο 2 Εισαγωγή στην Σύνταξη Java Εφαρμογών: Είσοδος/Έξοδος και Τελεστές Κεφάλαιο 3 Εισαγωγή στις Κλάσεις και τα Αντικείμενα Πρόσθετες Λειτουργίες Προγραμματισμού Κεφάλαιο 4 Προτάσεις Ελέγχου: Μέρος 1, Τελεστές Εκχώρησης, ++ και Κεφάλαιο 5 Προτάσεις Ελέγχου: Μέρος 2 Λογικοί Τελεστές Κεφάλαιο 6 Μέθοδοι: Μια Βαθύτερη ιερεύνηση Κεφάλαιο 7 Πίνακες και Λίστες Πινάκων Κεφάλαιο 14 Συμβολοσειρές, Χαρακτήρες και Κανονικές Εκφράσεις Κεφάλαιο 15 Αρχεία, Ροές και Σειριακή Επεξεργασία Αντικειμένων Αντικειμενοστραφής Προγραμματισμός και Αντικειμενοστραφής Σχεδίαση Κεφάλαιο 8 Κλάσεις και Αντικείμενα: Μια Βαθύτερη ιερεύνηση Κεφάλαιο 9 Αντικειμενοστραφής Προγραμματισμός: Κληρονομικότητα Κεφάλαιο 10 Αντικειμενοστραφής Προγραμματισμός: Πολυμορφισμός και ιασυνδέσεις Κεφάλαιο 11 Χειρισμός Εξαιρέσεων: Μια Βαθύτερη Προσέγγιση Κεφάλαιο 32 Μελέτη Περίπτωσης ΑΤΜ, Μέρος 1: Αντικειμενοστραφής Σχεδίαση με την UML9 Κεφάλαιο 33 Μελέτη Περίπτωσης ΑΤΜ, Μέρος 2: Υλοποίηση μιας Αντικειμενοστραφούς Σχεδίασης Swing Γραφικά Περιβάλλοντα Χρήστη και Java 2 Γραφικά Κεφάλαιο 12 Συστατικά Γραφικού Περιβάλλοντος Χρήστη: Μέρος 1 Κεφάλαιο 13 Γραφικά και Java 2D Κεφάλαιο 22 Συστατικά GUI: Μέρος 2 ομές εδομένων, Συλλογές, Lambda και Ροές Κεφάλαιο 16 Γενικές Συλλογές Κεφάλαιο 17 Τα Lambdas και οι Ροές της Java SE 8 Κεφάλαιο 18 Αναδρομή Κεφάλαιο 19 Αναζήτηση, Ταξινόμηση και το Μεγάλο Ο Κεφάλαιο 20 Γενικές Κλάσεις και Μέθοδοι Κεφάλαιο 21 Προσαρμοσμένες Γενικές ομές εδομένων

24 ΠΡΟΛΟΓΟΣ xxvii Συχγρονικότητα, ικτύωση Κεφάλαιο 23 Ταυτόχρονη Εκτέλεση Κεφάλαιο 27 ικτύωση JavaFX Γραφικά Περιβάλλοντα Χρήστη, Γραφικά και Πολυμέσα Κεφάλαιο 25 Το Περιβάλλον του JavaFX7 Κεφάλαιο 26 JavaFX GUI: Μέρος 2 Ανάπτυξη με Βάσεις εδομένων και το Web Κεφάλαιο 24 Προσπέλαση Βάσεων εδομένων με το JDBC Κεφάλαιο 28 Java Persistence API (JPA) Κεφάλαιο 29 JavaServer Faces και Web Εφαρμογές: Μέρος 1 Κεφάλαιο 30 JavaServer Faces και Web Εφαρμογές: Μέρος 2 Κεφάλαιο 31 Web Υπηρεσίες Βασισμένες σε REST Νέες και Ενημερωμένες Λειτουργίες Εδώ είναι οι αλλαγές που έχουμε κάνει γι' αυτό το βιβλίο: Τυπική έκδοση της Java: Java SE 7 και το Νέο Java SE 8. Προκειμένου να ικανοποιήσουμε τις ανάγκες του κοινού μας, σχεδιάσαμε το βιβλίο για Πανεπιστημιακά και επαγγελματικά μαθήματα βασισμένα στο Java SE 7, το Java SE 8 ή μια μείξη τους. Οι λειτουργίες της Java SE 8 καλύπτονται σε προαιρετικές, εύκολες να συμπεριληφθούν ή να παραλειφθούν ενότητες. Οι νέες δυνατότητες της Java SE 8 μπορούν να βελτιώσουν εντυπωσιακά τη διαδικασία προγραμματισμού. Η Εικόνα 1 αναφέρει μερικές απ' τις νέες λειτουργίες της Java SE 8 που καλύπτουμε. Λειτουργίες της Java SE 8fe Lambda εκφράσεις Βελτιώσεις στην συνεπαγωγή τύπων Παράλληλη ταξινόμηση πινάκων Μαζικές λειτουργίες με δεδομένα για τις Συλλογές της Java φιλτράρισμα, απεικόνιση και περιορισμός Βελτιώσεις στις βιβλιοθήκες, ώστε να υποστηρίζουν lambda (δηλ., java.util.stream, java. util.function) Date & Time API (java.time) Βελτιώσεις στη συγχρονικότητα του Java API Μέθοδοι static και default σε διασυνδέσεις Λειτουργικές διασυνδέσεις διασυνδέσεις που ορίζουν μόνο μια αφηρημένη μέθοδο και μπορούν να συμπεριλάβουν static και default μεθόδους Βελτιώσεις στο JavaFX Εικόνα 1 Μερικές από τις νέες λειτουργίες της Java SE 8.

25 xxviii ΠΡΟΛΟΓΟΣ Lambda, ροές και διασυνδέσεις της Java SE 8 με τις μεθόδους static και default. Οι πιο σημαντικές νέες λειτουργίες της Java SE 8 είναι τα lambda και οι συμπληρωματικές τεχνολογίες, τα οποία καλύπτουμε λεπτομερώς στο προαιρετικό Κεφάλαιο 17 και οι προαιρετικές ενότητες σημειώνονται με το "Java SE 8" σε επόμενα κεφάλαια. Στο Κεφάλαιο 17, θα δείτε ότι ο λειτουργικός προγραμματισμός με τα lambda και οι ροές μπορεί να σας βοηθήσει να γράφετε γρηγορότερα τα προγράμματά σας, πιο συνεκτικά, πιο απλά, με λιγότερα σφάλματα και τα οποία είναι ευκολότερο να χρησιμοποιήσουν παραλληλισμό, (ώστε να έχετε βελτιώσεις στην απόδοση στα πολυπύρηνα συστήματα) από προγράμματα που θα γράφατε με προηγούμενες τεχνικές. Θα δείτε ότι ο λειτουργικός προγραμματισμός συμπληρώνει τον αντικειμενοστρεφή προγραμματισμό. Αφού διαβάσετε το Κεφάλαιο 17, θα μπορείτε να υλοποιήσετε πιο έξυπνα πολλά απ' τα παραδείγματα της Java SE 7 σε όλο το βιβλίο (Εικόνα 2). SE-8 topics Κεφάλαιο 7 Κεφάλαιο 10 Κεφάλαια 12 και 22 Κεφάλαιο 14 Κεφάλαιο 15 Κεφάλαιο 23 Κεφάλαιο 25 Corresponding Java SE 8 discussions and examples Οι Ενότητες παρουσιάζουν τις βασικές δυνατότητες των lambda και των ροών που επεξεργάζονται μονοδιάστατους πίνακες. Η Ενότητα παρουσιάζουν τις νέες λειτουργίες του περιβάλλοντος της Java SE 8 (μέθοδοι default, μέθοδοι static και η έννοια των λειτουργικών διασυνδέσεων), που υποστηρίζουν λειτουργικό προγραμματισμό με lambda και ροές. Η Ενότητα 17.9 σας δείχνει πώς να χρησιμοποιείτε ένα lambda, ώστε να υλοποιείτε μια Swing λειτουργική διασύνδεση ακρόασης συμβάντων. Η Ενότητα 17.5 σας δείχνει πώς να χρησιμοποιείτε τα lambda και τις ροές, ώστε να επεξεργάζεστε συλλογές από αντικείμενα String. Η Ενότητα 17.7 σας δείχνει πώς να χρησιμοποιείτε τα lambda και τις ροές, ώστε να επεξεργάζεστε γραμμές κειμένου από ένα αρχείο. Σας δείχνει ότι τα λειτουργικά προγράμματα είναι ευκολότερο να χρησιμοποιήσουν παραλληλισμό, έτσι ώστε να εκμεταλλευτείτε πολυπύρηνες αρχιτεκτονικές για βελτίωση της απόδοσης. Παρουσιάζει επίσης την παράλληλη επεξεργασία ροών. Σας δείχνει ότι η Arrays μέθοδος parallelsort βελτιώνει την απόδοση σε πολυπύρηνες αρχιτεκτονικές όταν ταξινομείτε μεγάλους πίνακες. Η Ενότητα σας δείχνει πώς να χρησιμοποιείτε ένα lambda, ώστε να υλοποιείτε μια JavaFX λειτουργική διασύνδεση ακρόασης συμβάντων. Εικόνα 2 Συζητήσεις και παραδείγματα για τα lambda και τις ροές της Java SE 8. Πρόταση try-με-πόρους της Java SE 7 η ιασύνδεση AutoClosable. Τα αντικείμενα AutoClosable μειώνουν την πιθανότητα διαρροών των πόρων όταν τα χρησιμοποιείτε με την πρόταση try-με-πόρους, η οποία κλείνει αυτόματα τα αντικείμενα AutoClosable. Σ' αυτήν την έκδοση, χρησιμοποιούμε την πρόταση try-με-πόρους και αντικείμενα AutoClosable ανάλογα με την περίπτωση, ξεκινώντας από το Κεφάλαιο 15. Ασφάλεια της Java. Ελέγξαμε το βιβλίο μας ως προς το CERT Oracle Secure Coding Standard for Java, λαμβάνοντας υπόψη ότι είναι ένα εισαγωγικό εγχειρίδιο. είτε την ενότητα Ασφαλής Προγραμματισμός στην Java αυτού του Προλόγου για περισσότερες πληροφορίες για το CERT.

26 ΠΡΟΛΟΓΟΣ xxix NIO API της Java. Ενημερώσαμε τα παραδείγματα επεξεργασίας αρχείων στο Κεφάλαιο 15 ώστε να χρησιμοποιήσουμε λειτουργίες από το Java API NIO (νέο IO). Τεκμηρίωση της Java. Σε όλο το βιβλίο, παρέχουμε συνδέσεις σε τεκμηρίωση της Java όπου μπορείτε να μάθετε περισσότερα για τα διάφορα θέματα που παρουσιάζουμε. Για την τεκμηρίωση της Java SE 7, οι συνδέσεις ξεκινούν με: και για την τεκμηρίωση της Java SE 8, οι συνδέσεις ξεκινούν με: Αυτές οι συνδέσεις θα μπορούσαν να αλλάξουν όταν η Oracle εμφανίσει την Java SE 8, ενδεχομένως σε συνδέσεις που ξεκινούν με: Για οποιεσδήποτε συνδέσεις αλλάξουν μετά την έκδοση του βιβλίου, θα δημοσιεύσουμε ενημερώσεις στη διεύθυνση: Swing και JavaFX GUI, Γραφικά και Πολυμέσα Swing GUI και 2 Γραφικά της Java. To Swing GUI της Java συζητείται στις προαιρετικές ενότητες για το GUI και τα γραφικά στα Κεφάλαια 3 10 και στα Κεφάλαια 12 και 22. Το Swing είναι τώρα σε κατάσταση συντήρησης, δηλ., η Oracle έχει σταματήσει την ανάπτυξη και θα παράσχει μόνο διορθώσεις σε σφάλματα, ωστόσο θα παραμείνει μέρος της Java και εξακολουθεί να χρησιμοποιείται ακόμα ευρέως. Το Κεφάλαιο 13 συζητά τα 2 Γραφικά της Java. JavaFX GUI, Γραφικά και Πολυμέσα. Tα API για το GUI, τα γραφικά και τα πολυμέσα της Java είναι τώρα το JavaFX. Στο Κεφάλαιο 25, χρησιμοποιούμε το JavaFX 2.2 (που εμφανίστηκε το 2012) με την Java SE 7. Το Κεφάλαιο 26, παρουσιάζει πρόσθετες JavaFX GUI λειτουργίες και παρουσιάζουμε τα JavaFX γραφικά και πολυμέσα στα πλαίσια του Java FX 8 και Java SE 8. Στα Κεφάλαια χρησιμοποιούμε το Scene Builder, που είναι ένα εργαλείο το οποίο λειτουργεί με μεταφορά και απόθεση για τη γρήγορη και βολική δημιουργία ενός JavaFX GUI. Είναι ένα αυτόνομο εργαλείο που μπορείτε να χρησιμοποιήσετε ξεχωριστά ή με οποιαδήποτε απ' τα Java IDE. Κλιμακούμενο GUI και παρουσίαση γραφικών. Οι εισηγητές που διδάσκουν εισαγωγικά μαθήματα έχουν μια ευρεία επιλογή από ύλη να καλύψουν για τα GUI, τα γραφικά και τα πολυμέσα από καθόλου, έως προαιρετικές εισαγωγικές ενότητες στα πρώτα κεφάλαια, έως μια εις βάθος κάλυψη του Swing GUI και των Java 2 γραφικών στα Κεφάλαια 12, 13 και 22 και μια εις βάθος κάλυψη του JavaFX GUI, τα γραφικά και τα πολυμέσα στα Κεφάλαια Συγχρονικότητα Συγχρονικότητα για τη βέλτιστη πολυπύρηνη απόδοση. Σ' αυτήν την έκδοση, είχαμε την τιμή να έχουμε ως κριτικό τον Brian Goetz, συνεργαζόμενο συγγραφέα στο βιβλίο Java Concurrency in Practice (Addison-Wesley). Ενημερώσαμε το Κεφάλαιο 23, με την τεχνολογία και τις ιδιομορφίες της Java SE 8. Προσθέσαμε ένα παράδειγμα με την parallelsort ως προς ένα παράδειγμα με την sort, που χρησιμοποιεί το Java SE 8 Date/Time API ώστε να χρονομετρούμε κάθε λειτουργία και αποδεικνύουμε την καλύτερη απόδοση της parallelsort σ' ένα πολυπύρηνο σύστημα. Περιλαμβάνουμε ένα παράδειγμα παράλληλης επεξεργασίας της Java SE 8 ως προς ένα παράδειγμα σειριακής ροής, χρησιμοποιώντας πάλι το Date/Time API, ώστε να καταδείξουμε

27 xxx ΠΡΟΛΟΓΟΣ τις βελτιώσεις στην απόδοση. Τέλος, προσθέσαμε ένα παράδειγμα CompletableFuture στην Java SE 8 που δείχνει τη σειριακή και την παράλληλη εκτέλεση μακροσκελών υπολογισμών. Κλάση SwingWorker. Χρησιμοποιούμε την κλάση SwingWorker, ώστε να δημιουργήσουμε πολυνηματικά περιβάλλοντα χρήστη. Η συγχρονικότητα παρέχει προκλήσεις. Ο προγραμματισμός εφαρμογών που εκτελούνται ταυτόχρονα είναι δύσκολος και επιρρεπής σε λάθη. Υπάρχει μια μεγάλη ποικιλία λειτουργιών συγχρονικότητας. Επισημαίνουμε αυτές που θα πρέπει να χρησιμοποιούν οι περισσότεροι άνθρωποι και αναφέρουμε εκείνες που θα πρέπει να χρησιμοποιούν οι πιο έμπειροι. Παίρνοντας Σωστά τα Ποσά σε Νόμισμα Νομισματικά Ποσά. Στα πρώτα κεφάλαια, για ευκολία, χρησιμοποιούμε τον τύπο double για νομισματικά ποσά. Λόγω της πιθανότητας να γίνουν λανθασμένοι νομισματικοί υπολογισμοί με τον τύπο double, θα πρέπει να χρησιμοποιηθεί η κλάση BigDecimal, (που είναι λίγο πιο σύνθετη) για τα νομισματικά ποσά. Παρουσιάζουμε υξμ BigDecimal στα Κεφάλαια 8 και 25. Τεχνολογία Αντικειμένου Αντικειμενοστραφής προγραμματισμός και σχεδίαση. Χρησιμοποιούμε μια προσέγγιση πρότερης σύνδεσης αντικειμένων, παρουσιάζοντας τις βασικές έννοιες και την ορολογία της τεχνολογίας αντικειμένου στο Κεφάλαιο 1. Οι σπουδαστές αναπτύσσουν τις πρώτες προσαρμοσμένες κλάσεις και αντικείμενα στο Κεφάλαιο 3. Η παρουσίαση των αντικειμένων και των κλάσεων νωρίς, κάνει τους σπουδαστές να αρχίσουν αμέσως "να σκέπτονται με αντικείμενα" και να μάθουν αυτές τις έννοιες πιο εκτενώς. Πραγματικές μελέτες περίπτωσης πρότερης σύνδεσης. Η παρουσίαση νωρίς των κλάσεων και αντικειμένων παρέχει μελέτες περίπτωσης όπως τις Account, Student, AutoPolicy, Time, Employee, GradeBook και ανακάτεμα τράπουλας, παρουσιάζοντας σταδιακά τις βαθύτερες έννοιες του αντικειμενοστραφούς προγραμματισμού. Κληρονομικότητα, ιασυνδέσεις, Πολυμορφισμός και Σύνθεση. Χρησιμοποιούμε μια σειρά πραγματικών μελετών περίπτωσης, ώστε να δείξουμε κάθε μια απ' αυτές τις έννοιες του αντικειμενοστραφούς προγραμματισμού και να εξηγήσουμε καταστάσεις στις οποίες προτιμάται κάθε μια από αυτές στην δημιουργία ισχυρών εμπορικών εφαρμογών. Χειρισμός εξαιρέσεων. Ενσωματώνουμε το βασικό χειρισμό εξαιρέσεων νωρίς στο βιβλίο και μετά τον παρουσιάζουμε σε μεγαλύτερο βάθος στο Κεφάλαιο 11. Ο χειρισμός εξαιρέσεων είναι σημαντικός για εφαρμογές με "κρίσιμους στόχους" και "επιχειρησιακά σημαντικούς". Οι προγραμματιστές θα πρέπει να απαντούν στα ερωτήματα "Τι συμβαίνει όταν το συστατικό που καλώ για να κάνω κάτι αντιμετωπίζει δυσκολίες; Πώς θα δώσει σήμα αυτό το συστατικό ότι είχε πρόβλημα;" Για να χρησιμοποιήσετε ένα Java συστατικό, θα πρέπει να ξέρετε όχι μόνο πώς συμπεριφέρεται αυτό το συστατικό "όταν τα πράγματα πάνε καλά" αλλά και ποιες εξαιρέσεις "θα εμφανίσει" το συστατικό όταν "πηγαίνουν τα πράγματα δεν πάνε καλά". Κλάση Arrays και ArrayList. Το Κεφάλαιο 7 καλύπτει την κλάση Arrays, η οποία περιέχει μεθόδους για εκτέλεση συνηθισμένων πράξεων με πίνακες και την κλάση ArrayList, η οποία υλοποιεί μια δομή δεδομένων πίνακα που αλλάζει δυναμικά μέγεθος. Όλο αυτό ακολουθεί τη φιλοσοφία μας για εξάσκηση χρησιμοποιώντας υπάρχουσες κλάσεις, ενώ μαθαίνουμε πώς να ορίζουμε τις δικές σας κλάσεις. Η πλούσια επιλογή ασκήσεων του κεφαλαίου περιλαμβάνει ένα σημαντικό έργο για την δημιουργία του δικού σας υπολογιστή μέσω της τεχνικής της προσομοίωσης λογισμικού. Το Κεφάλαιο 21 περιλαμβάνει ένα έργο το οποίο συνεχίζει την δημιουργία του δικού σας μεταγλωττιστή που μπορεί να μεταγλωττίσει προγράμματα γραμμένα σε γλώσσα υψηλού επιπέδου σε κώδικα γλώσσας μηχανής που θα εκτελέσει στον προσομοιωτή υπολογιστών σας.

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

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

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

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

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

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

ΚΕΦΑΛΑΙΑ. 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

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

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

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

Windows 8.1 Word 2013 Excel 2013

Windows 8.1 Word 2013 Excel 2013 3 σε 1 Windows 8.1 Word 2013 Excel 2013 ΓΡΗΓΟΡΑ ΚΑΙ ΑΠΛΑ ΜΑΙΡΗ ΓΚΛΑΒΑ Μαθηματικός, MSc Computer Science _CONT_3 se 1.indd iii 18/8/2014 9:13:02 πμ τίτλος: 3 ΣΕ 1 WINDOWS 8.1 - WORD 2013 - EXCEL 2013 ΓΡΗΓΟΡΑ

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

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

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

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

Χρήστος Στασινός. ουλεύοντας με τη. Microsoft Access ΑΘΗΝΑ

Χρήστος Στασινός. ουλεύοντας με τη. Microsoft Access ΑΘΗΝΑ Χρήστος Στασινός ουλεύοντας με τη Microsoft Access ΑΘΗΝΑ Κάθε γνήσιο αντίγραφο έχει την υπογραφή του συγγραφέα Έκδοση 1η, Copyright 1998 Έκδοση 2η, Copyright 2007 ISBN: 978-960-8105-97-3 ΕΚΔΟΣΕΙΣ ΝΕΩΝ

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

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

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

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

Εισαγωγή στη C# και. Σημειώσεις Σεμιναρίου Επιμέλεια: Βασίλης Κόλιας. το.net 4.0

Εισαγωγή στη C# και. Σημειώσεις Σεμιναρίου Επιμέλεια: Βασίλης Κόλιας. το.net 4.0 Εισαγωγή στη C# και Σημειώσεις Σεμιναρίου Επιμέλεια: Βασίλης Κόλιας το.net 4.0 2 Π ί ν α κ α ς Π ε ρ ι ε χ ο μ έ ν ω ν Πίνακας Περιεχομένων... 1 1. Εισαγωγή... 11 1.1. Γλώσσες και γλώσσες προγραμματισμού...

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

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

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

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

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

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

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

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Εισαγωγή Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Βιβλιογραφία "C Προγραμματισμός", Deitel & Deitel, Πέμπτη Έκδοση, Εκδόσεις

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

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

ΑΝΑΛΥΤΙΚΟ ΩΡΟΛΟΓΙΟ ΠΡΟΓΡΑΜΜΑ ΘΕΩΡΙΑΣ ΠΡΑΞΗΣ ΑΡ. ΕΓΚΡΙΤΙΚΗΣ ΑΠΟΦΑΣΗΣ ΥΠΟΕΡΓΟΥ ΚΩΔΙΚΟΙ ΤΟΠΙΚΩΝ ΑΓΟΡΩΝ ΕΡΓΑΣΙΑΣ ΤΟΥ ΝΟΜΟΥ Σ ΠΡΟΓΡ/ΤΟΣ ΑΝΑΛΥΤΙΚΟ ΩΡΟΛΟΓΙΟ ΠΡΟΓΡΑΜΜΑ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ 1 2 3 4 5 6 7 8 Διαχείριση Αρχείων 06/11/2014 09:00-13:00 Εισαγωγή

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

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

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

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

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

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

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

Βιοϊατρική τεχνολογία

Βιοϊατρική τεχνολογία Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Βιοϊατρική τεχνολογία Ενότητα 5: Οξύμετρο (OxyPro Project) Αν. καθηγητής Αγγελίδης Παντελής e-mail: paggelidis@uowm.gr ΕΕΔΙΠ Μπέλλου Σοφία e-mail: sbellou@uowm.gr

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

7.5 ΑΡΑΙΕΣ ΜΗΤΡΕΣ 290 7.5.1 Κατασκευή αραιών µητρών... 290 7.5.2 Πράξεις και συναρτήσεις αραιών µητρών... 294 7.5.3 Συναρτήσεις για γραφήµατα...

7.5 ΑΡΑΙΕΣ ΜΗΤΡΕΣ 290 7.5.1 Κατασκευή αραιών µητρών... 290 7.5.2 Πράξεις και συναρτήσεις αραιών µητρών... 294 7.5.3 Συναρτήσεις για γραφήµατα... Κ. Π Α Π Α Ρ Ρ Ι Ζ Ο Σ M A T L A B 6. 5 Π Ε Ρ Ι Ε Χ Ο Μ Ε Ν Α Π Ρ Ο Λ Ο Γ Ο Σ............. v Κ Ε Φ Α Λ Α Ι Ο 1 Β Α Σ Ι Κ Ε Σ Λ Ε Ι Τ Ο Υ Ρ Γ Ι Ε Σ Τ Ο Υ M A T L A B 1 1.1 ΠΡΑΞΕΙΣ ΚΑΙ ΑΡΙΘΜΗΤΙΚΕΣ ΠΑΡΑΣΤΑΣΕΙΣ

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

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

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

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

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής. Ακαδημαϊκό Έτος 2007-2008

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής. Ακαδημαϊκό Έτος 2007-2008 Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Ακαδημαϊκό Έτος 2007-2008 ΠΑΡΑΔΟΤΕΟ: Έκθεση Προόδου Υλοποίησης του Μαθήματος Εισαγωγή στην Επιστήμη των Υπολογιστών Διδάσκοντες: Θ.Ανδρόνικος - Μ.Στεφανιδάκης Περιεχόμενα

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

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

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

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

ημιουργία Παρουσιάσεων με τη βοήθεια του PowerPoint

ημιουργία Παρουσιάσεων με τη βοήθεια του PowerPoint TEXNOΛΟΓΙΚΟ EΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΣΕΡΡΩΝ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΕΠΙΚΟΙΝΩΝΙΩΝ Τομέας Αρχιτεκτονικής Η/Υ & Βιομηχανικών Εφαρμογών Μάθημα: «EIΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ - ΕΡΓΑΣΤΗΡΙΟ»

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

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

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

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

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 6 ΟΥ ΚΕΦΑΛΑΙΟΥ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ 6.1 Τι ονοµάζουµε πρόγραµµα υπολογιστή; Ένα πρόγραµµα

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

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

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

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

Αναλυτικός Πίνακας Περιεχομένων

Αναλυτικός Πίνακας Περιεχομένων Αναλυτικός Πίνακας Περιεχομένων 9 Αναλυτικός Πίνακας Περιεχομένων ΣΥΝΟΠΤΙΚΑ ΠΕΡΙΕΧΟΜΕΝΑ...7 ΑΝΑΛΥΤΙΚΟΣ ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ...9 ΠΡΟΛΟΓΟΣ...15 1. ΕΙΣΑΓΩΓΗ ΣΤO EXCEL ΤΗΣ MICROSOFT...19 1.1. ΕΙΣΑΓΩΓΗ...20

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

Είδη εντολών. Απλές εντολές. Εντολές ελέγχου. Εκτελούν κάποια ενέργεια. Ορίζουν τον τρόπο με τον οποίο εκτελούνται άλλες εντολές

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

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

Εξεταστέα Ύλη (Syllabus) Έκδοση 5.0

Εξεταστέα Ύλη (Syllabus) Έκδοση 5.0 Εξεταστέα Ύλη (Syllabus) Έκδοση 5.0 Πνευματικά Δικαιώματα 2007 Ίδρυμα ECDL (ECDL Foundation www.ecdl.org) Όλα τα δικαιώματα είναι κατοχυρωμένα. Κανένα μέρος αυτού του εγγράφου δεν μπορεί να αναπαραχθεί

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

PROJECT ΕΡΓΑΣΤΗΡΙΩΝ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ Ι. Τμήμα Μηχανικών Πληροφορικής Τ.Ε.

PROJECT ΕΡΓΑΣΤΗΡΙΩΝ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ Ι. Τμήμα Μηχανικών Πληροφορικής Τ.Ε. Παραδοτέα 1. Το αρχείο.mdb της βάσης δεδομένων σας σε ACCESS 2. Ένα CD που θα αναγράφει το ονοματεπώνυμο του σπουδαστή και το ΑΕΜ και θα περιέχει το αρχείο.mdb της βάσης δεδομένων καθώς και το εγχειρίδιο

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

Εργαστήριο #10 (Ε10) 1

Εργαστήριο #10 (Ε10) 1 Εργαστήριο #10 Από τα προηγούμενα εργαστήρια......θα χρειαστείτε ορισμένες από τις οδηγίες μορφοποίησης CSS (ανατρέξτε στις εκφωνήσεις του 8 ου και 9 ου εργαστηρίου).! Οδηγίες Στη δυναμική δημιουργία ιστοσελίδων

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

Παράλληλη Επεξεργασία

Παράλληλη Επεξεργασία Παράλληλη Επεξεργασία Φροντιστήριο: Εισαγωγή στο OpenMP Εργαστήριο Πληροφοριακών Συστημάτων Υψηλής Επίδοσης Parallel and Distributed Systems Group Τι είναι το OpenMP Πρότυπο Επέκταση στη C/C++ και τη Fortran

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

Περιεχόµενα. Μέρος I Βασικά στοιχεία των Microsoft Windows XP Professional. Ευχαριστίες... 17 Εισαγωγή... 19

Περιεχόµενα. Μέρος I Βασικά στοιχεία των Microsoft Windows XP Professional. Ευχαριστίες... 17 Εισαγωγή... 19 Περιεχόµενα Ευχαριστίες... 17 Εισαγωγή... 19 Μέρος I Βασικά στοιχεία των Microsoft Windows XP Professional 1 Εισαγωγή στη διαχείριση των Microsoft Windows XP Professional... 25 Ξεκίνηµα µε τα Windows XP

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

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

ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΘΕΜΑ 1 (Α) Σημειώστε δίπλα σε κάθε πρόταση «Σ» ή «Λ» εφόσον είναι σωστή ή λανθασμένη αντίστοιχα. 1. Τα συντακτικά λάθη ενός προγράμματος

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

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

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ και ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ 2.1 Να δοθεί ο ορισμός

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

Η Γλώσσα Προγραµµατισµού C++ (The C++ Programming Language) Ιστοσελίδα του µαθήµατος. Περιεχόµενα. ηµήτριος Κατσαρός, Ph.D. Κλάσεις.

Η Γλώσσα Προγραµµατισµού C++ (The C++ Programming Language) Ιστοσελίδα του µαθήµατος. Περιεχόµενα. ηµήτριος Κατσαρός, Ph.D. Κλάσεις. 1 Η Γλώσσα Προγραµµατισµού C++ (The C++ Programming Language) ηµήτριος Κατσαρός, Ph.D. Χειµώνας 2005 ιάλεξη 5η Ιστοσελίδα του µαθήµατος 2 http://skyblue.csd.auth.gr/~dimitris/courses/cpp_fall05.htm Θα

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

Οπτικός Οδηγός τoυ Ελληνικού JOOMLA!

Οπτικός Οδηγός τoυ Ελληνικού JOOMLA! Οπτικός Οδηγός τoυ Ελληνικού JOOMLA! _ELE intro_joomla.indd i 29/3/2010 4:57:03 μμ _ELE intro_joomla.indd ii 29/3/2010 4:57:03 μμ Οπτικός Οδηγός τoυ Ελληνικού JOOMLA! Marni Derr & Tanya Symes Απόδοση:

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

Περιεχόμενα. Κεφάλαιο 1: Εισαγωγή...17. Κεφάλαιο 2: Μια πρώτη ματιά στη C++...49

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

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

ΔΙΔΑΚΤΙΚΗ της ΠΛΗΡΟΦΟΡΙΚΗΣ

ΔΙΔΑΚΤΙΚΗ της ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΔΙΔΑΚΤΙΚΗ της ΠΛΗΡΟΦΟΡΙΚΗΣ Μ. Γρηγοριάδου Ρ. Γόγουλου Ενότητα: Η Διδασκαλία του Προγραμματισμού Περιεχόμενα Παρουσίασης

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

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12 Αρχιτεκτονικές κατανεμημένων συστημάτων Στόχοι Εξήγηση των πλεονεκτημάτων και των μειονεκτημάτων των αρχιτεκτονικών κατανεμημένων συστημάτων Εξέταση των αρχιτεκτονικών συστημάτων πελάτηδιακομιστή και των

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

4. Γνωστικά Αντικείμενα και Αντίστοιχες Γνώσεις/Δεξιότητες προς Εξέταση

4. Γνωστικά Αντικείμενα και Αντίστοιχες Γνώσεις/Δεξιότητες προς Εξέταση Κωδ.: CSR-APDX2C Ισχύς: 01/10/2014 Έκδοση: 01 Σελίδα 1 από 8 Σύνταξη: Υπεύθυνος Διαχείρισης Ποιότητας Έγκριση: Διευθύνων Σύμβουλος 1. Γενικές Προδιαγραφές Πιστοποιητικών Οι ειδικές απαιτήσεις για την πιστοποίηση

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

ΕΠΕΞΕΡΓΑΣΙΑ ΚΕΙΜΕΝΟΥ

ΕΠΕΞΕΡΓΑΣΙΑ ΚΕΙΜΕΝΟΥ 1. ΔΗΜΙΟΥΡΓΙΑ ΕΓΓΡΑΦΩΝ ΕΠΕΞΕΡΓΑΣΙΑ ΚΕΙΜΕΝΟΥ 1.1. Ορισµός εγγράφου, προτύπου, πρωτεύοντος και δευτερεύοντος εγγράφου 1.2. Πρότυπα 1.2.1. Δηµιουργία, µεταβολή, χρήση και διαγραφή προτύπων εγγράφων 1.2.2.

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

Ώρες. Μάθετε την Ανάπτυξη Εφαρμογών για το Android. Εκδόσεις: Μ. Γκιούρδας. Lauren Darcey Shane Conder. 2 η ΕΚ ΟΣΗ. Απόδοση: Γιάννης Β.

Ώρες. Μάθετε την Ανάπτυξη Εφαρμογών για το Android. Εκδόσεις: Μ. Γκιούρδας. Lauren Darcey Shane Conder. 2 η ΕΚ ΟΣΗ. Απόδοση: Γιάννης Β. Μάθετε την Ανάπτυξη Εφαρμογών για το Android 24 σε Ώρες 2 η ΕΚ ΟΣΗ Lauren Darcey Shane Conder Απόδοση: Γιάννης Β. Σαμαράς Ηλεκτρολόγος Μηχανολόγος Ε.Μ.Π. M.Sc. Computer Science Εκδόσεις: Μ. Γκιούρδας Ζωοδόχου

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

ΜΕΡΟΣ ΠΡΩΤΟ: Θεωρητική Προσέγγιση...15

ΜΕΡΟΣ ΠΡΩΤΟ: Θεωρητική Προσέγγιση...15 ΠΕΡΙΕΧΟΜΕΝΑ Πρόλογος του συγγραφέα...11 Πρόλογος του καθηγητή Γεωργίου Δουκίδη...13 ΜΕΡΟΣ ΠΡΩΤΟ: Θεωρητική Προσέγγιση...15 ΚΕΦΑΛΑΙΟ 1. Η ΕΠΙΧΕΙΡΗΣΗ...17 Ορισμός της έννοιας της επιχείρησης και οι μορφές

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

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

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

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

Διάλεξη 13: Δομές Δεδομένων ΙΙ (Ταξινομημένες Λίστες)

Διάλεξη 13: Δομές Δεδομένων ΙΙ (Ταξινομημένες Λίστες) Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου ΕΠΛ132 Αρχές Προγραμματισμού II Διάλεξη 13: Δομές Δεδομένων ΙΙ (Ταξινομημένες Λίστες) Δημήτρης Ζεϊναλιπούρ http://www.cs.ucy.ac.cy/courses/epl132 13-1 Περιεχόμενο

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

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

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

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

POWERPOINT 2003. Είναι το δημοφιλέστερο πρόγραμμα παρουσιάσεων.

POWERPOINT 2003. Είναι το δημοφιλέστερο πρόγραμμα παρουσιάσεων. POWERPOINT 2003 1. Τι είναι το PowerPoint (ppt)? Είναι το δημοφιλέστερο πρόγραμμα παρουσιάσεων. 2. Τι δυνατότητες έχει? Δημιουργία παρουσίασης. Μορφοποίηση παρουσίασης. Δημιουργία γραφικών. Δημιουργία

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

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

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C Στο εργαστήριο αυτό, θα ασχοληθούμε με δύο προγραμματιστικά περιβάλλοντα για τη γλώσσα C: τον gcc μεταγλωττιστή της C σε περιβάλλον

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

ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ. Python & NLTK: Εισαγωγή

ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ. Python & NLTK: Εισαγωγή ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ Python & NLTK: Εισαγωγή Εισαγωγή Γιατί Python? Παρουσίαση NLTK Πηγές και χρήσιμα εργαλεία Φροντιστήριο σε Python Στο φροντιστήριο: Εισαγωγή στην Python Ζητήματα προγραμματισμού για

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

Google Apps για το Office 365 για επιχειρήσεις

Google Apps για το Office 365 για επιχειρήσεις Google Apps για το Office 365 για επιχειρήσεις Πραγματοποίηση της μετάβασης Το Office 365 για επιχειρήσεις έχει διαφορετική εμφάνιση από το Google Apps. Για το λόγο αυτό, όταν συνδεθείτε, θα δείτε αυτήν

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

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client ΕΣΔ 516 Τεχνολογίες Διαδικτύου Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client Περιεχόμενα Περιεχόμενα Javascript και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις

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

Κεφάλαιο 7. Τρισδιάστατα Μοντέλα

Κεφάλαιο 7. Τρισδιάστατα Μοντέλα Κεφάλαιο 7. 7.1 ομές εδομένων για Γραφικά Υπολογιστών. Οι δομές δεδομένων αποτελούν αντικείμενο της επιστήμης υπολογιστών. Κατά συνέπεια πρέπει να γνωρίζουμε πώς οργανώνονται τα γεωμετρικά δεδομένα, προκειμένου

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

Διάλεξη 06: Συνδεδεμένες Λίστες & Εφαρμογές Στοιβών και Ουρών

Διάλεξη 06: Συνδεδεμένες Λίστες & Εφαρμογές Στοιβών και Ουρών ΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι 1 Διάλεξη 06: Συνδεδεμένες Λίστες & Εφαρμογές Στοιβών και Ουρών Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Υλοποίηση ΑΤΔ με Συνδεδεμένες Λίστες -

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

Κεφάλαιο 5Β (επανάληψη) Εισαγωγή στην Πληροφορική. Τυπικοί χρόνοι πρόσβασης. Μέσος χρόνος πρόσβασης. Ταχύτητα µεταφοράς δεδοµένων

Κεφάλαιο 5Β (επανάληψη) Εισαγωγή στην Πληροφορική. Τυπικοί χρόνοι πρόσβασης. Μέσος χρόνος πρόσβασης. Ταχύτητα µεταφοράς δεδοµένων Κεφάλαιο 5Β (επανάληψη) Εισαγωγή στην Πληροφορική Χειµερινό Εξάµηνο 2006-07 Απόδοση των οδηγών αποθηκευτικών µέσων Μέσος χρόνος πρόσβασης (Average Access Time) Ταχύτητα µεταφοράς δεδοµένων (Data-Transfer

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

ΧΡΗΣΗ Η/Υ & ΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ

ΧΡΗΣΗ Η/Υ & ΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ ΧΡΗΣΗ Η/Υ & ΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ ΠΕΡΙΒΑΛΛΟΝ ΗΛΕΚΤΡΟΝΙΚΟΥ ΥΠΟΛΟΓΙΣΤΗ Βασικές Λειτουργίες και Ρυθµίσεις 48.1.α.α1 48.1.α.α2 48.1.α.α3 48.1.α.α4 48.1.α.α5 48.1.α.α6 48.1.α.α7 48.1.α.α8 Εκκίνηση, Τερµατισµός,

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

ANDROID Προγραμματισμός Εφαρμογών

ANDROID Προγραμματισμός Εφαρμογών ANDROID Προγραμματισμός Εφαρμογών Παναγιώτης Κρητιώτης ΑΜ 1607 Περιεχόμενα Εισαγωγή Βασικά Στοιχεία Χαρακτηριστικά Αρχιτεκτονική Εργαλεία Προγραμματισμού Eclipse IDE Android SDK - ADT Plugin Προσομοιωτής

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

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής - Εβδομάδα 1

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής - Εβδομάδα 1 Στόχοι Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής (Αντικειμενοστρεφής Προγραμματισμός) Αντώνιος Συμβώνης www.math.ntua.gr/~symvonis Καλή γνώση βασικών αρχών προγραμματισμού Καλή γνώση βασικών αρχών αντικειμενοστρεφή

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

Περιεχόµενα. I Βασικές Γνώσεις 1

Περιεχόµενα. I Βασικές Γνώσεις 1 Περιεχόµενα I Βασικές Γνώσεις 1 1 Μοντελοποίηση Προγραµµάτων 3 1.1 Ψευδογλώσσα....................... 6 1.2 Διαγράµµατα Ροής..................... 6 1.3 Παραδείγµατα σε Ψευδογλώσσα και Διαγράµµατα Ροής.

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

ΔΟΜΗΜΕΝΟΣ ΟΠΤΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ ΠAΡΑΘΥΡΙΚΟ ΠΕΡΙΒΑΛΛΟΝ με τη Γλώσσα Προγραμματισμού VISUAL BASIC (1 ο ΕΠΙΠΕΔΟ)

ΔΟΜΗΜΕΝΟΣ ΟΠΤΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ ΠAΡΑΘΥΡΙΚΟ ΠΕΡΙΒΑΛΛΟΝ με τη Γλώσσα Προγραμματισμού VISUAL BASIC (1 ο ΕΠΙΠΕΔΟ) Γενικός Σκοπός Το αναλυτικό πρόγραμμα έχει ως γενικό σκοπό να δώσει στους μαθητές τις απαιτούμενες γνωστικές, κριτικές και αναλυτικές δεξιότητες ώστε να είναι ικανοί να χρησιμοποιούν τους υπολογιστές για

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

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

ΓΝΩΣΤΙΚΑ ΑΝΤΙΚΕΙΜΕΝΑ ΟΕΕΚ ΜΕ ΑΝΑΛΥΤΙΚΗ ΠΡΟΣΘΗΚΗ MICROSOFT OFFICE SPECIALIST ΓΝΩΣΤΙΚΑ ΑΝΤΙΚΕΙΜΕΝΑ ΟΕΕΚ ΜΕ ΑΝΑΛΥΤΙΚΗ ΠΡΟΣΘΗΚΗ MICROSOFT OFFICE SPECIALIST ΑΡΘΡΟ 49. ΓΝΩΣΤΙΚΟ ΑΝΤΙΚΕΙΜΕΝΟ: ΕΠΕΞΕΡΓΑΣΙΑ ΚΕΙΜΕΝΟΥ 1. Βασικές Λειτουργίες και Περιβάλλον Εφαρµογής Επεξεργασίας Κειµένου α.

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

Ο Οδηγός γρήγορης εκκίνησης

Ο Οδηγός γρήγορης εκκίνησης Ο Οδηγός γρήγορης εκκίνησης του Microsoft OneNote 2013 έχει διαφορετική εμφάνιση από προηγούμενες εκδόσεις. Γι αυτό το λόγο, δημιουργήσαμε αυτόν τον οδηγό για να ελαχιστοποιήσουμε την καμπύλη εκμάθησης.

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

Ενότητα 8 (κεφάλαιο 21) Θεματοκεντρική Τεχνολογία Λογισμικού

Ενότητα 8 (κεφάλαιο 21) Θεματοκεντρική Τεχνολογία Λογισμικού ΕΠΛ362: Τεχνολογία Λογισμικού ΙΙ (μετάφραση στα ελληνικά των διαφανειών του βιβλίου Software Engineering, 9/E, Ian Sommerville, 2011) Ενότητα 8 (κεφάλαιο 21) Θεματοκεντρική Τεχνολογία Λογισμικού Οι διαφάνειες

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

Πληρουορική Γ Γσμμασίοσ

Πληρουορική Γ Γσμμασίοσ Πληρουορική Γ Γσμμασίοσ Προγραμματισμός και Αλγόριθμοι Από το και τημ Χελώμα στημ Ευριπίδης Βραχνός http://evripides.mysch.gr/ 2014 2015 1 Προγραμματισμός Ζάννειο Πρότυπο Πειραματικό Γυμνάσιο Πειραιά Ενότητα:

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

Τίτλος Πακέτου Certified Computer User-ACTA

Τίτλος Πακέτου Certified Computer User-ACTA Κωδικός Πακέτου ACTA -CCU - 001 Τίτλος Πακέτου Certified Computer User-ACTA Εκπαιδευτικές Ενότητες Χρήση Η/Υ και Διαχείριση Αρχείων - Windows Περιβάλλον Η/Υ - Βασικές Λειτουργίες και Ρυθμίσεις Επιφάνεια

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

ΜΑΘΗΜΑ 3 ΛΟΓΙΣΜΙΚΟ (SOFTWARE)

ΜΑΘΗΜΑ 3 ΛΟΓΙΣΜΙΚΟ (SOFTWARE) ΜΑΘΗΜΑ 3 ΛΟΓΙΣΜΙΚΟ (SOFTWARE) ΣΤΟΧΟΙ: 1. Λογισμικό 2. Λογισμικό Λειτουργικού Συστήματος 3. Προσαρμοστικό Γραφικών Χρήστη 4. Λογισμικών Εφαρμογών 5. Διαφορά Μεταξύ Λογισμικού Λειτουργικού Συστήματος Και

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

ΑΛΓΟΡΙΘΜΟΙ. Τι είναι αλγόριθμος

ΑΛΓΟΡΙΘΜΟΙ. Τι είναι αλγόριθμος ΑΛΓΟΡΙΘΜΟΙ Στο σηµείωµα αυτό αρχικά εξηγείται η έννοια αλγόριθµος και παραθέτονται τα σπουδαιότερα κριτήρια που πρέπει να πληρεί κάθε αλγόριθµος. Στη συνέχεια, η σπουδαιότητα των αλγορίθµων συνδυάζεται

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

ΕΞΕΤΑΣΤΕΑ ΥΛΗ - SYLLABUS Version 1.0.1

ΕΞΕΤΑΣΤΕΑ ΥΛΗ - SYLLABUS Version 1.0.1 ΕΞΕΤΑΣΤΕΑ ΥΛΗ - SYLLABUS Version 1.0.1 ΓΝΩΣΤΙΚΑ ΑΝΤΙΚΕΙΜΕΝΑ Χρήση Η/Υ και διαχείριση αρχείων Επεξεργασία κειμένων Υπολογιστικά φύλλα Υπηρεσίες διαδικτύου Βάσεις δεδομένων Παρουσιάσεις ΣΥΣΤΗΜΑ ΕΞΕΤΑΣΕΩΝ

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

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

Ανάπτυξη εφαρµογών στο διαδίκτυο - σχεδιασµός ιστοσελίδων. Εφαρµογές συστηµάτων συντήρησης µηχανηµάτων και θερµαντικού - ψυκτικού εξοπλισµού Α/Α ΝΟΜΟΣ ΠΕΡ ΚΩ ΙΚΟΙ ΝΟΜ ΟΤΑ Θ.Π. ΠΡΟΤΑΣΗ ΚΩ ΙΚΟΙ Υ2 Υ3 ΚΩ ΘΕΜΑΤΙΚΟ ΑΝΤΙΚΕΙΜΕΝΟ ΠΟΛΗ Ε.Ε. ΑΤΟΜΑ ΩΡΕΣ ΘΕΩ -ΡΙΑ ΠΡΑ- ΚΤΙΚΗ 1 ΑΤΤΙΚΗ 9 95 95.05 6 2 ΑΤΤΙΚΗ 9 95 95.05 9 ΑΝΑΠΤΥΞΗ ΣΥΣΤΗΜΑΤΩΝ (ΠΡΟΓΡΑΜΜΑΤΙΣΜ

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

Computer Masti. Σελίδα 1 από 12

Computer Masti. Σελίδα 1 από 12 Computer Masti Σελίδα 1 από 12 Book 1 Ηλικίες που απευθύνεται : παιδιά 6 ετών και άνω 1. Βασικές χρήσεις του υπολογιστή στην καθημερινή ζωή (απλά παραδείγματα του τι μπορεί και τι ΔΕΝ μπορεί να κάνει ο

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

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΣΚΗΣΕΙΣ 6 ΟΥ ΚΕΦΑΛΑΙΟΥ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΕΡΩΤΗΣΕΙΣ ΣΩΣΤΟ ΛΑΘΟΣ Σημειώστε αν είναι σωστή ή

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

ιδάσκων: ηµήτρης Ζεϊναλιπούρ

ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 1.3-1.4: Εισαγωγή Στον Προγραµµατισµό ( ιάλεξη 2) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Περιεχόµενα Εισαγωγικές Έννοιες - Ορισµοί Ο κύκλος ανάπτυξης προγράµµατος Παραδείγµατα Πότε χρησιµοποιούµε υπολογιστή?

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

Λίγα λόγια από το συγγραφέα... 7. 91 Βάσεις δεδομένων και Microsoft Access... 9. 92 Microsoft Access... 22

Λίγα λόγια από το συγγραφέα... 7. 91 Βάσεις δεδομένων και Microsoft Access... 9. 92 Microsoft Access... 22 ΕΝΟΤΗΤΑ 5 Περιεχόμενα Λίγα λόγια από το συγγραφέα... 7 91 Βάσεις δεδομένων και Microsoft Access... 9 92 Microsoft Access... 22 93 Το σύστημα Βοήθειας του Microsoft Office... 32 94 Σχεδιασμός βάσης δεδομένων

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

Προδιαγραφές Απαιτήσεων Γιάννης Σμαραγδάκης

Προδιαγραφές Απαιτήσεων Γιάννης Σμαραγδάκης Προδιαγραφές Απαιτήσεων Γιάννης Σμαραγδάκης Τα κυριότερα παραδοτέα/προϊόντα μιας διεργασίας ανάπτυξης λογισμικού Άρθρωση του προβλήματος, κατανόηση (προδιαγραφές απαιτήσεων) α ) Ποιο πρόβλημα λύνουμε;

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

1. ΑΝΟΙΞΤΕ ΤΟΝ ΠΙΝΑΚΑ CUSTOMER ΚΑΙ ΣΤΟ ΜΕΝΟΥ ΕΠΙΛΕΞΤΕ

1. ΑΝΟΙΞΤΕ ΤΟΝ ΠΙΝΑΚΑ CUSTOMER ΚΑΙ ΣΤΟ ΜΕΝΟΥ ΕΠΙΛΕΞΤΕ ΜΑΘΗΜΑ 6 ο ΤΑΞΙΝΟΜΗΣΗ / ΦΙΛΤΡΑΡΙΣΜΑ ΠΛΗΡΟΦΟΡΙΩΝ Α. ΤΑΞΙΝΟΜΗΣΗ ΠΛΗΡΟΦΟΡΙΩΝ 1. ΑΝΟΙΞΤΕ ΤΗ ΒΑΣΗ Ε ΟΜΕΝΩΝ ΠΟΥ ΕΧΕΤΕ ΦΤΙΑΞΕΙ ΣΤΟ ΠΡΟΗΓΟΥΜΕΝΟ ΜΑΘΗΜΑ (ΑΠΟ ΕΧΘΕΙΤΕ ΑΝ ΧΡΕΙΑΖΕΤΑΙ ΤΗΝ ΠΡΟΕΙ ΟΠΟΙΗΣΗ ΑΣΦΑΛΕΙΑΣ) 2.

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

Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών: Εργαστηριακή Άσκηση 2012-2013

Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών: Εργαστηριακή Άσκηση 2012-2013 Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών: Εργαστηριακή Άσκηση 2012-2013 27 Μαρτίου 2013 Περίληψη Σκοπός της παρούσας εργασίας είναι η εξοικείωσή σας με τις θεμελιώδεις θεωρητικές και πρακτικές πτυχές

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

Τα Apple, Bonjour, Macintosh, Mac OS και Safari αποτελούν εµπορικά σήµατα της Apple Computer, Inc. στις Ηνωµένες Πολιτείες ή/και σε άλλες χώρες.

Τα Apple, Bonjour, Macintosh, Mac OS και Safari αποτελούν εµπορικά σήµατα της Apple Computer, Inc. στις Ηνωµένες Πολιτείες ή/και σε άλλες χώρες. Copyright 2007 Xerox Corporation. Με επιφύλαξη παντός δικαιώµατος. Τα µη δηµοσιευµένα δικαιώµατα προστατεύονται από το νόµο περί πνευµατικής ιδιοκτησίας των Ηνωµένων Πολιτειών. Τα XEROX, CentreWare, ControlCentre,

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

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

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

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

Σύβακας Σταύρος ΠΕ19,MSc. IT ΣΥΒΑΚΑΣ ΣΤΑΥΡΟΣ ΕΡΩΤΗΜΑΤΑ

Σύβακας Σταύρος ΠΕ19,MSc. IT ΣΥΒΑΚΑΣ ΣΤΑΥΡΟΣ ΕΡΩΤΗΜΑΤΑ Σύβακας Σταύρος ΠΕ19,MSc. IT Εισαγωγή Τα ερωτήματα (queries) είναι μία από τις πιο σημαντικές δυνατότητες που προφέρει ένα Σ%Β% αφού επιτρέπουν: Ανάκτηση και ανάλυση των δεδομένων στην επιθυμητή μορφή

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

ΚΥΠΡΙΑΚΗ ΔΗΜΟΚΡΑΤΙΑ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ Πρόγραμμα Επιμόρφωσης Εκπαιδευτικών σε θέματα Πληροφορικής

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

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

Κατασκευή δικτυακής εφαρμογής στην αρχιτεκτονική ios iphone που υλοποιεί ένα παιχνίδι ερωτοαπαντήσεων

Κατασκευή δικτυακής εφαρμογής στην αρχιτεκτονική ios iphone που υλοποιεί ένα παιχνίδι ερωτοαπαντήσεων Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Κατασκευή δικτυακής εφαρμογής στην αρχιτεκτονική ios iphone που υλοποιεί ένα παιχνίδι Παρτώνας Αλέξανδρος Επιβλέπων: Δρ.

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

Προγραμματισμός Χειμερινό Εξάμηνο 2014

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

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

ΠΡΟΛΟΓΟΣ. Σε ποιους απευθύνεται αυτό το βιβλίο... vi Διάρθρωση του βιβλίου... vi

ΠΡΟΛΟΓΟΣ. Σε ποιους απευθύνεται αυτό το βιβλίο... vi Διάρθρωση του βιβλίου... vi Πίνακας Περιεχομένων ΠΡΟΛΟΓΟΣ V Σε ποιους απευθύνεται αυτό το βιβλίο... vi Διάρθρωση του βιβλίου... vi 1η Ενότητα: Κινητός ιστός... vii 2η Ενότητα: Κινητές εφαρμογές στην πλατφόρμα Android... vii 3η Ενότητα:

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

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 22/11/07 Ακαδ έτος 2007-2008 ΠΛΗΡΟΦΟΡΙΚΗ Ι Φερεντίνος 22/11/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με ΑΜ σε 3, 7, 8 & 9 22/11/07 Παράδειγμα με if/else if και user input: import javautil*; public class Grades public

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

Περιεχόμενα. Λίγα λόγια από το συγγραφέα... 7 1 Microsoft Word 2010... 9. 2 ημιουργία νέου εγγράφου... 17. 3 Το σύστημα Βοήθειας του Office...

Περιεχόμενα. Λίγα λόγια από το συγγραφέα... 7 1 Microsoft Word 2010... 9. 2 ημιουργία νέου εγγράφου... 17. 3 Το σύστημα Βοήθειας του Office... Περιεχόμενα Λίγα λόγια από το συγγραφέα... 7 1 Microsoft Word 2010... 9 2 ημιουργία νέου εγγράφου... 17 3 Το σύστημα Βοήθειας του Office... 31 4 Μετακίνηση σε έγγραφο και προβολές εγγράφου... 37 5 Επιλογή

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

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Εισαγωγή στη C Λίγα λόγια για την C Γλώσσα προγραμματισμού υψηλού επιπέδου. Σχεδιάστηκε και υλοποιήθηκε από τον Dennis Richie στις αρχές της δεκαετίας του 1970 (Bell Labs). Η

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

Projects στο Εργαστήριο Αρχιτεκτονικής Υπολογιστών Version 2 Ισχύει από Φεβρουάριο 2009

Projects στο Εργαστήριο Αρχιτεκτονικής Υπολογιστών Version 2 Ισχύει από Φεβρουάριο 2009 ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ Ι ΡΥΜΑ ΣΕΡΡΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΕΠΙΚΟΙΝΩΝΙΩΝ ΜΑΘΗΜΑ : ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ 4 ο ΕΞΑΜΗΝΟ Projects στο Εργαστήριο Αρχιτεκτονικής Υπολογιστών Version 2 Ισχύει από Φεβρουάριο

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

PowerPoint 2007. Δημιουργία βασικής παρουσίασης στο PowerPoint 2007. Καθορισμός του αριθμού των διαφανειών που χρειάζονται

PowerPoint 2007. Δημιουργία βασικής παρουσίασης στο PowerPoint 2007. Καθορισμός του αριθμού των διαφανειών που χρειάζονται PowerPoint 2007 Δημιουργία παρουσίασης Δημιουργία βασικής παρουσίασης στο PowerPoint 2007 Γνωρίστε το χώρο εργασίας του PowerPoint Ονομασία και αποθήκευση της παρουσίασής σας Προσθήκη, αναδιάταξη και διαγραφή

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

ΠΛΑΤΦΟΡΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΒΙΝΤΕΟΔΙΑΛΕΞΕΩΝ ΔΗΛΟΣ delos.uoa.gr. Εγχειρίδιο Χρήσης Μελών ΔΕΠ

ΠΛΑΤΦΟΡΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΒΙΝΤΕΟΔΙΑΛΕΞΕΩΝ ΔΗΛΟΣ delos.uoa.gr. Εγχειρίδιο Χρήσης Μελών ΔΕΠ ΠΛΑΤΦΟΡΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΒΙΝΤΕΟΔΙΑΛΕΞΕΩΝ ΔΗΛΟΣ delos.uoa.gr Εγχειρίδιο Χρήσης Μελών ΔΕΠ Αναζήτηση Δημόσιου Περιεχομένου Η διεύθυνση ιστού της νεάς πλατφόρμας διαχείρισης βιντεοδιαλέξεων Δήλος είναι: http://delos.uoa.gr

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

ΠΛΑΤΦΟΡΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΒΙΝΤΕΟΔΙΑΛΕΞΕΩΝ ΔΗΛΟΣ delos.uoa.gr. Εγχειρίδιο Χρήσης Μελών ΔΕΠ

ΠΛΑΤΦΟΡΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΒΙΝΤΕΟΔΙΑΛΕΞΕΩΝ ΔΗΛΟΣ delos.uoa.gr. Εγχειρίδιο Χρήσης Μελών ΔΕΠ ΠΛΑΤΦΟΡΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΒΙΝΤΕΟΔΙΑΛΕΞΕΩΝ ΔΗΛΟΣ delos.uoa.gr Εγχειρίδιο Χρήσης Μελών ΔΕΠ Είσοδος Χρηστών 1 1. Για τη σύνδεση σας στη νέα πλατφόρμα διαχείρισης βιντεοδιάλεξεων του ΕΚΠΑ, επισκεφθείτε τη διεύθυνση

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

Βάσεις δεδομένων (Access)

Βάσεις δεδομένων (Access) Βάσεις δεδομένων (Access) Όταν εκκινούμε την Access εμφανίζεται το παρακάτω παράθυρο: Για να φτιάξουμε μια νέα ΒΔ κάνουμε κλικ στην επιλογή «Κενή βάση δεδομένων» στο Παράθυρο Εργασιών. Θα εμφανιστεί το

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΜΑΘΗΜΑ: ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ ΔΙΑΔΙΚΑΣΙΕΣ ΠΑΡΑΓΩΓΗΣ ΛΟΓΙΣΜΙΚΟΥ Διδάσκων: Γ. Χαραλαμπίδης,

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

Οργάνωση Υπολογιστών (Ι)

Οργάνωση Υπολογιστών (Ι) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15 Οργάνωση Υπολογιστών (Ι) (η κεντρική μονάδα επεξεργασίας) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Ένα

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

ΚΕΦΑΛΑΙΑ. 3.1.1 Name, Caption, Backcolor. 3.2.1 Load, Unload, Activate

ΚΕΦΑΛΑΙΑ. 3.1.1 Name, Caption, Backcolor. 3.2.1 Load, Unload, Activate Vellum Object Oriented Programming Visual Basic Certificate Πιστοποιητικό ανάπτυξης εφαρµογών αντικειµενοστραφούς προγραµµατισµού µε την γλώσσα Visual Basic Vellum Global Educational Services Σελίδα 1

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

Αριστοµένης Μακρής Εργαστήρια Η/Υ

Αριστοµένης Μακρής Εργαστήρια Η/Υ Λογισµικό Η/Υ (Software)( Οι βασικές κατηγορίες λογισµικού!λειτουργικά Συστήµατα (Operating Systems O/S)!Λειτουργικά βοηθητικά προγράµµατα (Tools and Utilities)!Περιβάλλοντα ανάπτυξης µηχανογραφικών εφαρµογών!προϊόντα

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

ΕΠΛ233 Βιβλιοθήκες και Προσδιοριστές Πρόσβασης στην JAVA

ΕΠΛ233 Βιβλιοθήκες και Προσδιοριστές Πρόσβασης στην JAVA Βιβλιοθήκες και Προσδιοριστές Πρόσβασης στην JAVA 2 «Μονάδα Μετάφρασης» 2 «Μονάδα Μετάφρασης» Όταν δημιουργείται ένα αρχείο πηγαίου κώδικα στην Java, το αρχείο καλείται µονάδα µετάφρασης (compilation unit)

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

Δρ. Παναγιώτης Μ. Παπάζογλου Επίκουρος Καθηγητής ΤΕΙ Λαμίας. Διδακτικό βοήθημα γρήγορης μελέτης για τον προγραμματισμό του μικροεπεξεργαστή MIPS 32bit

Δρ. Παναγιώτης Μ. Παπάζογλου Επίκουρος Καθηγητής ΤΕΙ Λαμίας. Διδακτικό βοήθημα γρήγορης μελέτης για τον προγραμματισμό του μικροεπεξεργαστή MIPS 32bit Δρ. Παναγιώτης Μ. Παπάζογλου Επίκουρος Καθηγητής ΤΕΙ Λαμίας Διδακτικό βοήθημα γρήγορης μελέτης για τον προγραμματισμό του μικροεπεξεργαστή MIPS 32bit Το υλικό του οδηγού έχει αντικατασταθεί από το βιβλίο

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

ΚΕΦΑΛΑΙΟ 1ο 3ο. ΚΕΦΑΛΑΙΟ 5ο 6ο. ΚΕΦΑΛΑΙΟ 7ο. Δομημένος Προγραμματισμός - Γενικές Ασκήσεις Επανάληψης

ΚΕΦΑΛΑΙΟ 1ο 3ο. ΚΕΦΑΛΑΙΟ 5ο 6ο. ΚΕΦΑΛΑΙΟ 7ο. Δομημένος Προγραμματισμός - Γενικές Ασκήσεις Επανάληψης ΚΕΦΑΛΑΙΟ 1ο 3ο 1. Συμπληρώστε τα κενά με τη λέξη που λείπει. α. Ένα πρόβλημα το χωρίζουμε σε άλλα απλούστερα, όταν είναι ή όταν έχει τρόπο επίλυσης. β. Η επίλυση ενός προβλήματος προϋποθέτει την του. γ.

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

Οδηγός χρήσης Connection Manager

Οδηγός χρήσης Connection Manager Οδηγός χρήσης Connection Manager Τεύχος 1.0 2 Περιεχόμενα Σχετικά με την εφαρμογή διαχείρισης συνδέσεων 3 Ξεκινώντας 3 Άνοιγμα της εφαρμογής διαχείρισης συνδέσεων 3 Προβολή της τρέχουσας κατάστασης σύνδεσης

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

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

Κεφάλαιο 2: Μεταφραστές Κεφάλαιο 2: Μεταφραστές Αρχές Γλωσσών και Προγραμματισμού Λειτουργία Μετάφρασης ΑΡΧΙΚΗ ΓΛΩΣΣΑ (Source) L A ΓΛΩΣΣΑ ΥΛΟΠΟΙΗΣΗΣ ΜΕΤΑΦΡΑΣΤΗ (Implementation) L Y ΤΕΛΙΚΗ ΓΛΩΣΣΑ (Target) L T Αρχικό Πρόγραμμα

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

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

III. Πως μετατρέπεται το πηγαίο πρόγραμμα σε εκτελέσιμο πρόγραμμα; ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΙΑΓΩΝΙΣΜΑ ΟΝΟΜΑΤΕΠΩΝΥΜΟ: Θέμα 1ο I. Τι πρέπει να ικανοποιεί ένα κομμάτι κώδικα ώστε να χαρακτηριστεί ως υποπρόγραμμα; Τα υποπρογράμματα πρέπει

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