eLearning Ο.Π.Α. - Java Full Stack Web Programming - Πρόγραμμα elearning ΟΠΑ

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

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

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

Έναρξη Μαθημάτων: 13 Οκτωβρίου 2020 Λήξη Εγγραφών: 11 Οκτωβρίου 2020

Java Full Stack Web Programming

Το πρόγραμμα “Java Full Stack Web Programming” δίνει έμφαση στο σχεδιασμό και την ανάπτυξη σύνθετων αντικειμενοστραφών εφαρμογών. Πιο συγκεκριμένα, το παρόν πρόγραμμα καλύπτει το σύνολο της γλώσσας Java, δίνοντας έμφαση σε προηγμένα στοιχεία όπως Interfaces, Generics, Java Collections, UML Design καθώς και Design Patterns δηλαδή καλές πρακτικές προγραμματισμού. Επίσης καλύπτονται θέματα ελέγχου του κώδικα, κανονικές εκφράσεις (regular expressions) καθώς και εργαλεία διαχείρισης εξαρτήσεων (Dependencies Management) όπως το Maven. Η μεγαλύτερη ωστόσο αξία του προγράμματος προέρχεται από την παρουσίαση στρωματοποιημένων μεθοδολογιών ανάπτυξης εφαρμογών (Layered Architectures). Πιο συγκεκριμένα καλύπτονται όλα τα επίπεδα (Full Stack) ανάπτυξης εφαρμογών, όπως Back-End, Front-End και Middle-Layer. Παρουσιάζονται αναλυτικά θέματα σχεδιασμού και υλοποίησης Βάσεων Δεδομένων με τη MySQL, θέματα σχεδιασμού και ανάπτυξης γραφικών διεπαφών με Swing / JavaFX όσο αφορά Desktop Apps και HTML/CSS/JavaScript/AJAX όσο αφορά Web Apps καθώς και θέματα σχεδιασμού και ανάπτυξης του Middle-Layer. Ειδικά στο Middle-Layer παρουσιάζονται σύγχρονες μεθοδολογίες ανάπτυξης μεσαίου και μεγάλου μεγέθους εφαρμογών όπως MVC (Model-View-Controller), MVP (Model-View-Presenter), SOA (Service-Oriented Architecture), DAO (Data Access Object), DTOs (Data Transfer Objects) καθώς και τεχνικές διασύνδεσης του Middle-Layer με τη Βάση Δεδομένων με JDBC (Java Database Connectivity). Όσο αφορά την ανάπτυξη Full Stack Web εφαρμογών παρουσιάζονται οι τεχνολογίες Servlets / JSP (Java Server Pages) / JSTL (Java Standard Tag Library) / JSF (Java Server Faces) ενώ εστιάζουμε και στην επικοινωνία του Front-End με τον Service Layer και στη συνέχεια με το Back-End μέσω JavaScript/AJAX και JSON/XML ενώ παρουσιάζεται και η ανάπτυξη RESTful Web Services μέσω της αρχιτεκτονικής REST (Representational State Transfer). Δίνονται παραδείγματα εφαρμογών ενώ αναπτύσσονται και ολοκληρωμένες εφαρμογές με σκοπό τη δημιουργία ενός επαγγελματικού portfolio στο GitHub, το οποίο θα παρουσιαστεί μαζί με το Git. Το πρόγραμμα περιλαμβάνει παρά πολλά παραδείγματα προγραμματισμού και εφαρμογές καθώς και μία μεγάλη εφαρμογή ανάπτυξης ενός ολοκληρωμένου, Full-Stack, συστήματος διαχείρισης εγγραφών εκπαιδευομένων σε ένα εκπαιδευτικό οργανισμό. Η ανάπτυξη του συστήματος θα παρουσιάσει ταυτόχρονα και με πρακτικό τρόπο και την ιστορική διαδρομή ανάπτυξης στρωματοποιημένων Full Stack αρχιτεκτονικών ξεκινώντας από μονολιθικές αρχιτεκτονικές και φτάνοντας σε MVC, στη συνέχεια MVC με DAO, στη συνέχεια σε SOA με DAO και MVC και DTOs και στη συνέχεια Layered Architectures και Full Stack Web Programming με Servlets/JSP/JSF και HTML/CSS/JavaScript και AJAX. Το πρόγραμμα περιλαμβάνει πάρα πολλά πρακτικά παραδείγματα και εφαρμογές βασισμένα σε βιντεοδιαλέξεις, παρουσιάσεις, και εργασίες. Περιλαμβάνονται επίσης και 12 live τηλεσυνεδρίες μέσω του Microsoft Teams -μία live τηλεσυνεδρία κάθε εβδομάδα διάρκειας 2 ωρών- όπου με αλληλεπιδραστικό τρόπο θα δίνονται παραδείγματα προγραμματισμού καθώς και απαντήσεις σε ερωτήσεις.

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

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

     

