Please ensure Javascript is enabled for purposes of website accessibility

Παρουσίαση/Προβολή

Εικόνα επιλογής

Τεχνικές Προγραμματισμού Υπολογιστών (Θ + Ε)

(ECE_Κ150) -  ΙΩΑΝΝΗΣ ΤΖΗΜΑΣ (Θ + Ε) , ΕΥΑΓΓΕΛΟΣ ΠΕΦΑΝΗΣ (Ε)

Περιγραφή Μαθήματος

Σχεδιασμός , επιμέλεια κειμένων, παρουσίασης  : Πεφάνης Ευάγγελος - μέλος Ε.Τ.Ε.Π

(English description is following)

Ανοίγετε τις ενότητες του μαθήματος πατώντας (click για είσοδο) στην ενότητα που θέλετε.

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

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

  • έχει μία σαφή εικόνα της χρησιμότητας του προγραμματισμού και των ικανοτήτων που θα αναπτύξει ο ίδιος ασχολούμενος με αυτόν.
  • αντιλαμβάνεται τις διαφορετικές κατηγορίες γλωσσών προγραμματισμού, τα κριτήρια ταξινόμησής, καθώς και επιλογής χρήσης τους για τη λύση ενός συγκεκριμένου προβλήματος.
  • αναγνωρίζει τα διάφορα προγραμματιστικά υποδείγματα, καθώς και τη δυνατότητα υποστήριξής τους από διαφορετικές γλώσσες προγραμματισμού.
  • κατανοήσει σε βάθος τις βασικές αρχές προγραμματισμού και να δημιουργεί προγράμματα στις γλώσσες προγραμματισμού που διδάσκεται, με στόχο τη λύση κάποιου συγκεκριμένου προβλήματος.
  • χρησιμοποιεί εντολές διακλάδωσης και βρόχους στα προγράμματα που αναπτύσσει.
  • αξιοποιεί με ορθό τρόπο τις μεταβλητές, να αντιλαμβάνεται τη σχέση τους με τη μνήμη του Η/Υ, να αναγνωρίζει την εμβέλειά τους και να χρησιμοποιεί με συνέπεια τους τύπους δεδομένων διαφορετικών γλωσσών προγραμματισμού.
  • δημιουργεί συναρτήσεις όταν προγραμματίζει και να εξοικειωθεί με την έννοια της αντικειμενοστρέφειας και του τρόπου με τον οποίο το υπόδειγμα αυτό εφαρμόζεται σε διαφορετικές γλώσσες προγραμματισμού, ενώ παράλληλα να εξοικειωθεί με τις έννοιες της αφαίρεσης, της κληρονομικότητας, της ενθυλάκωσης, του πολυμορφισμού και της σύνθεσης.
  • αξιοποιεί την top-down σχεδίαση κατά τη διάρκεια που προγραμματίζει και να χρησιμοποιεί ορθά τη δυνατότητα σχολιασμού του κώδικα που συγγράφει.
  • οργανώνει των κώδικα που συγγράφει σε διαφορετικά αρχεία.
  • αντιλαμβάνεται τη μεγάλη χρησιμότητα του ελέγχου στα προγράμματα που δημιουργεί και να είναι σε θέση να συγγράφει και τον αντίστοιχο κώδικά για την αυτοματοποίηση του ελέγχου αυτού.
  • δημιουργεί έγγραφα Παγκόσμιου Ιστού με τη γλώσσα HTML 5 και να τα μορφοποιεί αξιοποιώντας τη CSS3, καθώς και να αναπτύσσει εφαρμογές Παγκόσμιου Ιστού και να τις διαθέτει μέσα από έναν εξυπηρετητή Παγκόσμιου Ιστού.

 

This course is a first introduction to the basic concepts of programming. The course aims to provide students with an understanding of the usefulness of the different programming languages and the philosophy behind them, the basic principles of programming, as well as the different programming paradigms that exist, and finally, the practical engagement with different programming languages, in order to acquire the necessary background for the relevant courses that follow in the following semesters.

Upon successful completion of the course the student will be able to:

