-
Το μάθημα συνιστά μία εισαγωγή στις βασικές αρχές της Αλγοριθμικής και του Αντικειμενοστρεφή Προγραμματισμού. Επιμέρους στόχους του μαθήματος συνιστούν (α) η ανάπτυξη δεξιοτήτων και ικανοτήτων σχετικών με την αλγοριθμική και (β) η εκμάθηση των βασικών αρχών του αντικειμενοστρεφή προγραμματισμού, χωρίς να απαιτείται προηγούμενη προγραμματιστική εμπειρία. Το μάθημα χρησιμοποιεί τις δυνατότητες προγραμματισμού που παρέχει η γλώσσα Java για την υλοποίηση απλών αλγορίθμων και την σταδιακή εκμάθηση των βασικών αρχών του αντικειμενοστρεφή προγραμματισμού μέσω μικρών προγραμμάτων και εργασιών. Αναλυτικότερα το εισαγωγικό αυτό μάθημα:
● Παρέχει στους φοιτητές τις βάσεις των αρχών της αλγοριθμικής και του προγραμματισμού.
● Συμβάλει στην κατανόηση του περιβάλλοντος και των χαρακτηριστικών της Java.
● Παρέχει προγραμματιστική εμπειρία ικανή για την υλοποίηση απλών αλγορίθμων αλλά και απλών πρακτικών εφαρμογών.
● Συμβάλει στην υλοποίηση απλών αντικειμενοστρεφών προγραμμάτων.
● Παρέχει το υπόβαθρο για την περαιτέρω εμβάθυνση στον Αντικειμενοστρεφή Προγραμματισμό του 2ου εξαμήνου αλλά και την εκμάθηση άλλων γλωσσών προγραμματισμού.
Με την επιτυχή ολοκλήρωση του μαθήματος ο φοιτητής / τρια θα είναι σε θέση να:
● Κατανοεί την δομές των αλγορίθμων και των προγραμματιστικών προβλημάτων
● Αναγνωρίζει και ερμηνεύει τα δεδομένα ενός προβλήματος
● Μαθαίνει και εφαρμόζει αλγορίθμους και εντολές προγραμματισμού για την επίλυση προβλημάτων
● Εξασκείται στην επίλυση απλών προβλημάτων
● Αξιολογεί και συμπεραίνει από τις λύσεις των προβλημάτων
● Πρακτική εξάσκηση στο εργαστήριο
● Αυτόνομη επίλυση των ασκήσεων της ημέρας
● Σχολιασμός στην τάξη συνηθισμένων περιπτώσεων λαθών στις ασκήσεις του μαθήματος
● Άσκηση κριτικής και επαγωγικής σκέψης
Τα θέματα που καλύπτει το μάθημα (θεωρητικό και εργαστηριακό μέρος) είναι:
● Εισαγωγή στην Αλγοριθμική, στον Αντικειμενοστρεφή Προγραμματισμό και στη Java
● Βασικοί τύποι δεδομένων – Τελεστές – Σταθερές – Μεταβλητές
● Κλάσεις – Αντικείμενα – Δομητές – Τελεστής new
● Περισσότερα για τις κλάσεις και τα αντικείμενα – Στατικές μέθοδοι
● Είσοδος – Έξοδος – Εξαιρέσεις
● Συνθήκες: Εντολές if, switch, τριαδικός τελεστής ?:
● Εντολές επανάληψης κώδικα (Loops): while, do…while, for
● Μέθοδοι – Η κλάση Math
● Πίνακες (Arrays)
● Συμβολοσειρές (Strings) – Αρχεία κειμένου
● Generics – ArrayList
● Διανύσματα (Vectors)
● Επανάληψη κλάσεων – Στατικών μεθόδων – Χρήση Συνθέτων Αλγορίθμων
Στην τάξη και στο εργαστήριο
Εκτενής χρήση αρχείων παρουσίασης θεωρίας και
ασκήσεων μέσω videoprojector.
Περαιτέρω υποστήριξη της μαθησιακής διαδικασίας
μέσω της ιστοσελίδας του μαθήματος.
Χρήση εξειδικευμένου λογισμικού (Netbeans, Eclipse, κλπ.)
Δραστηριότητα | Φόρτος Εργασίας Εξαμήνου |
Διαλέξεις | 13 x 2 = 26 |
Ασκήσεις Πράξης | 13 x 2 = 26 |
Εργαστήριο | 13 x 2 = 26 |
Επικοινωνία/συνεργασία | 3 |
Αυτοτελής μελέτη | 18×5.5=99 |
Σύνολο Μαθήματος (30 ώρες φόρτου εργασίας ανά πιστωτική μονάδα) | 180 |
Ι. Γραπτή τελική εξέταση (60%) στο θεωρητικό μέρος του
μαθήματος που περιλαμβάνει:
– Ερωτήσεις πολλαπλής επιλογής
– Ασκήσεις που αφορούν απλούς αλγορίθμους και προβλήματα σε Java
ΙΙ. Εξάσκηση στο εργαστήριο (40%)
– Ασκήσεις για πρακτική εξάσκηση, ανά 2 εβδομάδες – Τελική εξέταση στο εργαστηριακό μέρος του
μαθήματος με ασκήσεις σύνταξης κώδικα σε Java
Το ως άνω σχήμα αξιολόγησης στο θεωρητικό και στο
εργαστηριακό μέρος του μαθήματος γνωστοποιείται στους ενδιαφερόμενους φοιτητές με τους ακόλουθους τρόπους: α) κατά την πρώτη διάλεξη, β) στην ιστοσελίδα του μαθήματος και γ) με γραπτές ανακοινώσεις εξαμήνου στην Hydra
1) Herbert Schildt. Οδηγός της Java 2, Εκδόσεις Γκιούρδας (Διανέμεται στο μάθημα)
2) Walter Savich, Absolute Java, Pearson 2 (Διανέμεταιστομάθημα)
3) Harvey M. Deitel και Paul J. Deitel. Java Προγραμματισμός, 6η έκδοση. Εκδόσεις Μ. Γκιούρδας, Αθήνα 2005.
4) Γιώργος Λιακέας Εισαγωγή στην Java. σ. 153, 172-173 371-412, Εκδόσεις Κλειδάριθμος 2001.
5) Γιάννη Κάβουρα. Προγραμματισμός με Java. Εκδόσεις Κλειθάριθμος, Αθήνα 2003.
6) Else Lervik και Vegard B. Havdal Java με UML. Εκδόσεις Κλειδάριθμος 2005.
7) Rogers Cadenhead και Laura Lemay Πλήρες εγχειρίδιο της Java 2 Εκδόσεις Μ. Γκιούρδας, Αθήνα 2003.
1) Java Programming, Wiki, free open book, http://en.wikibooks.org/wiki/Java_Programming
2) Java in a Nutshell: A Desktop Quick Reference for Java Programmers, David Flanagan,
O’Reilly & Associates, Inc.
3) Thinking in Java, Bruce Eckel, Prentice Hall.
4) The Java Programming Language, 2nd Edition, Ken Arnold, James Gosling,
Publisher: Addison-Wesley.
5) Teach Yourself Java 1.1 Programming in 24 Hours, Rogers Cadenhead, Sams.net
6) Inside Java, Karanjit S. Siyan , James L. Weaver, New Riders Publishing.