3135 Εισαγωγή στην Επιστήμη των Υπολογιστών

Υποχρεωτικό Μάθημα Πυρήνα, Α’ εξάμηνο, 6 μονάδες ECTS                      

URL: https://eclass.aueb.gr/courses/INF111/

Διδάσκων: Καθηγητής Ιορδάνης Κουτσόπουλος

Περιεχόμενο

Αλγόριθμοι και αρχές προγραμματισμού υπολογιστών (βασική λογική, στοιχειοποίηση, ακολουθία, επανάληψη, αναδρομή, αποδοτικότητα αλγορίθμων). Δομές δεδομένων (πίνακες, λίστες, στοίβες, δέντρα). Θεωρία υπολογισμού (υπολογισιμότητα και πολυπλοκότητα, κλάσεις P και NP). Αρχιτεκτονική υπολογιστών (λογικές πύλες, εκτέλεση εντολών, μνήμη, αρχιτεκτονική μηχανής, γλώσσα μηχανής, μεταβίβαση παραμέτρων, μονάδες εισόδου/εξόδου). Γλώσσες προγραμματισμού (γραμματικές, συντακτική ανάλυση, μεταγλωττιστές). Λειτουργικά συστήματα (διεργασίες, χρονοπρογραμματισμός). Συστήματα αρχείων και βάσεων δεδομένων. Δίκτυα υπολογιστών και Διαδίκτυο (βασικά πρωτόκολλα διαδικτύου, HTML, TCP, WiFi).

Μαθησιακά Αποτελέσματα

Μετά την επιτυχή ολοκλήρωση του μαθήματος, οι φοιτητές θα είναι σε θέση:

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

Προαπαιτούμενα Μαθήματα

Δεν υπάρχουν υποχρεωτικά προαπαιτούμενα μαθήματα. Όμως, απαιτείται καλή γνώση των μαθημάτων Πληροφορικής όλων των τάξεων του Λυκείου.

Συνιστώμενη Βιβλιογραφία

  • Η Επιστήμη των Υπολογιστών: Μια ολοκληρωμένη παρουσίαση, J. G. Brookshear (μετάφραση από αγγλικό πρωτότυπο), 10η έκδοση, Εκδόσεις Κλειδάριθμος, 2009.
  • Εισαγωγή στην Σύγχρονη Επιστήμη των Υπολογιστών, L. Goldschlager, A. Lister (μετάφραση από αγγλικό πρωτότυπο), Εκδόσεις Δίαυλος, 2000.
  • Εισαγωγή στην Επιστήμη των Υπολογιστών, B. Forouzan, F. Mosharraf (μετάφραση από αγγλικό πρωτότυπο), 3η έκδοση, Εκδόσεις Κλειδάριθμος, 2015.

Διδακτικές και Μαθησιακές Μέθοδοι

Διαλέξεις (2 διαλέξεις των 2 ωρών εβδομαδιαίως), εργαστηριακές διαλέξεις (1 φροντιστήριο των 2 ωρών εβδομαδιαίως), εργαστηριακές ασκήσεις και προαιρετικά ομαδικές ασκήσεις στο σπίτι.

Μέθοδοι Αξιολόγησης/Βαθμολόγησης

Ο τελικός βαθμός είναι ο σταθμισμένος μέσος όρος του βαθμού της γραπτής τελικής εξέτασης (με βάρος 70%) και του βαθμού της προφορικής εξέτασης στο εργαστήριο (με βάρος 30%).