Περιγραφή του μαθήματος
Το μάθημα αυτό για την ανάπτυξη διαδικτυακών εφαρμογών με το Flask απευθύνεται σε ανθρώπους που θέλουν να δημιουργήσουν εύκολα και γρήγορα κάτι περισσότερο από απλές στατικές ιστοσελίδες στο διαδίκτυο.
Εκμεταλλευόμενοι τις σύγχρονες τεχνολογίες του διαδικτύου και τις δυνατότητες που μας προσφέρει το Flask, η γλώσσα Python, οι βάσεις δεδομένων και άλλα πολύ χρήσιμα σύγχρονα εργαλεία που θα χρησιμοποιήσουμε κατά τη διάρκεια του μαθήματός μας, θα δημιουργήσουμε μία πλήρως λειτουργική διαδικτυακή εφαρμογή και θα μελετήσουμε όλες τις τεχνολογίες που είναι απαραίτητες για τη δημιουργία της. Με την ολοκλήρωση του μαθήματος θα είμαστε σε θέση να φτιάξουμε τις δικές μας διαδικτυακές εφαρμογές και να κατανοήσουμε τις τεχνολογίες και τα εργαλεία που κρύβονται πίσω από αυτές.
Το μάθημα περιλαμβάνει αρχικά ορισμένα θεωρητικά θέματα που αφορούν τις τεχνολογίες και τα πρωτόκολλα του διαδικτύου που χρειάζεται να γνωρίζουμε για να προχωρήσουμε στο πρακτικό κομμάτι της δημιουργίας διαδικτυακών εφαρμογών. Επιπλέον, θα δούμε κάποια χρήσιμα εργαλεία που θα μας βοηθήσουν να οργανώσουμε την εργασία μας αλλά και να κερδίσουμε χρόνο και να προχωρήσουμε με περισσότερη ευκολία την εξέλιξη της δουλειάς μας. Θα μάθουμε επίσης να δημιουργούμε με ελάχιστο κώδικα απλές εφαρμογές με το Flask και να χρησιμοποιούμε τα διάφορα εργαλεία που αυτό μας προσφέρει και στο τελευταίο κομμάτι του μαθήματος θα δημιουργήσουμε τη διαδικτυακή μας εφαρμογή.
Η συνολική προσπάθεια για την ολοκλήρωση του μαθήματος είναι 60 ώρες και είναι απαραίτητη μια πρώτη επαφή με τις γλώσσες Python, HTML και (σε μικρότερο βαθμό) CSS.
Φυσικά υπάρχουν πάρα πολλά πράγματα που αφορούν την ανάπτυξη και τη χρήση μίας διαδικτυακής εφαρμογής τα οποία δε θα καλύψουμε στα στενά όρια του μαθήματός μας, όπως για παράδειγμα το deployment της εφαρμογής μας σε έναν production server, η δημιουργία κάποιου API (π.χ. ενός REST API) με το Flask, η δημιουργία Asynchronous Tasks κ.α.· τα θέματα αυτά αποτελούν υλικό για κάποιο πιο προχωρημένο μάθημα. Θα φτάσουμε όμως σε ένα αρκετά καλό γνωστικό επίπεδο, ώστε ολοκληρώνοντας το μάθημα να έχουμε αποκτήσει τις απαραίτητες δεξιότητες για να προχωρήσουμε, αν θέλουμε, σε πιο προχωρημένα επίπεδα στην ανάπτυξη εφαρμογών του διαδικτύου.
Διδάσκων
Δημήτρης Αγγελάκης
O Δημήτρης Αγγελάκης συνεργάζεται με τις Πανεπιστημιακές Εκδόσεις από το 2015 και ασχολείται με τον προγραμματισμό και την τεχνική υποστήριξη της πλατφόρμας του Mathesis (OpenEdx/gr) και την παραγωγή των μαθημάτων του. Μετά τις μεταπτυχιακές σπουδές του στην Αγγλία δούλεψε για 13 χρόνια ως προγραμματιστής διαδικτυακών εφαρμογών στο τμήμα Έρευνας και Ανάπτυξης της εταιρείας Forthnet SA όπου ασχολήθηκε κυρίως με την ανάπτυξη ευρωπαϊκών projects και εν συνεχεία στο τμήμα μηχανογράφησης στο οποίο ασχολήθηκε με εσωτερικά projects της εταιρείας. Από το 2013 έως το 2015 υπήρξε συνιδρυτής και core developer, server and database administrator της διαδικτυακής πλατφόρμας citybeez.gr. Στο παρελθόν έχει διδάξει πληροφορική σε διάφορους εκπαιδευτικούς φορείς.
Συντελεστές
Βιντεοσκόπηση: Δημήτρης Αγγελάκης
Μοντάζ: Δημήτρης Αγγελάκης
Προγραμματισμός ασκήσεων: Έλενα Κολλάτου
Βοηθοί μαθήματος: Θάνος Λαμπρόπουλος (tlampro), Αλέκος Παπαδόπουλος (AlekosPap), Ξενοφών Στρατάκης (virxen75)
Η βιντεοσκόπηση έγινε το 2021.
Το εικονίδιο απεικονίζει τα κυριότερα "εργαλεία" του μαθήματος και είναι μία σύνθεση του Νίκου Βαρδάκη.
Με τη δική σας υποστήριξη συνεχίζουμε
Τα μαθήματα του Mathesis προσφέρονται δωρεάν και έτσι θα συνεχίσουν. Μπορείτε να τα παρακολουθήσετε μέχρι τέλους και να συμμετέχετε στα εβδομαδιαία τεστ και την τελική εξέταση. Στα περισσότερα μαθήματα θα σας ζητείται όμως ένα μικρό αντίτιμο –30€ στο συγκεκριμένο μάθημα– για την έκδοση της βεβαίωσης επιτυχούς παρακολούθησης, εφόσον βέβαια την δικαιούστε έχοντας εξασφαλίσει την απαιτούμενη ελάχιστη επίδοση του 50%. Το κόστος της βεβαίωσης είναι εδώ μεγαλύτερο από τα 20€ που ζητούνται σε άλλα μαθήματα, διότι τώρα υπάρχει το πρόσθετο κόστος της διόρθωσης της τελικής σας εργασίας από τον διδάσκοντα και τους βοηθούς του. Για τους ανέργους η βεβαίωση χορηγείται δωρεάν. Από την πλευρά μας θεωρούμε αυτό το μικρό αντίτιμο ως την αναγκαία συμβολή σας για τη συνέχιση της λειτουργίας ενός θεσμού που υπηρετεί δημόσιους σκοπούς χωρίς να δέχεται ούτε ένα ευρώ –άμεσης ή έμμεσης– κρατικής ενίσχυσης. Βασίζεται μόνο σε δωρητική στήριξη —η οποία καλύπτει πλέον μόνο ένα μικρό μέρος των ετήσιων δαπανών του— και εθελοντική εργασία. Η συνέχιση της λειτουργίας του Mathesis απαιτεί λοιπόν και τη δική σας ενεργό στήριξη. Σε αυτό το πνεύμα θεωρούμε αναγκαίο πριν τη συμμετοχή σας στην τελική εξέταση του μαθήματος να αναλάβετε μια ηθική δέσμευση απέναντι στο Mathesis. Ότι αν ολοκληρώσετε επιτυχώς το μάθημα και δικαιούστε τη βεβαίωση παρακολούθησης, θα καταβάλετε το αντίτιμο των 30€ για την απόκτησή της, έστω κι αν δεν έχει μια προφανή χρησιμότητα για σας. Ένα μικρό βήμα για σας, μια αναγκαία συνθήκη όμως για τη δυνατότητα του Mathesis να σας προσφέρει την ποιότητα μαθημάτων που σας προσέφερε μέχρι τώρα.
Σημαντική προσθήκη: Σας ενημερώνουμε επίσης ότι όσοι δεν έχουν εκπληρώσει την ηθική δέσμευση που έχουν αναλάβει σε περισσότερα από 2 μαθήματα των οποίων οι προθεσμίες πληρωμής έχουν λήξει, στα νέα μαθήματα που τυχόν παρακολουθήσουν δεν θα έχουν πρόσβαση στην τελική τους εξέταση, υπό τον όρο βέβαια ότι η μη τήρηση της δέσμευσής τους συνεχίζεται.