eLearning Ο.Π.Α. - Διοίκηση Μικρομεσαίων Επιχειρήσεων Παροχής Υπηρεσιών

eLearning Οικονομικού Πανεπιστημίου Αθηνών

Πατήστε για να ενημερώνεστε για το πρόγραμμα

Συνεχίστε να μαθαίνετε νέα για το πρόγραμμα, συμπληρώνοντας την ηλεκτρονική σας διεύθυνση.

Έναρξη Μαθημάτων: Φεβρουάριος 2020 Λήξη Εγγραφών: Φεβρουάριος 2020

Java: Από το Α στο Ω – Advanced Level

Το παρόν πρόγραμμα αποτελεί συνέχεια του Java Α-Ω: Entry-to-Mid Level και δίνει έμφαση στο σχεδιασμό και την ανάπτυξη σύνθετων αντικειμενοστραφών εφαρμογών μέσα από πρακτικά παραδείγματα βασισμένα σε βιντεοδιαλέξεις, σημειώσεις, ασκήσεις αυτοαξιολόγησης, εργαστήρια και εργασίες καθώς και άλλες εκπαιδευτικές δραστηριότητες.

Σε ποιους απευθύνεται

  • Εκπαιδευόμενοι που επιθυμούν να αναπτύξουν τις προσωπικές ή επαγγελματικές τους δεξιότητες στο επίπεδο του Advanced Programming.

  • Το πρόγραμμα προτείνεται και σε όσους θέλουν να συνεχίσουν σε επίπεδο ανάπτυξης εφαρμογών με Βάσεις Δεδομένων με το Πρόγραμμα Java Α-Ω: Full Stack Level και να εκπαιδευτούν στην ανάπτυξη full stack εφαρμογών, δηλ. εφαρμογών με Βάση Δεδομένων, Γραφική Διεπαφή και Γεγονοστρεφή Προγραμματισμό.

     

Ενότητες

Ενότητα 1 – Αναθεώρηση, Ανάγνωση και Έλεγχος κώδικα, Κανονικές εκφράσεις

  1. Αναθεώρηση – Java Entry-to-Mid Level Programmer
    • Η γλώσσα Java, Δομημένος Προγραμματισμός
    • Αντικειμενοστραφής Προγραμματισμός
    • Ενθυλάκωση, Κληρονομικότητα Κλάσεων και Πολυμορφισμός
    • Παραδείγματα Προγραμματισμού
  2. Ανάγνωση και Έλεγχος κώδικα
    • Ανάγνωση Κώδικα (Code Reading)
    • Έλεγχος κώδικα
    • Unit Test με το Junit
  3. Regular Expressions
    • Κανονικές εκφράσεις και patterns
    • Equals vs matches
    • Περιοχές χαρακτήρων, μεταχαρακτήρες και ποσοδείκτες
    • Pattern / Matcher
    • Groups, Split, Replace

Ενότητα 2 – Interfaces, Abstract Κλάσεις, Lambda Expressions

  1. Interfaces και UML
    • Interfaces, API και Design by Contract
    • Σχεδιασμός με UML
    • Κληρονομικότητα Interfaces
    • Marker Interfaces, Functional Interfaces
    • Default, Static, Private Μέθοδοι σε Interfaces
    • Skeletal implementation
  2. Abstract Classes, Anonymous classes, Μέθοδοι callback, Lambdas, Shallow vs Deep Copy, Object Utilities και Mixin Interfaces
    • Abstract Μέθοδοι, Κλάσεις, Skeletal Implementation
    • Interfaces vs Abstract κλάσεις, Ανώνυμες Κλάσεις
    • Callback Μέθοδοι, Lambda Expressions και Functional Interfaces
    • Η Κλάση Object, Mixin interfaces, το interface Cloneable
    • Shallow copy vs Deep Copy vs Copy Constructors
    • Object utility methods: equals() και hashCode()
    • Το interface Serializable

 

 

Ενότητα 3 – Δομές Δεδομένων και Java Collection Framework

  1. Java Data Structures, Αναδρομή και Time Complexity
    • Γραμμικές λίστες, Πίνακες, Δυναμικές λίστες
    • Στοίβα, Ουρές, Δένδρα, Δυαδικά δένδρα αναζήτησης, AVL-δένδρα
    • Σωροί, Β, Β+ Δένδρα
    • Γραφήματα, Αλγόριθμοι Διάσχισης DFS, BFS
    • Αλγόριθμοι και Πολυπλοκότητα, Συμβολισμός Ο (Big O Notation)
    • Αναδρομικά Προβλήματα, Διαίρει και Βασίλευε
    • Αναδρομικό Παραγοντικό, Fibonacci
    • Αλγόριθμοι αναζήτησης και ταξινόμησης
    • MergeSort, QuickSort, Selection Sort, Bubble Sort, Heap Sort
  2. Java Generics & Java Collections Framework
    • Java Generics, Δηλώσεις τύπων, Άνω φράγματα
    • Γενικές Μέθοδοι, ο χαρακτήρας ?
    • Type Erasure
    • Java Collections Framework
    • Interface Collection, List, Set, Queue
    • ArrayList, LinkedList
    • Set, HashSet, TreeSet
    • Queue, PriorityQueue
    • Stack, Deque
    • Collection sort
  3. Maps, HashMap
    • Υλοποίηση HashMap
    • HashMap buckets, Initial capacity και Load factor
    • Μέθοδοι HashMap
    • Διάσχιση HashMap, Αναζήτηση σε HashMap
    • TreeMap, LinkedHashMap
  4. Comparable, Comparator
    • Interface Comparable
    • Ταξινόμηση αντικειμένων με την compateTo()
    • Comparator και η μέθοδος compare()
    • Ταξινομήσεις
    • Natural Ordering

