Χαροκόπειο Πανεπιστήμιο
Σχολή: Ψηφιακής Τεχνολογίας
Τμήμα: Πληροφορικής και Τηλεματικής
Πρόγραμμα: Information Technology

Προηγμένα Πλαίσια Προγραμματισμού και Διεπαφές API

Εξάμηνο: 7 ECTS: 7.5 Κατ’ επιλογήν Erasmus

Γενικά

Κωδικός: BSC_IT31

Γλώσσα: Αγγλικά

Τρόπος διδασκαλίας: Δια ζώσης

Προαπαιτούμενα: Javascript, HTTP protocol

Φόρτος εργασίας

  • Διαλέξεις: 52.0 ώρες
  • Εργαστήριο: 0.0 ώρες
  • Μελέτη: 65.5 ώρες
  • Εργασία: 70.0 ώρες

Περιεχόμενο Μαθήματος

Ανοικτά Δεδομένα και APIs Έξυπνων Πόλεων, Υπηρεσίες διαδικτύου (Internet services) και υλοποιήσεις προσανατολισμένες στις υπηρεσίες (SOA), πρωτόκολλο REST, Ενορχήστρωση υπηρεσιών (Service orchestration) και ροές εργασίας (workflows), Επίπεδα Αφαίρεσης (Abstraction Layers), Εφαρμογές από την ενσωμάτωση υπηρεσιών, Το μοντέλο προστιθέμενης αξίας DIKW (Δεδομένα, Πληροφορία, Γνώση, Σοφία), Αρχιτεκτονικές L, κοινά εργαλεία ανοικτού κώδικα ανά περίπτωση. Μελέτη περίπτωσης του Έξυπνου Πανεπιστημίου στο Χαροκόπειο.

Συστήματα ανταλλαγής μηνυμάτων (Messaging systems), ασύγχρονες ειδοποιήσεις, το πρωτόκολλο AMQP, σχεδιασμός, προσαρμογή και λειτουργία συστημάτων μηνυμάτων, εξουσιοδότηση και διαχωρισμός ροής δεδομένων.

Εισαγωγή στον σχεδιασμό εφαρμογών καθοδηγούμενων από συμβάντα (event-driven design), η έννοια της υπολογιστικής χωρίς εξυπηρετητές (serverless computing), ενοποίηση serverless συναρτήσεων με εξωτερικά συστήματα και λογική εφαρμογών.

Μαθησιακά Αποτελέσματα

Σκοπός του μαθήματος είναι να εισαγάγει τους φοιτητές σε προηγμένες διαδικασίες προγραμματισμού στο πλαίσιο διαδικτυακών πηγών δεδομένων. Αυτό περιλαμβάνει τη χρήση διεπαφών προγραμματισμού εφαρμογών (APIs) ανοικτών δεδομένων με διαφορετικό περιεχόμενο (π.χ. έξυπνη πανεπιστημιούπολη, έξυπνες πόλεις, έξυπνες εγκαταστάσεις γενικότερα) και τη δημιουργία αρχιτεκτονικών λογισμικού που αξιοποιούν και διανέμουν δεδομένα και συμβάντα για πλήθος σκοπών. Το μάθημα περιλαμβάνει επίσης εισαγωγή σε προηγμένες προγραμματιστικές προσεγγίσεις, όπως η υπολογιστική χωρίς εξυπηρετητές (serverless computing) και οι αρχιτεκτονικές καθοδηγούμενες από συμβάντα (event-driven architectures), προκειμένου να διευκολυνθεί η δημιουργία κατ' απαίτηση (on-demand), κλιμακώσιμων και εγγενών στο υπολογιστικό νέφος (cloud native) λύσεων για τις παραπάνω κατηγορίες εφαρμογών.

Δεξιότητες

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