ΑΒΟΥΡΗΣ ΝΙΚΟΛΑΟΣ ΚΟΥΚΙΑΣ ΜΙΧΑΗΛ ΠΑΛΙΟΥΡΑΣ ΒΑΣΙΛΗΣ ΣΓΑΡΜΠΑΣ ΚΥΡΙΑΚΟΣ

PYTHON

Εισαγωγή στους υπολογιστές. 3η αναθεωρημένη έκδοση

Στόχος της 3ης αναθεωρημένης έκδοσης του βι­βλίου είναι να εισαγάγει τον αναγνώστη στην επιστήμη των υπολογιστών, ακολουθώντας μια πειραματική προσέγγιση που συνίσταται στην επίλυση διαδοχικών προβλημάτων με χρήση της γλώσσας προγραμματισμού Python. H Python είναι μια ισχυρή γλώσσα προγραμματισμού που αναπτύσσεται ραγδαία.

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

Το βιβλίο δομείται σε 3 μέρη και 17 κεφάλαια. Το πρώτο μέρος αφορά στην εισαγωγή βασικών εννοιών των υπολογιστών και προγραμματισμού με την Python• το δεύτερο μέρος αφορά σε προηγμένα θέματα προγραμματισμού:
αντικειμενοστρεφή προγραμμα­τισμό και προγραμματισμό γραφικών διεπαφών χρήστη• το τρίτο μέρος επιχειρεί επισκόπηση περιοχών της επιστήμης υπολογιστών με οδηγό την Python: ψηφιακή αριθμητική, οργάνωση υπολογιστή, βάσεις δεδομένων, λειτουργικά συστήματα, δικτύωση και πρωτόκολλα, κοινωνικές διαστάσεις της πληροφορικής.

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

Στην ιστοσελίδα του βιβλίου στο www.cup.gr διατίθεται συμπληρωματικό υλικό με τον κώδικα παραδειγμάτων και προβλημάτων.

ΣΥΓΓΡΑΦΕΙΣ

ΑΒΟΥΡΗΣ ΝΙΚΟΛΑΟΣ

Ο Νικόλαος Αβούρης γεννήθηκε στη Ζάκυνθο το 1956. Είναι Καθηγητής στην Πολυτεχνική Σχολή του Πανεπιστημίου Πατρών και διευθυντής του εργαστηρίου Διαδραστικών Τεχνολογιών. Το γνωστικό του αντικείμενο είναι οι τεχνολογίες λογισμικού και η επικοινωνία ανθρώπου-υπολογιστή. Έχει διδακτική και ερευνητική εμπειρία για πάνω από 30 χρόνια στις τεχνολογίες λογισμικού με έμφαση στην σχεδίαση διαδραστικών συστημάτων. Έχει σχεδιάσει και διδάξει προπτυχιακά και μεταπτυχιακά μαθήματα σε διάφορες γλώσσες προγραμματισμού, βάσεις δεδομένων, γραφικά υπολογιστή, επικοινωνία ανθρώπου-μηχανής και διαδικτυακό προγραμματισμό στο Πανεπιστήμιο Πατρών, το ΤΕΙ Αθήνας, και το ΕΑΠ και έχει επιβλέψει περισσότερες από 20 διδακτορικές διατριβές. Τα τελευταία χρόνια έχει αναπτύξει ένα ιδιαίτερο πάθος με την Python που συμπληρώνει αυτό για το τένις και το ποδήλατο.

ΚΟΥΚΙΑΣ ΜΙΧΑΗΛ

