Software programming principles, algorithms and computations with Java

Οι εγγραφές έχουν ξεκινήσει!!

Έναρξη Μαθημάτων: 23 Σεπτέμβρη 2019

Διευθυντής Προγράμματος: Dr. Ioannis Nikolakopoulos (in)

Το πρόγραμμα είναι πιστοποιημένο από το Athens Tech College, το πρώτο εκπαιδευτικό ίδρυμα στην Ελλάδα προσανατολισμένο σε σπουδές πληροφορικής & τεχνολογίας.

Εκδήλωσε το ενδιαφέρον σου τώρα και κλείσε την θέση σου!

Express Your Interest

Description

Γιατί να παρακολουθήσω το πρόγραμμα

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

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

Τετράμηνο Α

Εισαγωγή στον προγραμματισμό με Java.

  • Βασικά στοιχεία προγράμματος.
  • Χρήση του περιβάλλοντος ανάπτυξης εφαρμογών (IDE).
  • Τύποι δεδομένων.
  • Μεταβλητές & Ανάθεση τιμών.
  • Είσοδος και έξοδος προγράμματος.
  • Εκφράσεις και Τελεστές.
  • Προτεραιότητα τελεστών
  • Δημιουργία του πρώτου προγράμματος σε Java
  • Λογικές μεταβλητές.
  • Λογικές συνθήκες.
  • Λογικές πράξεις.
  • Βασικές μαθηματικές συναρτήσεις
  • Εισαγωγή δεδομένων από το πληκτρολόγιο

Έλεγχος ροής προγράμματος.

  • Απλή εντολή ελέγχου.
  • Σύνθετη εντολή ελέγχου
  • Τριαδικός τελεστής
  • Δομή πολλαπλής διακλάδωσης switch
  • Εντολές επανάληψης – βρόχοι (for, while, do-while)
  • Ένθετοι βρόχοι
  • Εντολή break
  • Εντολή continue
  • Η έννοια της μεθόδου
  • Ορισμός, δήλωση και κλήση μεθόδου.
  • Εμβέλεια μεταβλητών.

Εισαγωγή στα αλφαριθμητικά

  • Πράξεις με αλφαριθμητικά
  • Προσπέλαση μεμονωμένων χαρακτήρων – εύρεση μήκους αλφαριθμητικού
  • Αντικατάσταση χαρακτήρων σε αλφαριθμητικό
  • Μετατροπή άλλων τύπων δεδομένων σε αλφαριθμητικά, και το αντίστροφο
  • Η κλάση StringBuffer

Τετράμηνο Β

Εισαγωγή στις Κλάσεις και τα Αντικείμενα

  • Τι είναι κλάση
  • Τι είναι αντικείμενο
  • Πως ορίζουμε μια κλάση
  • Η μεταβλητή this
  • Δημιουργία αντικειμένων με κατασκευαστές κλάσης
  • Πολλαπλοί κατασκευαστές
  • Τι είναι τα πακέτα
  • Τυπικά πακέτα της Java
  • Μέθοδοι και κλάσης αφηρημένου τύπου

Εισαγωγή στον Αντικειμενοστραφή Προγραμματισμό

  • Περιγραφή προβλήματος
  • Μεταβλητές μέλη
  • Ορατότητα (visibility)
  • Δημιουργία αντικειμένων
  • Δημιουργία μεθόδων σε κλάσεις
  • Υπερφόρτωση (overloading) μεθόδων
  • Μέθοδοι ανάθεσης (Setters) και ανάκτησης (Getters)
  • Στατικά μέλη και μέθοδοι
  • Απαρίθμητοι τύποι (enumerated values)

Περεταίρω εμβάθυνση στον Αντικειμενοστραφή Προγραμματισμό

  • Κληρονομικότητα
  • Κλάσεις, υπερκλάσεις και υποκλάσεις
  • Σχέσεις «είναι» και «έχει» (has-a)
  • Αντιμείμενο Object
  • Υπερκάλυψη (overloading) μεθόδων
  • Τελικές κλάσεις
  • Πολυμορφισμός
  • Αφηρημένες (abstract) κλάσεις
  • Διεπαφές (inrerfaces)
  • Εσωτερικές κλάσεις

