Πολύ σημαντικό μέρος του μαθήματος είναι οι εβδομαδιαίες προγραμματιστικές εργασίες. Μέσω των εργασιών αυτών θα αναπτύξετε τις προγραμματιστικές και αναλυτικές σας δεξιότητες.
Κάθε προγραμματιστική άσκηση πρέπει να εκπονείται ατομικά, εκτός αν δοθούν διαφορετικές οδηγίες. Εργασίες που παραδίδονται μετά την προθεσμία, μπορεί να μη ληφθούν υπόψη ή να μην λάβουν όλες τις μονάδες που τους αντιστοιχούν. Η κάθε εργασία αποτελείται από:
- Σύντομη τεκμηρίωση της σχεδίασης του προγράμματος, στην οποία να δίνεται η διάσπαση του προβλήματος σε υποπροβλήματα, και η ανάλυση των αλγορίθμων των κυριοτέρων υποπροβλημάτων.
- Λίστα του κώδικα (σημειώνεται ότι σχόλια μέσα στον κώδικα αποτελούν αναγκαίο στοιχείο).
- Λίστα της δοκιμής του κώδικα.
Κάθε πρόγραμμα υποβάλλεται σε ηλεκτρονική μορφή μέσω ηλεκτρονικού ταχυδρομείου ή του σχετικού εργαλείου τηλεμάθησης που στηρίζει το μάθημα, όπως ορίζεται κατά περίπτωση στην εκφώνηση της σχετικής άσκησης. Η ανταλλαγή απόψεων πάνω στις πρακτικές ασκήσεις συνιστάται. Τονίζεται, όμως, ότι η αντιγραφή κώδικα, ή η παροχή κώδικα προς αντιγραφή, ή η τροποποίηση των αποτελεσμάτων της δοκιμής του κώδικα, αποτελούν πράξεις δόλου που στην καλύτερη περίπτωση οδηγούν σε μηδενισμό. Οι ασκήσεις διορθώνονται και αξιολογούνται με βάση τα ακόλουθα κριτήρια:
- Ορθότητα: Ένα πρόγραμμα που δεν δίνει τη σωστή απάντηση δεν έχει καμία αξία. Βεβαιωθείτε ότι έχετε ελέγξει την ορθότητα του προγράμματος σας πριν να το παραδώσετε.
- Σαφήνεια: Ο αλγόριθμος που χρησιμοποιείται πρέπει να περιγράφεται με σαφήνεια και ο κώδικας Java να είναι υλοποιημένος καθαρά έχοντας εισαγάγει κατάλληλα σχόλια μέσα στο πρόγραμμα.
- Χρήση Προηγμένων Τεχνικών: Γνωρίζοντας ότι υπάρχουν πολλοί αλγόριθμοι που οδηγούν στη λύση ενός συγκεκριμένου προβλήματος θα επιβραβεύονται εκείνοι οι αλγόριθμοι που κάνουν χρήση “έξυπνων” και προηγμένων τεχνικών που καταλήγουν στο ζητούμενο γρηγορότερα και με την λιγότερη κατανάλωση πόρων.
Oι διδάσκοντες διατηρούν το δικαίωμα της δειγματοληπτικής προφορικής εξέτασης των εργασιών. Συνιστάται στους/στις φοιτητές/φοιτήτριες να κρατούν τις προγραμματιστικές εργασίες τους μέχρι την ολοκλήρωση του μαθήματος.
Οδηγίες
Ανακοινώσεις των εργασιών και διευκρινίσεις θα γίνονται μέσω του διαδικτυακού φόρουμ του μαθήματος στην υπηρεσία Piazza.