Ενότητες

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

  • Αναθεώρηση – Java Programming
  • Ανάγνωση και Έλεγχος κώδικα / Junit / Mockito / TestNG
  • Οργάνωση Προγραμμάτων με Maven / POM.xml / Maven Central
    Repository
  • Κανονικές Εκφράσεις (Regular Expressions)
  • Version Management με το Git και GitHub  

Ενότητα 2: Advanced O-O Programming

  • UML / Interfaces και Design Patterns / Static Factory / POJOs και JavaBeans
  • Singleton / Builder Pattern / Abstract Factory Design Pattern
  • Abstract και Anonymous κλάσεις, Lambdas
  • Mixin Interfaces (Serializable, Cloneable / Runnable / Threads) 

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

  • Java Generics και ArrayList
  • Data Structures & Java Collections Framework (List, Set, Queue, Stack)
  • Maps / HashMap / Comparable / Comparator / Streams API 

Ενότητα 4: Στρωματοποιημένες Μεθοδολογίες Ανάπτυξης Εφαρμογών, Java
                   
Database Connectivity, Ανάπτυξη Εφαρμογών Full Stack

  • Layered Architectures / Client-Server / Two-Tier / Three-Tier
  • Model-View-Controller (MVC) / Data Access Object (DAO) / Service-Oriented Architecture (SOA) / Data Transfer Objects (DTO)
  • Java Database Connectivity (JDBC) / Database Design / SQL / MySQL
  • Front-End Design / Swing / JavaFX / XML
  • Full Stack Desktop Programming 

Ενότητα 5: Java Full Stack Web & Enterprise Programming

  • Java EE / Jakarta EE / Web Containers / Apache Tomcat
  • Servlets / Web.xml / Annotations
  • JSP / JSTL / JSF / Managed Beans
  • HTTP / HTML / HTML Forms / CSS / JavaScript / AJAX / JSON / XML
  • REST / WS (Web Services) / SPA (Single Page Applications)
  • Full Stack Web Programming

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

Η μεγάλη αξία του Προγράμματος έγκειται στο ότι επικεντρώνεται σε δύο σημαντικές γνωστικές περιοχές: (i) στην πλήρη και σε βάθος κατανόηση της γλώσσας Java  και στην παρουσίαση καλών πρακτικών (design patterns) ανάπτυξης λογισμικού καθώς και διαδικασιών ελέγχου του λογισμικού, και (ii) σε στρωματοποιημένες αρχιτεκτονικές ανάπτυξης εφαρμογών. Η ιδιαίτερη αξία του Προγράμματος εντοπίζεται στο ότι παρουσιάζει και αναλύει με συστηματικό τρόπο στρωματοποιημένες μεθοδολογίες ανάπτυξης μεγάλων εφαρμογών λογισμικού, δηλαδή εφαρμογών που επικοινωνούν από τη μια πλευρά με Βάσεις Δεδομένων και από την άλλη με χρήστες που χρησιμοποιούν τις εφαρμογές είτε από τον υπολογιστή ή από το Web.  Οι δεξιότητες που θα αποκτηθούν θα επιτρέψουν στους εκπαιδευόμενους να γίνουν όχι μόνο επιτυχημένοι προγραμματιστές στη Java αλλά και εξαιρετικοί επαγγελματίες στο χώρο της ανάπτυξης λογισμικού. Επίσης, η παρουσίαση και χρήση των Git και GitHub θα δώσει νέα ώθηση και θα αναπτύξει περαιτέρω τις επαγγελματικές δεξιότητες των εκπαιδευομένων ενώ θα τους δώσει και τη δυνατότητα να παρουσιάζουν τις γνώσεις τους σε μελλοντικούς εργοδότες μέσα από τα project τους στο GitHub.

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

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

  1. Να παράσχει στους εκπαιδευόμενους προηγμένες και εξειδικευμένες γνώσεις και δεξιότητες στον αντικειμενοστραφή προγραμματισμό με Java.
  2. Να αποκτήσουν οι εκπαιδευόμενοι πρακτική εμπειρία στη ανάπτυξη Full Stack Desktop & Web εφαρμογών με τη χρήση στρωματοποιημένων αρχιτεκτονικών προσεγγίσεων στην ανάπτυξη λογισμικού, όπως MVC, MVP, DAO, DTO, και SOA καθώς και Web τεχνολογιών όπως Servlets / JSP / JSF τόσο μέσα από μια σειρά παραδειγμάτων και εργασιών όσο και μέσα από μια μεγάλη εφαρμογή που θα αναπτύξουν η οποία θα ενοποιεί τις γνώσεις και δεξιότητες που έχουν αποκτήσει.
  3. Να δημιουργήσουν οι εκπαιδευόμενοι ένα portfolio στο GitHub για την προσωπική και επαγγελματική τους εξέλιξη.  

Διδάσκοντες

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

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

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

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

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

Newsletter

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

Log in

create an account