Εισαγωγή στην Επιστήμη των Υπολογιστών II
Διδάσκων/ουσα: Λάμπουρα Σταματέλλα, Παναγόπουλος Μιχαήλ
Κωδικός Μαθήματος: TEC210
Κατηγορία Μαθήματος: Γενικού Υποβάθρου - Θεμελίωσης
Τύπος Μαθήματος: Υποχρεωτικό
Επίπεδο Μαθήματος: Προπτυχιακό
Γλώσσα Μαθήματος: Ελληνικά
Τρόπος Παράδοσης: Στην τάξη
Εξάμηνο: Β΄
ECTS: 7
Διδακτικές Μονάδες: 4
Ώρες Διδασκαλίας: 4
Σελίδα E Class: https://opencourses.ionio.gr/courses/DAVA184/
Οργάνωση Διδασκαλίας:
Δραστηριότητα | Φόρτος Εξαμήνου |
---|---|
Διαλέξεις | 13 |
Εργαστηριακές Ασκήσεις | 26 |
Φροντιστηριακές Διαλέξεις | 13 |
Μελέτη και Ανάλυση Βιβλιογραφίας | 80 |
Εξάσκηση και Προετοιμασία | 43 |
Σύνολο Μαθήματος (ECTS: 7) | 175 |
Προαπαιτούμενο σε / Προτεινόμενο σε: (AVA846)
Τεχνολογία λογικού. Κύκλος ζωής λογικού, μοντέλα διαδικασιών ανάπτυξης. Δομές δεδομένων. Η έννοια του πίνακα. Εγγραφές, συνδεδεμένες λίστες. Αφηρημένοι τύποι δεδομένων. Δυαδικά δένδρα. Γράφοι. Δομές αρχείων. Βάσεις δεδομένων και μοντέλα βάσεων δεδομένων. Σχέσεις, οντότητες, πεδία. Λειτουργίες βάσεων. Δομημένη γλώσσα ερωτημάτων (SQL). Συμπίεση δεδομένων (εικόνας, ήχου, βίντεο). Ασφάλεια δεδομένων, κρυπτογραφία δημόσιου και ιδιωτικού κλειδιού. Αυθεντικότητα, διαχείριση κλειδιού, ψηφιακή υπογραφή. Θεωρία υπολογισμών. Εισαγωγή στην τεχνητή νοημοσύνη (απεικόνιση γνώσης, έμπειρα συστήματα, επεξεργασία εικόνας, αναγνώριση προτύπων). Το μάθημα συνδυάζεται με φροντιστήρια και εργαστηριακές ασκήσεις σε θέματα όπως δίκτυα, υλοποίηση αλγορίθμων, βάσεις δεδομένων, επεξεργασία ήχου και εικόνας, εφαρμογή ARDUINO προγραμματισμό σε συμβολική γλώσσα και σε γλώσσα υψηλού επιπέδου (C).
Το μάθημα είναι η συνέχεια του μαθήματος TEC110.
Στόχος του μαθήματος είναι να θέσει τις εισαγωγικές βάσεις για την κατανόηση των δυνατοτήτων της επιστήμης των υπολογιστών. Καλύπτονται συνοπτικά οι βασικές αρχές λειτουργίας και η δομή των υπολογιστών, ενώ ταυτόχρονα γίνεται εισαγωγή στα βασικότερα κεφάλαια που αφορούν στην επιστήμη της πληροφορικής, όπως στο Λογικό των Υπολογιστών, στην Οργάνωση Δεδομένων και σε διάφορα άλλα προχωρημένα θέματα, όπως Συμπίεση Δεδομένων, Ασφάλεια και Θεωρία Υπολογιστών. Έμφαση δίδεται στο να μάθουν οι Φοιτητές/Φοιτήτριες να ερευνούν νέες πηγές γνώσης, να εφαρμόζουν την γνώση αυτή και σε άλλα γνωστικά αντικείμενα του Προγράμματος Σπουδών, να την χρησιμοποιήσουν σε ανάλυση προβλημάτων και στη δημιουργία ή αξιολόγηση Οπτικοακουστικών Έργων Τέχνης (διαδραστικών, διαδικτυακών, εγκαταστάσεων, βίντεο, κλπ).
Με την ολοκλήρωση των 13 διαλέξεων ο φοιτητής/φοιτήτρια θα είναι σε θέση:
Εβδομάδα 1: Τεχνολογία Λογικού (Κεφ. 10)
- Να αντιλαμβάνεται τον Κύκλο ζωής του λογικού (φάσεις) και τα μοντέλα διαδικασιών ανάπτυξης.
- Να αναγνωρίζει τα χαρακτηριστικά ποιότητας της τεκμηρίωσης (χρήστη & συστήματος).
- Να εφαρμόζει την διαδικασία κατασκευής προγράμματος (συγγραφή και διόρθωση σφαλμάτων, μεταγλώττιση, εκτέλεση).
Εργαστήριο 1: Προγραμματισμός (χρήση Matlab)
Εβδομάδα 2: Δομές Δεδομένων (Κεφ. 11)
- Να ορίζει μια δομή δεδομένων.
- Να ορίζει συστοιχίες ως δομές δεδομένων και να περιγράφει τον τρόπο χρήσης τους για την αποθήκευση λιστών στοιχείων δεδομένων.
- Να ξεχωρίζει το όνομα μιας συστοιχίας από τα ονόματα των στοιχείων της.
- Να περιγράφει τις λειτουργίες που ορίζονται για συστοιχίες.
- Να ορίζει εγγραφές ως δομές δεδομένων και να περιγράφει τον τρόπο χρήσης τους για την αποθήκευση ιδιοτήτων που ανήκουν σε απλά στοιχεία δεδομένων.
- Να ξεχωρίζει το όνομα μιας εγγραφής από τα ονόματα των πεδίων της.
- Να ορίζει μια συνδεδεμένη λίστα ως δομή δεδομένων και να περιγράφει τον τρόπο υλοποίησής της με τη χρήση δεικτών.
- Να κατανοεί τον μηχανισμό μέσω του οποίου προσπελάζονται οι κόμβοι μιας συστοιχίας.
- Να περιγράφει τις λειτουργίες που ορίζονται για τις συνδεδεμένες λίστες.
- Να συγκρίνει και να αντιπαραβάλει συστοιχίες, εγγραφές, και συνδεδεμένες λίστες.
- Να ορίζει τις εφαρμογές συστοιχιών, εγγραφών, και συνδεδεμένων λιστών.
Εργαστήριο 2: Παρουσίαση προσομοιωτή του INTEL-8086.
Εβδομάδα 3: Αφηρημένοι τύποι δεδομένων (Κεφ. 12)
- Να κατανοεί την έννοια του αφηρημένου τύπου δεδομένων.
- Να ορίζει τις στοίβες, τις βασικές λειτουργίες που εκτελούνται σε αυτές, τις εφαρμογές τους, και τον τρόπο υλοποίησής τους.
- Να ορίζει τις ουρές, τις βασικές λειτουργίες που εκτελούνται σε αυτές, τις εφαρμογές τους, και τον τρόπο υλοποίησής τους.
- Να ορίζει τις γενικές γραμμικές λίστες, τις βασικές λειτουργίες που εκτελούνται σε αυτές, τις εφαρμογές τους, και τον τρόπο υλοποίησής τους.
- Να ορίζει τα γενικά δέντρα και τις εφαρμογές τους.
- Να ορίζει τα δυαδικά δέντρα — ένας ειδικός τύπος δέντρων — και τις εφαρμογές τους.
- Να ορίζει τα δυαδικά δέντρα αναζήτησης (BST) και τις εφαρμογές τους.
- Να ορίζει τους γράφους και τις εφαρμογές τους.
Εργαστήριο 3: Ασκήσεις προγραμμάτων assembly στον προσομοιωτή του INTEL-8086.
Εβδομάδα 4: Δομές Αρχείων (Κεφ. 13)
- Να ορίζει τις δύο κατηγορίες μεθόδων προσπέλασης αρχείων: την ακολουθιακή προσπέλαση και την τυχαία προσπέλαση.
- Να κατανοεί τη δομή των ακολουθιακών αρχείων και τον τρόπο με τον οποίο αυτά ενημερώνονται.
- Να κατανοεί τη δομή των ευρετηριασμένων αρχείων και τη σχέση μεταξύ του ευρετηρίου και του αρχείου δεδομένων.
- Να κατανοεί την έννοια των κατακερματισμένων αρχείων και να περιγράφει μερικές μεθόδους κατακερματισμού.
- Να περιγράφει τις συγκρούσεις διευθύνσεων και τον τρόπο επίλυσής τους.
- Να κατανοεί την έννοια των καταλόγων και πώς μπορούν να χρησιμοποιούνται για την οργάνωση αρχείων.
- Να ξεχωρίζει τα αρχεία κειμένου και τα δυαδικά αρχεία.
Εργαστήριο 4: HTML - παρουσίαση βασικής μορφής εγγράφου του Ιστού, υλοποίηση παραδείγματος.
Εβδομάδα 5: Βάσεις Δεδομένων (Κεφ. 14)
- Να ορίζει μια βάση δεδομένων και ένα σύστημα διαχείρισης βάσεων δεδομένων (ΣΔΒΔ), καθώς και να περιγράφει τα συστατικά στοιχεία ενός ΣΔΒΔ.
- Να περιγράφει την αρχιτεκτονική ενός ΣΔΒΔ με βάση το πρότυπο ANSI/SPARC.
- Να ορίζει τα τρία παραδοσιακά μοντέλα βάσεων δεδομένων: το ιεραρχικό, το δικτυακό, και το σχεσιακό.
- Να περιγράφει το σχεσιακό μοντέλο και τις σχέσεις.
- Να κατανοεί τις λειτουργίες που εφαρμόζονται σε μια σχεσιακή βάση δεδομένων με διαταγές SQL.
- Να περιγράφει τα βήματα που ακολουθούνται στον σχεδιασμό βάσεων δεδομένων.
- Να ορίζει διαγράμματα ERM και E-R και να εξηγεί τις οντότητες και τις σχέσεις σε αυτό το μοντέλο.
- Να ορίζει τα ιεραρχικά επίπεδα της κανονικοποίησης και να κατανοεί τη λογική που εφαρμόζεται για την κανονικοποίηση των σχέσεων.
- Να περιγράφει άλλους τύπους βάσεων δεδομένων εκτός από το σχεσιακό μοντέλο.
Εργαστήριο 5: Βάσεις δεδομένων - Παρουσίαση περιβάλλοντος.
Εβδομάδα 6: Συμπίεση Δεδομένων (Κεφ. 15)
- Να κατανοεί τη διαφορά ανάμεσα στη μη απωλεστική και την απωλεστική συμπίεση.
- Να περιγράφει την κωδικοποιήση τρέχοντος μήκους και τον τρόπο με τον οποίο επιτυγχάνεται η συμπίεση με αυτή τη μέθοδο.
- Να περιγράφει την κωδικοποιήση Huffman και τον τρόπο με τον οποίο επιτυγχάνεται η συμπίεση με αυτή τη μέθοδο.
- Να περιγράφει την κωδικοποίηση Lempel Ziv και τον ρόλο του λεξικού στην κωδικοποίηση και την αποκωδικοποίηση.
- Να περιγράφει τη βασική ιδέα πίσω από το πρότυπο JPEG για τη συμπίεση εικόνων.
- Να περιγράφει τη βασική ιδέα πίσω από το πρότυπο MPEG για τη συμπίεση βίντεο και τη σχέση του με το πρότυπο JPEG.
- Να περιγράφει τη βασική ιδέα πίσω από το πρότυπο MP3 για τη συμπίεση ήχου.
Εργαστήριο 6: Παράδειγμα Σχεσιακής Βάσης και δημιουργία της στο OpenOffice (queries SQL).
Εβδομάδα 7: Ασφάλεια Κρυπτογράφηση (Κεφ. 16)
- Να ορίζει τους τρεις στόχους ασφάλειας — την εμπιστευτικότητα, την ακεραιότητα, και τη διαθεσιμότητα — καθώς και τους τύπους επιθέσεων κατά αυτών των στόχων.
- Να ορίζει τις πέντε υπηρεσίες ασφάλειας — την εμπιστευτικότητα των δεδομένων, την ακεραιότητα των δεδομένων, την πιστοποίηση αυθεντικότητας, τη μη απάρνηση, και τον έλεγχο πρόσβασης — που αποτρέπουν τις επιθέσεις κατά της ασφάλειας.
- Να περιγράφει δύο τεχνικές για την παροχή υπηρεσιών ασφάλειας: την κρυπτογραφία και τη στεγανογραφία.
- Να κατανοεί τις διαφορές μεταξύ της κρυπτογραφίας συμμετρικού κλειδιού και της κρυπτογραφίας ασύμμετρου κλειδιού και να περιγράφει το πώς εξασφαλίζεται η εμπιστευτικότητα με τη χρήση κρυπτογραφικών αλγορίθμων συμμετρικού κλειδιού ή ασύμμετρου κλειδιού.
- Να περιγράφει τον τρόπο με τον οποίο διασφαλίζεται η ακεραιότητα με τη χρήση κρυπτογραφικών συναρτήσεων κατακερματισμού.
- Να κατανοεί την ιδέα των ψηφιακών υπογραφών και το πώς μπορούν να εξασφαλίζουν την ακεραιότητα και την πιστοποίηση αυθεντικότητας μηνυμάτων, και τη μη απάρνηση.
- Να περιγράφει συνοπτικά την πιστοποίηση αυθεντικότητας οντότητας και τις κατηγορίες πειστηρίων: κάτι που είναι γνωστό, κάτι που κατέχεται και κάτι που ενυπάρχει.
- Να περιγράφει τις τέσσερις τεχνικές που χρησιμοποιούνται για την πιστοποίηση αυθεντικότητας οντότητας: την τεχνική που βασίζεται σε κωδικούς πρόσβασης, την τεχνική πρόκλησης-απόκρισης, την τεχνική μηδενικής γνώσης, και τη βιομετρία.
- Να περιγράφει τη διαχείριση κλειδιών.
Εργαστήριο 7: Προγραμματισμός - Εξοικείωση στο περιβάλλον μιας γλώσσας.
Εβδομάδα 8: Θεωρία υπολογισμών (Κεφ. 17)
- Να περιγράφει τη γλώσσα προγραμματισμού που ονομάζουμε Απλή Γλώσσα και να ορίζει τις βασικές εντολές της.
- Να γράφει μακροεντολές στην Απλή Γλώσσα με συνδυασμό απλών εντολών.
- Να περιγράφει τα συστατικά στοιχεία μιας μηχανής Turing ως υπολογιστικού μοντέλου.
- Να δείχνει τον τρόπο προσομοίωσης απλών εντολών στην Απλή Γλώσσα με τη χρήση μιας μηχανής Τuring.
- Να κατανοεί τη θέση Church-Turing και τη σημασία της.
- Να ορίζει τον αριθμό Gödel και την εφαρμογή του.
- Να κατανοεί την έννοια του προβλήματος του τερματισμού και πώς αποδεικνύεται ότι αυτό το πρόβλημα είναι μη επιλύσιμο.
- Να ξεχωρίζει τα επιλύσιμα από τα μη επιλύσιμα προβλήματα.
- Να ξεχωρίζει τα πολυωνυμικά από τα μη πολυωνυμικά επιλύσιμα προβλήματα.
Εργαστήριο 8: Προγραμματισμός - παραδείγματα.
Εβδομάδα 9: Τεχνητή Νοημοσύνη (Κεφ. 18).
- Να ορίζει την τεχνητή νοημοσύνη και να δίνει ένα σύντομο ιστορικό της.
- Να περιγράφει τον τρόπο αναπαράστασης της γνώσης σε έναν ευφυή πράκτορα.
- Να δείχνει πώς μπορούν να χρησιμοποιούνται τα έμπειρα συστήματα όταν δεν υπάρχει διαθέσιμος κάποιος άνθρωπος-ειδικός.
- Να εξηγεί τον τρόπο με τον οποίο μπορεί να χρησιμοποιηθεί ένας τεχνητός πράκτορας για την προσομοίωση κοινότοπων εργασιών που διεκπεραιώνονται από ανθρώπους.
- Να εξηγεί πώς τα έμπειρα συστήματα και τα κοινότοπα συστήματα μπορούν να χρησιμοποιούν διαφορετικές τεχνικές αναζήτησης για την επίλυση προβλημάτων.
- Να εξηγεί πώς μπορεί να προσομοιωθεί, μέχρι κάποιο βαθμό, η διαδικασία μάθησης σε ανθρώπους, με τη χρήση νευρωνικών δικτύων που δημιουργούν ηλεκτρονικά ισοδύναμα των νευρώνων τα οποία ονομάζονται τεχνητοί νευρώνες.
Εργαστήριο 9: Προγραμματισμός σε γλώσσα C - παραδείγματα.
Εβδομάδα 10: Επανάληψη ARDUINO (χρήση emulator).
Εργαστήριο 10: ARDUINO - παρουσίαση της πλατφόρμας, παραδείγματα.
Εβδομάδα 11: Εξέταση Προόδου.
Εργαστήριο 11: ARDUINO - Ασκήσεις υλικού.
Εβδομάδα 12: Λύσεις Προόδου - Ερωτηματολόγιο Αξιολόγησης μαθήματος.
Εργαστήριο 12: ARDUINO - Ασκήσεις λογικού.
Εβδομάδα 13: Εφαρμογές Διαδραστικής Τέχνης.
Εργαστήριο 13: ARDUINO & Διαδραστική Τέχνη.
1. Εισαγωγή στην Επιστήμη των Υπολογιστών, Behrouz A. Forouzan, Firouz Mosharraf
2. Εισαγωγή στην πληροφορική, Beekman George,Quinn Michael J.
Διδασκαλία στην αίθουσα με χρήση PowerPoint & παραδείγματα στο WEB.
Για το εργαστήριο του μαθήματος χρησιμοποιείται ο χώρος του εργαστηρίου Η/Υ του Τμήματος (Αίθουσα 4). Ο εξοπλισμός είναι ποιοτικός και πλήρης. Οι φοιτητές χωρίζονται σε 3 ομάδες.
Το υλικό του μαθήματος (PowerPoint, εργαστηριακές ασκήσεις, εγχειρίδια υπολογιστικού εξοπλισμού και προγραμμάτων εφαρμογών) είναι αναρτημένα στο e-Class.
Παροχή πολυμεσικού υλικού.
Υποστήριξη Μαθησιακής διαδικασίας μέσω της ηλεκτρονικής πλατφόρμας e-class.
- Διαγώνισμα Προόδου. Βπ=βαθμός προόδου.
- θεωρία και ασκήσεις: γραπτή εξέταση (με ανοιχτά βιβλία). Βε=Βαθμός εξέτασης.
- εργαστηριακές ασκήσεις: εξέταση στο εργαστήριο ανά άτομο.
Συνολικός Βαθμός = 70% βαθμού γραπτής εξέτασης (Βπ*0,1+Βε*Βε*0,9) + 30% βαθμού εργαστηρίου
Σημ.1: Καταχωρείται ο συνολικός βαθμός στην Γραμματεία εφόσον τόσο ο βαθμός γραπτής εξέτασης όσο και ο βαθμός εργαστηρίου είναι >= της βάσης (δηλαδή 3,5 & 1,5 αντίστοιχα).
Σημ.2: Το λογισμικό που χρησιμοποιείται είναι οι εφαρμογές MATLAB, Microsoft Access και ARDUINO. Επίσης εξομοιωτής γλώσσας assembly και ARDUINO.
Επιστροφή
<< | < | Νοέμβριος 2024 |
> | >> | ||
Δε | Τρ | Τε | Πε | Πα | Σα | Κυ |
1 |
2 |
3 |
||||
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
Τηλ.: 26610 87860-1 - Fax: 26610 87866
e-mail: audiovisual@ionio.gr