Ο Μιχαήλ Κουκιάς γεννήθηκε στη Χίο το 1951. Είναι Επίκουρος Καθηγητής του Τμήματος Ηλεκτρολόγων Μηχανικών & Τεχνολογίας Υπολογιστών του Πανεπιστημίου Πατρών. Στα επιστημονικά και ερευνητικά του ενδιαφέροντα περιλαμβάνονται ο σχεδιασμός ψηφιακών τηλεφωνικών διατάξεων και συστημάτων, οι υπηρεσίες τηλεματικής με έμφαση στις εφαρμογές στο χώρο της υγείας μέσω τηλεπικοινωνιακών δικτύων και της ανάπτυξης σχετικών πρωτοκόλλων, οι μετρήσεις και η μελέτη τηλεπικοινωνιακής κίνησης και οι τεχνολογίες Διαδικτύου. Διδάσκει επί πολλά έτη προπτυχιακά και μεταπτυχιακά μαθήματα στην περιοχή της Πληροφορικής και των Τηλεπικοινωνιών. Έχει διατελέσει κριτής σε διεθνή επιστημονικά περιοδικά και συνέδρια και μέλος οργανωτικών και επιστημονικών επιτροπών συνεδρίων.

ΠΑΛΙΟΥΡΑΣ ΒΑΣΙΛΗΣ

Ο Βασίλης Παλιουράς είναι αναπληρωτής καθηγητής στο Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών του Πανεπιστημίου Πατρών, όπου διδάσκει προπτυχιακά και μεταπτυχιακά μαθήματα σχετικά με τη σχεδίαση ολοκληρωμένων συστημάτων και τον προγραμματισμό. Η έρευνά του είναι στις περιοχές των αρχιτεκτονικών υλικού για ψηφιακή επεξεργασία σημάτων και τηλεπικοινωνιακές εφαρμογές, στο σχεδιασμό ψηφιακών συστημάτων χαμηλής κατανάλωσης και την ψηφιακή αριθμητική. Έχει δημοσιεύσει περισσότερα από 110 άρθρα σε διεθνή επιστημονικά περιοδικά, συνέδρια και ως κεφάλαια βιβλίων και έχει λάβει το βραβείο καλύτερης δημοσίευσης IEEE CASS Guillemin-Cauer. Επίσης έχει επιμεληθεί τρία βιβλία. Επιβλέπει πέντε διδακτορικές διατριβές και έχει επιβλέψει περισσότερα από 40 master και διπλωματικές. Έχει υπηρετήσει ως πρόεδρος επιτροπών τεσσάρων διεθνών συνεδρίων, καθώς και ως μέλος σε επιτροπές επιμέλειας περιοδικών και σε μεγάλο αριθμό τεχνικών επιτροπών συνεδρίων, σε περιοχές που άπτονται της έρευνάς του. Επίσης είναι μέλος των τεχνικών επιτροπών IEEE CASCOM και DISPS.

ΣΓΑΡΜΠΑΣ ΚΥΡΙΑΚΟΣ