Ενότητα 4 – Java Database Connectivity, Ανάπτυξη Προγραμμάτων και Διαχείριση Εκδόσεων με το Git

  1. Java Database Connectivity
    • Περιγραφή JDBC, JDBC Drivers
    • Αρχιτεκτονική JDBC
    • JDBC API, Packages, JDBC Connection
    • JDBC Statement, ResultSet, Queries και εφαρμογές
  2. Εφαρμογές, παραδείγματα και διανομή εφαρμογών με αρχεία jar
    • Packages
    • Βήματα για deployment και διανομή εφαρμογών
    • Αρχεία jar και εκτελέσιμα jars
    • Maven 

Ενότητα 5 – Git και GitHub

  1. Version Management με το Git και GitHub
    • Version Control
    • Centralized vs Decentralized Αρχιτεκτονικές
    • Git και GitHub
    • Ασφάλεια Δεδομένων
    • Git workflow
    • Linux-based εντολές και διαχείριση
    • Global Configuration
    • Repositories και Cloning
    • Ο συντάκτης κειμένου vi
    • Παραδείγματα και εφαρμογές

Η «αξία» του προγράμματος

Η καρδιά του προγράμματος είναι ο κώδικας και η ανάπτυξη λογισμικού. Οι δεξιότητες που θα αποκτηθούν θα επιτρέψουν στους εκπαιδευόμενους να μπορούν να κατανοήσουν εύκολα κάθε γλώσσα προγραμματισμού και να γίνουν όχι μόνο επιτυχημένοι προγραμματιστές αλλά και επαγγελματίες στο χώρο των τεχνολογιών της πληροφορίας.

Γιατί να το παρακολουθήσει κάποιος

Το μάθημα αυτό έχει ως στόχο να:

  1. Να παράσχει στους εκπαιδευόμενους προηγμένες εξειδικευμένες γνώσεις και δεξιότητες στον αντικειμενοστραφή προγραμματισμό Η/Υ με java όπως ο σχεδιασμός με UML και ανάπτυξη σύνθετων εφαρμογών.
  2. Να διδάξει στους εκπαιδευόμενους σύγχρονα εργαλεία και τεχνικές όπως JUnit για έλεγχο εφαρμογών, Maven και Git

Διδάσκοντες

ΑΘΑΝΑΣΙΟΣ ΑΝΔΡΟΥΤΣΟΣ
Επιστημονικός υπεύθυνος προγράμματος
ΕΔΙΠ Σχολής Επιστημών και Τεχνολογίας της Πληροφορίας, ΟΠΑ
 
ΑΝΝΑ ΓΙΑΝΝΟΥΤΣΟΥ
BSc Informatics, MSc Advanced Informatics and Computing Systems
 

Πιστοποιητικό Παρακολούθησης

Στους εκπαιδευόμενους που θα ολοκληρώσουν επιτυχώς το πρόγραμμα χορηγείται Πιστοποιητικό Επαγγελματικής Εκπαίδευσης και Κατάρτισης, το οποίο συνοδεύεται από Συμπλήρωμα του Πιστοποιητικού, στο οποίο αναφέρονται αναλυτικά το αντικείμενο του προγράμματος, οι θεματικές ενότητες που παρακολούθησε ο εκπαιδευόμενος, καθώς και η μεθοδολογία εκπαίδευσης που ακολουθήθηκε.

 

Στοιχεία Επικοινωνίας

  • elearning.aueb.gr
  • Αυτή η διεύθυνση ηλεκτρονικού ταχυδρομείου προστατεύεται από τους αυτοματισμούς αποστολέων ανεπιθύμητων μηνυμάτων. Χρειάζεται να ενεργοποιήσετε τη JavaScript για να μπορέσετε να τη δείτε.
  • 210 8203753 (12.00-15.00)
  • Κεφαλληνίας 46, Αθήνα 11251

Newsletter

  • Τα προγράμματά μας ανανεώνονται συνεχώς. Αφήστε μας το email σας να σας ενημερώνουμε.

Log in

create an account

fb iconLog in with Facebook