Have a clear understanding of the usefulness of programming and the skills they will develop by engaging in it.
understand the different categories of programming languages, the criteria for their classification, as well as the choice of their use for solving a specific problem.
recognises the different programming models and the possibility of their support by different programming languages.
understand in depth the basic principles of programming and create programs in the programming languages taught, with the aim of solving a specific problem.
use branching and looping commands in the programs they develop.
use variables correctly, understand their relationship with computer memory, recognise their scope and use data types of different programming languages consistently.
create functions when programming and become familiar with the concept of object-orientation and how this paradigm applies to different programming languages, while becoming familiar with the concepts of abstraction, inheritance, encapsulation, polymorphism and composition.
utilize top-down design while programming and properly use the ability to annotate the code they write.
organise the code written in different files.
understands the great utility of control in the programs he/she creates and is able to write the corresponding code to automate this control.
create Web documents using HTML 5 and format them using CSS3, and develop Web applications and make them available through a Web server.

Ημερομηνία δημιουργίας

Τετάρτη 14 Οκτωβρίου 2020

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

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

    Μαθησιακοί στόχοι

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

    • έχει μία σαφή εικόνα της χρησιμότητας του προγραμματισμού και των ικανοτήτων που θα αναπτύξει ο ίδιος ασχολούμενος με αυτόν.
    • αντιλαμβάνεται τις διαφορετικές κατηγορίες γλωσσών προγραμματισμού, τα κριτήρια ταξινόμησής, καθώς και επιλογής χρήσης τους για τη λύση ενός συγκεκριμένου προβλήματος.
    • αναγνωρίζει τα διάφορα προγραμματιστικά υποδείγματα, καθώς και τη δυνατότητα υποστήριξής τους από διαφορετικές γλώσσες προγραμματισμού.
    • κατανοήσει σε βάθος τις βασικές αρχές προγραμματισμού και να δημιουργεί προγράμματα στις γλώσσες προγραμματισμού που διδάσκεται, με στόχο τη λύση κάποιου συγκεκριμένου προβλήματος.
    • χρησιμοποιεί εντολές διακλάδωσης και βρόχους στα προγράμματα που αναπτύσσει.
    • αξιοποιεί με ορθό τρόπο τις μεταβλητές, να αντιλαμβάνεται τη σχέση τους με τη μνήμη του Η/Υ, να αναγνωρίζει την εμβέλειά τους και να χρησιμοποιεί με συνέπεια τους τύπους δεδομένων διαφορετικών γλωσσών προγραμματισμού.
    • δημιουργεί συναρτήσεις όταν προγραμματίζει και να εξοικειωθεί με την έννοια της αντικειμενοστρέφειας και του τρόπου με τον οποίο το υπόδειγμα αυτό εφαρμόζεται σε διαφορετικές γλώσσες προγραμματισμού, ενώ παράλληλα να εξοικειωθεί με τις έννοιες της αφαίρεσης, της κληρονομικότητας, της ενθυλάκωσης, του πολυμορφισμού και της σύνθεσης.
    • αξιοποιεί την top-down σχεδίαση κατά τη διάρκεια που προγραμματίζει και να χρησιμοποιεί ορθά τη δυνατότητα σχολιασμού του κώδικα που συγγράφει.
    • οργανώνει των κώδικα που συγγράφει σε διαφορετικά αρχεία.
    • αντιλαμβάνεται τη μεγάλη χρησιμότητα του ελέγχου στα προγράμματα που δημιουργεί και να είναι σε θέση να συγγράφει και τον αντίστοιχο κώδικά για την αυτοματοποίηση του ελέγχου αυτού.
    • δημιουργεί έγγραφα Παγκόσμιου Ιστού με τη γλώσσα HTML 5 και να τα μορφοποιεί αξιοποιώντας τη CSS3, καθώς και να αναπτύσσει εφαρμογές Παγκόσμιου Ιστού και να τις διαθέτει μέσα από έναν εξυπηρετητή Παγκόσμιου Ιστού.

    Διδάσκοντες

    ΙΩΑΝΝΗΣ ΤΖΗΜΑΣ
    ΑΝΑΠΛΗΡΩΤΗΣ ΚΑΘΗΓΗΤΗΣ
      

    O Δρ. Γιάννης Τζήμας είναι Αναπληρωτης Καθηγητής στο Τμήμα Μηχανικών Πληροφορικής Τ.Ε. του ΤΕΙ Δυτικής Ελλάδας. Είναι απόφοιτος του Τμήματος Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής του Πανεπιστημίου Πατρών και διδάκτορας του ιδίου Τμήματος στην περιοχή των Τεχνολογιών Διαδικτύου.

    Η ερευνητική του δραστηριότητα εντοπίζεται στις περιοχές των Δικτύων Η/Υ και εφαρμογών τους και των Τεχνολογιών Διαδικτύου, όπου έχει δημοσιεύσει ένα σημαντικό αριθμό άρθρων σε διεθνή περιοδικά και συνέδρια. Από το 1995 έως σήμερα έχει διατελέσει Τεχνικός Υπεύθυνος του εργαστηρίου Γραφικών, Πολυμέσων και Γεωγραφικών Συστημάτων του Τμήματος Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής του Πανεπιστημίου Πατρών, ενώ παράλληλα από το 1997 έως το 2011 ήταν Τεχνικός Συντονιστής της Ερευνητικής Μονάδας Τεχνολογιών Διαδικτύου και Πολυμέσων του Ερευνητικού Ακαδημαϊκού Ινστιτούτου Τεχνολογίας Υπολογιστών.

    Με τις παραπάνω ιδιότητες έχει συμμετάσχει στο συντονισμό και στην υλοποίηση ερευνητικών και αναπτυξιακών έργων από το 1995 έως σήμερα. Τα έργα αυτά έχουν χρηματοδοτηθεί από εθνικούς και κοινοτικούς πόρους. Τέλος, μέχρι τα μέσα του 2013 ήταν επιστημονικός υπεύθυνος του Κέντρου Διαχείρισης Δικτύου του ΤΕΙ Μεσολογγίου.

    Ερευνητικά Ενδιαφέροντα

    • Δικτυοκεντρικά Πληροφοριακά Συστήματα
    • Web Engineering
    • Μοντελοποίηση Εφαρμογών Παγκόσμιου Ιστού
    • Εξόρυξη Γνώσης στον Παγκόσμιο Ιστό
    • Συνεργατικές Εφαρμογές στον Παγκόσμιο Ιστό (Intranets/Extranets)
    • Ανάλυση Απόδοσης στον Παγκόσμιο Ιστό
    • Βιοπληροφορική
    • Σχεδιασμός Διαδραστικών Συστημάτων & Αλληλεπίδραση Ανθρώπου Υπολογιστή

    Διδάσκοντες

    ΕΥΑΓΓΕΛΟΣ ΠΕΦΑΝΗΣ

    Μέλος Ε.Τ.Ε.Π

    Ο Πεφάνης Ευάγγελος γεννήθηκε το 1964.

    Διορίστηκε ως μέλος Ε.Τ.Π στο πρώην ΤΕΙ ΠΑΤΡΑΣ το έτος 2003.
    Σήμερα είναι μόνιμο μέλος Ειδικού Τεχνικού – Εργαστηριακού Προσωπικού (Ε.Τ.Ε.Π) του Τμήματος Ηλεκτρολόγων Μηχανικών και Μηχανικών Πληροφορικής του Πανεπιστημίου Πελοποννήσου.

    Εκπαίδευση.

    Πτυχιούχος Ηλεκτρολόγος Μηχανικός Τ.Ε του τμήματος Ηλεκτρολογίας της Σχολής Τεχνολογικών Εφαρμογών του Τ.Ε.Ι Πάτρας (1986)

    Ολοκλήρωσε ένα κύκλο σπουδών στο Τμήμα Μηχανολογίας του Τ.Ε.Ι Δυτικής Ελλάδας στην Πάτρα στο μεταπτυχιακό πρόγραμμα «Συστήματα Ανανεώσιμων Πηγών Ενέργειας – Μsc RENEWABLE ENERGY SYSTEMS (RES)» (30 μονάδες ECTS) κατά το Ακαδημαϊκό έτος 2013-2014.

    Παρακολούθησε τα παρακάτω εκπαιδευτικά προγράμματα  εξειδίκευσης – επιμόρφωσης του τομέα Πληροφορικής του Εθνικού και Καποδιστριακού Πανεπιστημίου Αθηνών. (Ε.Κ.Π.Α) κατά τα Ακαδημαϊκά έτη 2015-2018.

    1. «Statistics analytics and data mining» 
    2. «Προγραμματιστής με την γλώσσα C++» 
    3. «Προγραμματισμός με την γλώσσα Java» 
    4. «Data Science with Python»
    5. και κατοχύρωσε σύνολο Πιστωτικών Μονάδων ECVET (European Credit System for Vocational Education and Training) : 31,51

    Παρακολούθησε επίσης τα παρακάτω προγράμματα επιμόρφωσης του (Ε.Κ.Π.Α) κατά τα Ακαδημαϊκά έτη 2015-2018 , από τις περιοχές της Παιδαγωγικής της Οικονομίας και της Φιλοσοφίας.

    1. «Διαπαιδαγώγηση στην Παιδική και Εφηβική Ηλικία» 
    2. «Αναπτυξιακά Θέματα της Ελληνικής Οικονομίας έως το 2020»
    3. «Ηθική Σκέψη και Πράξη» 

    Εκπαιδευτικό Έργο.

    Στο πρώην Τ.Ε.Ι. Πάτρας, Σχολή Διοίκησης και Οικονομίας – Τμήμα Λογιστικής. (ως εργαστηριακός συνεργάτης επί συμβάσεως με το ίδρυμα)

    -Διδασκαλία των Εργαστηριακών Μαθημάτων του τμήματος Λογιστικής ΤΕΙ Πάτρας «Αυτοματισμός Γραφείου» β΄ εξαμήνου και «Εισαγωγή στις Βάσεις Δεδομένων» του γ΄ εξαμήνου σπουδών.

    -Διάθεση και εποπτεία πτυχιακών εργασιών σε ομάδες φοιτητών του τμήματος.

    ΔΙΑΡΚΕΙΑ: 9 διδακτικά εξάμηνα από 09/2003 – 06/2008 , 5 ώρες εβδομαδιαίως.

    Στο Πανεπιστήμιο Πελοποννήσου, Σχολή Μηχανικών – Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών.

    Από ακαδημαϊκού έτους 2019-2020 έως σήμερα:

    -Διδασκαλία του εργαστηριακού μαθήματος «Τεχνικές Προγραμματισμού Υπολογιστών» του α΄ εξαμήνου σπουδών.

    -Διδασκαλία του εργαστηριακού μαθήματος «Διαδικασιακός Προγραμματισμός» β’ εξαμήνου σπουδών.

    -Διδασκαλία του εργαστηριακού μαθήματος "Αντικειμενοστραφής σχεδίαση και προγραμματισμός" δ' εξαμήνου σπουδών

    Ερευνητικό ‘Έργο.

    Ανέλαβε και υλοποίησε την εκτέλεση  συγκεκριμένου έργου, εξυπηρέτησης και υποστήριξης του προγράμματος ΑΡΧΙΜΗΔΗΣ ΙΙ ,του μέτρου 2.2, κατηγορία πράξης 2.2.3.ζ, με τίτλο ‘Αρχιμήδης ΙΙ – Ενίσχυση Ερευνητικών Ομάδων του Τ.Ε.Ι Πάτρας’ με αντικείμενο την «Κατασκευή Βάσης Δεδομένων – Εφαρμογή μεθόδων εξόρυξης γνώσης στην πρόβλεψη πτωχεύσεων επιχειρήσεων» σε χρονικό διάστημα 20 μηνών από 1/5/2005 έως 31/12/2006 βάση της συμβάσεως με το ίδρυμα.

    Συμμετοχή στο ερευνητικό έργο inPoint (από Αύγουστο 2020 έως σήμερα).

    Το έργο inPOINT θα αναπτύξει μια πρωτότυπη διαδικτυακή πλατφόρμα για την υποστήριξη και ενίσχυση δράσεων Ανοιχτής Καινοτομίας σε επιχειρήσεις με υψηλό βαθμό ολοκλήρωσης. Βασικός στόχος του έργου είναι η δημιουργία μιας φιλικής, λειτουργικής και βιώσιμης λύσης που θα υποστηρίζει πλήρως τις διαδικασίες συλλογής, διάχυσης, οργάνωσης, σύνθεσης και αξιοποίησης της γνώσης που προέρχεται τόσο από το εσωτερικό όσο και από το εξωτερικό περιβάλλον μιας επιχείρησης. Η προτεινόμενη λύση καλύπτει ανάγκες κατά μήκος της συνολικής αλυσίδας παραγωγής αξίας και της συνολικής διαδικασίας ανάπτυξης καινοτομίας σε μια επιχείρηση.

    http://disyd-lab.ece.uop.gr/
    https://inpoint-project.eu/

    Επαγγελματική Εμπειρία.

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

    Ερευνητικά Ενδιαφέροντα.

    • Τεχνητή Νοημοσύνη.
    • Εξόρυξη Γνώσης και Μηχανική Μάθηση.
    • Συστήματα Διαχείρισης Μεγάλων Δεδομένων.