Τετράμηνο Γ

Εισαγωγή στις Συλλογές

  • Διεπαφή Collection
  • Διεπαφή List
  • Διεπαφή Set
  • Διεπαφή Map
  • Συχνά χρησιμοποιούμενες κλάσεις: ArrayList, HashSet, HashMap
  • Προσπέλαση συλλογών με βρόχο for και με Iterators

Χειρισμός εξαιρέσεων και λαθών

  • Τι είναι οι εξαιρέσεις (exceptions)
  • Εξαιρέσεις ως μοντέλο προγραμματισμού
  • Μπλοκ try-catch-finally
  • Εντολή throw
  • Συχνά χρησιμοποιούμενες εξαιρέσεις
  • Χειρισμός εξαιρέσεων
  • Δημιουργία νέων εξαιρέσεων
  • Διάδοση εξαιρέσεων
  • Τύποι εξαιρέσεων

Διαχείριση Αρχείων

  • Έννοια της ροής δεδομένων
  • Βασικά ρεύματα εισόδου – εξόδου
  • Ρεύματα εξόδου σε αρχεία κειμένου
  • Εξαίρεση FileNotFoundException για τη διαχείριση της περίπτωσης μη εύρεσης αρχείου
  • Εγγραφή σε αρχείο κειμένου
  • Προσάρτηση επιπλέον δεδομένων σε υπάρχων αρχείο κειμένου
  • Ανάγνωση από αρχείο κειμένου
  • Η κλάση File

Τετράμηνο Δ

Πολυνηματική επεξεργασία (multithreading)

  • Τι είναι το νήμα (thread)
  • Δημιουργία νήματος
  • Η κλάση Thread
  • Συγχρονισμός (synchronization)
  • Προτεραιότητες (priorities)
  • Κύκλος ζωής νήματος
  • Αδιέξοδο (deadlock)
  • Σύνολα νημάτων (thread pools)

Σχεδιασμός Γραφικού Περιβάλλοντος (Graphical User Interface – GUI)

  • Τι είναι το γραφικό περιβάλλον
  • Εισαγωγή στο Java Swing
  • Διαχειριστές διάταξης (layout managers)
  • Κουμπιά διαταγών
  • Πλαίσιο
  • Πεδίο και περιοχή κειμένου
  • Πλαίσια ελέγχου και ραδιοπλήκτρα
  • Επιλογή αρχείων
  • Δημιουργία μενού
  • Χειρισμός συμβάντων (event handling)
  • Παράθυρα διαλόγων (dialog boxes)

Διαδικτυακός Προγραμματισμός

  • Το μοντέλο πελάτης – εξυπηρετητής (client – server)
  • Κλάση Socket
  • Κλάση ServerSocket
  • Τι είναι τα Datagrams
  • Κλάση DatagramSocket

Η διάρκεια του προγράμματος

  • Το πρόγραμμα ολοκληρώνεται σε 4 τετράμηνα.
  • Τα μαθήματα ξεκινούν 23 Σεπτέμβρη 2019 και θα πραγματοποιούνται 18.00-20.00 μία φορά την εβδομάδα.
  • Χειμερινό Τετράμηνο: 23-Σεπτέμβρη-19 μέχρι 23-Γενάρη-19
  • Εαρινό Τετράμηνο: 3-Φλεβάρη-19 μέχρι 29-Μαΐου-19

Μαθητές στους οποίους απευθυνόμαστε

  • Το πρόγραμμα απευθύνεται σε μαθητές A’ & B’ Λυκείου.

Προαπαιτούμενες γνώσεις

  • Η εκπαίδευση αυτή προσφέρει μια ολοκληρωμένη προσέγγιση αντικειμενοστραφούς προγραμματισμού με χρήση της γλώσσας προγραμματισμού Java και δεν απαιτεί προηγούμενες γνώσεις.

Express Your Interest

Additional information

Φορέας Πιστοποίησης:

Athens Tech College

Εγκαταστάσεις:

Code.Hub & Athens Tech College
Leof. Alexandras 205, Athina 115 23
https://goo.gl/maps/wYqc3TG9iEhi8HiA9