Ο Κυριάκος Σγάρμπας γεννήθηκε στην Αθήνα το 1966. Είναι Αναπληρωτής Καθηγητής στο Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών του Πανεπιστημίου Πατρών (με γνωστικό αντικείμενο «Κλασική και Κβαντική Τεχνητή Νοημοσύνη») και Σύμβουλος Καθηγητής (μέλος ΣΕΠ) στη Σχολή Θετικών Επιστημών και Τεχνολογίας του Ελληνικού Ανοικτού Πανεπιστημίου. Δρα­στηριοποιείται διδακτικά και ερευνητικά στον χώρο της Πληροφορικής και ειδικότερα στις επιστημονικές περιοχές της Τεχνητής Νοημοσύνης, της Υπολογιστικής Γλωσσολογίας και της Κβαντικής Επεξεργασίας Πληροφο­ρίας. Είναι μέλος των IEEE, ACM, ΕΕΤΝ και ΤΕΕ. (http://goo.gl/8roJe)

ΠΕΡΙΕΧΟΜΕΝΑ

Πρόλογος

1. Εισαγωγή στην επιστήμη των υπολογιστών
1.1 O Υπολογιστής ως εργαλείο
1.2 Επιστήμη των Υπολογιστών
1.3 Ιστορικό σημείωμα
1.4 Ο Υπολογιστής ως μηχανή επεξεργασίας ψηφιακής πληροφορίας
1.5 Ψηφιοποίηση Πληροφορίας
1.6 Ο Υπολογιστής ως Εικονική μηχανή
Ερωτήσεις – Ασκήσεις

2. Εισαγωγή στον προγραμματισμό με τη γλώσσα Python. Αριθμητικές εκφράσεις και βασικές εντολές
2.1 Εισαγωγή
2.1 Η Python ως αριθμομηχανή (υπολογισμοί αριθμητικών εκφράσεων)
2.2 Συναρτήσεις βιβλιοθηκών (modules)
Ασκήσεις

3. Από τις εντολές στο πρόγραμμα. Παράδειγμα επίλυσης τριωνύμου
3.1 Το πρώτο μας πρόγραμμα
3.2 Συνάρτηση input()
3.3 Εντολές if, else
3.4 Το πλήρες πρόγραμμα για την επίλυση εξισώσεων 2ου βαθμού
Ασκήσεις

4. Συναρτήσεις και επαναλήψεις. Επίλυση μαθηματικών προβλημάτων
4.1 Ορισμός συναρτήσεων
4.2 Επαναλήψεις με for και λίστες τιμών
Ασκήσεις

5. Γραφικές παραστάσεις στην Python. Αλγοριθμική ζωγραφική
5.1 Γραφικές παραστάσεις στην Python
Ασκήσεις

6. Λίστες και λεξικά στην Python. Νότες και μουσική
6.1 Λίστες στην Python
6.2 Μουσική με λίστες
6.3 Λεξικά
6.4 Μέθοδοι
Ασκήσεις

7. Κλήσεις στο λειτουργικό σύστημα. Αρχεία και ημερολόγια
7.1 Αρχεία και κλήσεις στο Λειτουργικό Σύστημα
Ασκήσεις

8. Επίλυση προβλημάτων σε προγραμματιστικό περιβάλλον, αλγόριθμοι και δομημένος προγραμματισμός
8.1 Γενικά
8.2 Προσδιορισμός του φυσικού προβλήματος
8.3 Ανάλυση του προβλήματος
8.4 Δημιουργία του αλγορίθμου
8.5 Κωδικοποίηση
8.6 Εκτέλεση προγράμματος
8.7 Εύρεση και διόρθωση λαθών
8.8 Έλεγχος του προγράμματος
8.9 Τεκμηρίωση
8.10 Συντήρηση προγράμματος
8.11 Τεχνικές δομημένης σχεδίασης προγράμματος και αρχές δομημένου προγραμματισμού
Λυμένες ασκήσεις
Άλυτες ασκήσεις

9. Αντικειμενοστρεφής προγραμματισμός στην Python. Παιχνίδι με τραπουλόχαρτα
9.1 Αντικείμενα και κλάσεις
9.2 Χρήση αντικειμένων: Ο κώδικας του παιχνιδιού
9.3 Κληρονομικότητα κλάσεων
Ασκήσεις

10. Γραφική διεπαφή χρήστη
10.1 Προγραμματίζοντας με χειρισμό γεγονότων χρήστη
10.2 Το πρώτο πρόγραμμα της Tkinter
10.3 Ορισμός χειριστή γεγονότων
10.4 Εισαγωγή δεδομένων από τον χρήστη
10.5 Μεταβλητές συμβολοσειρές StringVar
10.6 Γενικά: Γραφικά στοιχεία
10.7 Ο καμβάς γραφικών στοιχείων
10.8 Γεγονότα
10.9 Ένα παράδειγμα: καμβάς ζωγραφικής
10.10 Μενού και παράθυρα διαλόγου
10.11 Εικόνες
10.12 Σχεδίαση της γραφικής διεπαφής του παιχνιδιού με τα χαρτιά
Ασκήσεις

11. Ψηφιακή αριθμητική
11.1 Αναπαράσταση αριθμών χωρίς πρόσημο
11.2 Αναπαράσταση αριθμών με κλασματικό μέρος
11.3 Μετατροπές μεταξύ αναπαραστάσεων διαφορετικής βάσης
11.4 Αναπαράσταση αριθμών με πρόσημο
11.5 Πράξεις στο δυαδικό σύστημα
11.6 Αναπαράσταση κινητής υποδιαστολής
11.7 Αναπαράσταση αριθμών στην python
11.8  Βασική Λογική
Ασκήσεις

12. Στοιχεία αρχιτεκτονικής υπολογιστών
12.1 Βασικές έννοιες
12.2 Σύστημα Μνήμης
12.3 Κεντρική Μονάδα Επεξεργασίας
12.4 Εκτέλεση προγραμμάτων στο μοντέλο επεξεργαστή pycpu
Ασκήσεις

13. Λειτουργικά συστήματα. Διαχείριση διεργασιών
13.1 Γενικές αρχές – Εισαγωγή
13.2 Ιστορική αναδρομή
13.3 Δομή και λειτουργία του λειτουργικού συστήματος
13.4 Διεπαφή χρήστη
13.5 Πληροφορίες του ΛΣ στην Python
13.6 Η διαχείριση διεργασιών
13.7 Χρονοπρογραμματισμός διεργασιών
13.8 Διαχείριση της κεντρικής μνήμης
13.9 Διαχείριση συστήματος αρχείων
Ασκήσεις

14. Βάσεις δεδομένων. Διαχείριση πανεπιστημιακών συγγραμμάτων
14.1 Σχεδιάζουμε μια βάση δεδομένων
14.2 Δημιουργούμε τη βάση δεδομένων Syggrammata
14.3 Συνδεόμαστε με τη βάση δεδομένων Syggrammata από την Python
14.4 Χρήση της εφαρμογής Syggrammata
14.5 Μη σχεσιακές βάσεις δεδομένων
Ασκήσεις

15. Δικτυακός προγραμματισμός
15.1 Εισαγωγή
15.2 Δίκτυα υπολογιστών – Βασικές έννοιες, ορισμοί
15.4 Διευθυνσιοδότηση
15.5 Δικτυακές εφαρμογές και αρχιτεκτονικές εφαρμογών
15.6 Προγραμματισμός πελάτη διαδικτύου
Aσκήσεις

16. Ανάκτηση δεδομένων από το διαδίκτυο. Τα προγράμματα σπουδών των πανεπιστημίων και τι καιρό κάνει σήμερα;
16.1 Αντλώντας δεδομένα από το διαδίκτυο
16.2 Ανάκτηση δεδομένων από μια σελίδα HTML
16.3 Ανάκτηση δεδομένων από ανοικτή προγραμματιστική διεπαφή
Ασκήσεις

17. Κοινωνική διάσταση της Πληροφορικής
17.1 Κοινωνική διάσταση της Πληροφορικής
17.2 Ελεύθερο Λογισμικό, Λογισμικό Ανοικτού Κώδικα και Άδειες Χρήσης
Ερωτήσεις – Ασκήσεις

ΠΑΡΑΡΤΗΜΑΤΑ
Α. Εγκατάσταση της Python και ολοκληρωμένων περιβαλλόντων ανάπτυξης
Β. Επικοινωνία υπολογιστών και μετάδοση ψηφιοποιημένης πληροφορίας
Γ. Το μοντέλο αναφοράς ISO/OSI
Δ. Εισαγωγή στη γλώσσα HTML

Βιβλιογραφία – αναφορές
Γλωσσάριο
Ευρετήριο

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

  • ISBN
    978-960-524-470-5
  • Κωδικός στον Εύδοξο
    59359754
  • Έτος τρέχουσας έκδοσης
    2016
  • Τεχνικά χαρακτηριστικά
    400 17 24
  • Τιμή καταλόγου
    20,00