ΤΕΙ ΚΑΒΑΛΑΣ ΤΜΗΜΑ ΔΙΑΧΕΙΡΙΣΗ ΠΛΗΡΟΦΟΡΙΩΝ. Πτυχιακή Εργασία. ΘΕΜΑ: "Οι βιβλιοθήκες Apache Common Maths και VISAD και η διασύνδεσή τους στην ScalaLab"»

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΤΕΙ ΚΑΒΑΛΑΣ ΤΜΗΜΑ ΔΙΑΧΕΙΡΙΣΗ ΠΛΗΡΟΦΟΡΙΩΝ. Πτυχιακή Εργασία. ΘΕΜΑ: "Οι βιβλιοθήκες Apache Common Maths και VISAD και η διασύνδεσή τους στην ScalaLab"»"

Transcript

1 ΤΕΙ ΚΑΒΑΛΑΣ ΤΜΗΜΑ ΔΙΑΧΕΙΡΙΣΗ ΠΛΗΡΟΦΟΡΙΩΝ Πτυχιακή Εργασία ΘΕΜΑ: "Οι βιβλιοθήκες Apache Common Maths και VISAD και η διασύνδεσή τους στην ScalaLab"» ΕΚΠΟΝΗΣΗ: ΖΑΧΑΡΙΑΔΟΥ ΕΛΙΣΑΒΕΤ ΑΕΜ: 1729 ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ: DR ΠΑΠΑΔΗΜΗΤΡΙΟΥ ΣΤΕΡΓΙΟΣ ΚΑΒΑΛΑ

2 Η παρούσα εργασία έγινε στα πλαίσια της πτυχιακής εργασίας που απαιτείται για την ολοκλήρωση των σπουδών και την κτήση πτυχίου στο Τμήμα Διαχείρισης Πληροφοριών του ΤΕΙ Καβάλας. 2

3 Πίνακας περιεχομένων ΕΙΣΑΓΩΓΗ...5 ΠΕΡΙΛΗΨΗ...6 ABSTRACT...7 Κεφάλαιο 1 ScalaLab 1.1 Περίληψη ScalaLab Το περιβάλλον ScalaLab Πλεονεκτήματα της ScalaLab Βιβλιοθήκες Visad και Apache Common Math...15 Κεφάλαιο 2 Το σύστημα Visualization VISAD 2.1 Περίληψη VISAD Java στοιχεία για αριθμητική απεικόνιση σε VISAD Αποσπώμενα δεδομένα και πρότυπα εμφάνισης Οπτικοποίηση και Ανάλυση Συνεργατική Προσομοίωση Αξιοποίηση επαναχρησιμοποιημένων στοιχείων Χτίζοντας 3D-Components με VISAD..31 3

4 2.3.1 Διαδικαστικές εναντίον περιγραφικές visualization Βιβλιοθήκες Αντιστρεψιμότητα των οπτικοποιημένων λειτουργιών Βασικοί τύποι συστατικών Metadata για στοιχεία εμφάνισης και δεδομένων Ένα απλό 3D-GUI στοιχείο Ένα πιο περίπλοκο 3D-GUI στοιχείο Εμφάνιση των επιστημονικών δομών δεδομένων για οπτικοποίηση αλγορίθμων Η τεχνική της βαθμιδωτής χαρτογράφησης Σύστημα VISAD κώδικας Σημασιολογία και απεικόνιση των δεδομένων Σχέδια VISAD για το μέλλον...65 Κεφάλαιο 3 Apache Common Maths 3.1 Στατιστική Apache Common Maths Είδη παλινδρομήσεων Πίνακας Διακύμανσης Ο παράγοντας της τύχης Συνδεσιμότητα PRNG Γραμμική Άλγεβρα Apache Common Maths Συνήθης Διαφορικές Εξισώσεις.98 Η ενσωμάτωση των βιβλιοθηκών στην ScalaLab Βιβλιογραφία.115 4

5 Εισαγωγή Καθώς οι απαιτήσεις του ανθρώπου αυξάνονται, αυξάνεται και η πολυπλοκότητα των μέσων που θα χρησιμοποιήσει. Η επιστημονική κοινότητα έφτασε σε τέτοιο σημείο να χρειάζεται κάτι πιο γρήγορο και εξειδικευμένο για τον υπολογισμό γραφικών παραστάσεων, σχεδίαση τρισδιάστατων μοντέλων, υπολογισμό συναρτήσεων κ.α. Οι βιβλιοθήκες Visad και Apache Common Maths προσφέρουν σε βάθος όλες τις απαίτησεις της επιστημονικής κοινότητας με σχετικά έυκολη διαχείρηση. Είναι βιβλιοθήκες της Java και χρησιμοποιούνται στην ScalaLab. Χρησιμοποιόυνται από πληθώρα επιστημόνων και προγραμματιστών για την διεξαγωγή πειραμάτων, επιστημονικών πορισμάτων κ.α. 5

6 Περίληψη Υπάρχουν λίγα συστήματα visualization για επιστημονικούς σκοπούς, θα εξετάσουμε το Visad, μια βιβλιοθήκη της Java για διαδραστική οπτικοποίηση και ανάλυση των αριθμητικών δεδομένων και την βιβλιοθήκη Apache Common Maths. Το όνομα Visad είναι ακρώνυμο για «Οπτικοποίηση του αλγόριθμου ανάπτυξης». Συνδέεται με την ScalaLab. Αρχικά εξετάζουμε την χρησιμότητα της ScalaLab περιληπτικά, και βλέπουμε τα θετικά στοιχεία της. Στην συνέχεια αναλύουμε το VISAD εις βάθος για να μπορέσουμε να καταλάβουμε την δομή και την λειτουργία του. Ουσιαστικά το Visad, είναι μια βιβλιοθήκη που χρησιμοποιεί διάφορα στοιχεία για να οπτικοποιήσει δεδομένα. Βλέπουμε πως γίνεται η αριθμητική απεικόνιση δεδομένων σε επιστημονικό επίπεδο, πως χτίζονται 3D-στοιχεία με VISAD, με την χρήση κώδικα και μη. Επίσης αναλύουμε την χρήση βαθμιδωτής και μη χαρτογράφησης, τις διαδικαστικές και περιγραφικές βιβλιοθήκες, της σημασιολογία της απεικόνισης των δεδομένων κ.α. Τέλος εξετάζουμε την βιβλιοθήκη Apache Common Maths που χρησιμοποιείται για την επίλυση μαθηματικών εξισώσεων. 6

7 Abstract There are few visualization systems for scientific purposes, we will examine Visad, a Java library for interactive visualization and analysis of numerical data and the library Apache Common Maths. The name Visad acronym for "Visualization for Algorithm Development". It s linked with ScalaLab. Initially we examine the usefulness of ScalaLab briefly, and see the positive elements. Then we analyze VISAD in depth, so we can understand its structure and function. Essentially Visad, is a library that uses different components to visualize data. We examine numerical representation of data in scientific terms, building 3D-elements with VISAD, with or without code. We also analyze the use of gradient mapping, procedural and descriptive libraries, the semantics of the image data, etc. Finally we examine the library Apache Common Maths, a library used to solve mathematical equations. 7

8 Κεφάλαιο 1 Η ScalaLab Περίληψη ScalaLab Το περιβάλλον ScalaLab χτίζεται στην Scala, μια νέα γλώσσα για την Java Virtual Machine με πλήρη λειτουργικότητα Java. Ένας από τους κύριους στόχους της ScalaLab είναι να είναι πολύ φιλικό προς το χρήστη περιβάλλον και να παρουσιάσει μια απλή υψηλού επιπέδου scripting γλώσσα με τον επιστημονικό πνεύμα της Matlab. Ωστόσο, ένας προηγμένος προγραμματιστής μπορεί επίσης να χρησιμοποιήσει την εξελιγμένη γλώσσα Scala στο οποίο η ScalaLab είναι φτιαγμένη. Η ScalaLab είναι αποτελεσματική και μπορεί να είναι μια ενδιαφέρουσα λύση ανοιχτού κώδικα παρόμοια με τα εμπορικά πακέτα, ειδικά για την επιστημονική κοινότητα που είναι εξοικειωμένοι με Java. Το περιβάλλον χρήστη της ScalaLab εξερευνά τις δυνατότητες της βιβλιοθήκης Swing Java, προκειμένου να διευκολύνει το έργο του επιστήμονα. Η προγραμματιστική γλώσσα της ScalaLab είναι η ScalaSci η οποία προσφέρει σαν του Matlab υψηλού επιπέδου χειρισμό εκμεταλλεύοντας την ευελιξία της Scala γλώσσας χτίζοντας έτσι εύκολα νέες συντάξεις. Επιπλέον ο χρήστης της ScalaLab μπορεί να συνδυάσει εύκολα java κώδικα που μεταγλωττίζεται με έναν java μεταγλωττιστή. Η επέκταση της Scala με Matlab-στυλ δομές, που ονομάζεται ScalaSci είναι η γλώσσα της ScalaLab. Η ScalaSci είναι αποτελεσματική τόσο για τη σύνταξη μικρών σεναρίων όσο και για την ανάπτυξη μεγάλων εφαρμογών στο επίπεδο της παραγωγής. Το βιβλίο περιγράφει τις βασικές επιστημονικές κατηγορίες ScalaSci, και παρουσιάζει παραδείγματα της εφαρμογής τους. Η Scala είναι στατικά δακτυλογραφημένη, ενώ ο κώδικας ScalaSci τρέχει με την ταχύτητα Java. Επίσης, δεδομένου ότι οι βελτιστοποιήσεις που εκτελούνται από 8

9 τον compiler Just-In-Time Java σε κώδικα που τρέχει με ταχύτητα παρόμοια με εγγενή κώδικα, η ScalaLab μπορεί να τρέξει βαριά αριθμητικές εργασίες με ταχύτητα παρόμοια με την παραδοσιακή C / C ++ ή Fortran μεταγλωττισμένου κώδικα. Εκμεταλλευόμενοι την ευελιξία και επεκτασιμότητα της γλώσσας Scala παρουσιάζουμε επίσης το πλαίσιο για την αξιοποίηση της Java με επιστημονικές βιβλιοθήκες στο περιβάλλον ScalaLab. Περιγράφεται η διασύνδεση των βασικών Java βιβλιοθηκών αριθμητικών αναλύσεων, όπως η NUMAL βιβλιοθήκη, MTJ (Matrix Toolkit για Java) και EJML (Efficient Java Matrix Βιβλιοθήκη). Αν και πιστεύουμε ότι η Scala είναι μια πολύ βελτιωμένη σε σχέση με τη γλώσσα Java (δηλαδή κάτι σαν «Java.next"!) και εντυπωσίασε με την κομψότητα και την εκλέπτυνση της στον σχεδιασμό, η Java παραμένει μια καλή και αποτελεσματική λύση για απλές εργασίες, όπως η ανάπτυξη του επιστημονικού λογισμικού. Έτσι, η φιλοσοφία της ScalaLab δεν είναι να αντικαταστήσει την Java, αλλά να την εκμεταλλευτεί. Επίσης, η γλώσσα Java, τόσο με τη χρήση των εξαιρετικών βιβλιοθηκών Java scientific προσφέρει τη δυνατότητα στον προγραμματιστή Java να χρησιμοποιήσει Java για την ανάπτυξη εφαρμογών, σε περίπτωση όπου είναι πιο εξοικειωμένοι με την Java. Ως εκ τούτου, ένας Java 6 compiler είναι ενσωματωμένος μέσα στο πυρήνα της ScalaLab. Οι ScalaLab βιβλιοθήκες Java για συγκεκριμένες εφαρμογές μπορούν εύκολα να χρησιμοποιηθούν ως εργαλειοθήκες. Αριθμητικές εφαρμογές υπολογισμού επωφελούνται από το διαδραστικό σύστημα για τον υπολογισμό matrix, ο οποίος διευκολύνει τα ταχεία επιστημονικά πειράματα. Με τα συστήματα αυτά προγραμματισμού, ουσιαστική ανάλυση μπορεί να εκτελείται με την εισαγωγή σταδιακών εντολών και εν συνέχεια την επίτευξη αποτελεσμάτων. Ενθαρρύνεται ο πειραματισμός και ο κουραστικός `compile-link-execute' κύκλος των τυποποιημένων γλωσσών προγραμματισμού έχει εξαλειφθεί. Γνωστά παραδείγματα τέτοιων συστημάτων περιλαμβάνουν εμπορικά προϊόντα όπως το Matlab [6], το Maple και το Mathematica [3, 4], καθώς και πακέτα λογισμικού ανοικτού κώδικα, όπως Scilab [1] και Octave [5]. Το βιβλίο παρουσιάζει ένα ανοιχτού κώδικα μαθηματικό περιβάλλον προγραμματισμού για την Java Virtual Machine (JVM), το περιβάλλον ScalaLab [19]. Αν και η ScalaLab παρουσιάζει ένα Matlab στυλ εργασίας, διαφέρει από τις παραπάνω 9

10 αντιξοότητες στο ότι συγκεντρώνει τα σενάρια για το JVM. ScalaLab, χρησιμοποιεί και επεκτείνεται στην ισχυρή Scala αντικειμενοστραφή γλώσσα [15]. Μια κριτική του JVM είναι ότι είναι σχετικά αργή. Ωστόσο, για την πρόσφατη έκδοση του compiler Just-In-Time (JIT), αυτό δεν ισχύει πλέον. Αντί αυτού, είναι εντυπωσιακό ότι η Java ξεπερνάει την C ++ σε μια σειρά σημείων αναφοράς που έχουν δοκιμαστεί και είναι ελαφρώς ηττημένη μόνο εάν η C ++ υποστηρίζεται με έναν βελτιστοποιημένο compiler. Σαφώς, οι βελτιστοποιήσεις που εκτελούνται από τον ΚΟΕ compiler είναι αρκετά εξελιγμένοι, π.χ. όρια του πίνακα ελέγχουν την εξάλειψη και την απόδοση JVM για αριθμητικών υπολογισμών. Διαδραστικά περιβάλλοντα επιστημονικού προγραμματισμού έχουν αποκτήσει μεγάλη δημοτικότητα, κυρίως για την απλότητα και την μεγάλη βελτίωση της ταχύτητας με τεχνικές JIT. Είναι ενδιαφέρον να παρατηρήσουμε ότι η πρόσφατες εκδόσεις του Matlab, έχουν επίσης αποκτήσει εντυπωσιακή βελτίωση ταχύτητας. Ωστόσο, το μεγαλύτερο μέρος των αριθμητικών λογισμικού ανάλυσης είναι σε μεταγλωττισμένες γλώσσες, κυρίως σε Fortran, C / C ++ και Java. Η μεταγενέστερη γλώσσα αν και δεν είναι σχεδιασμένη για αριθμητικούς υπολογισμούς έχει γίνει πολύ δημοφιλής λόγω της δυνατότητας μεταφοράς, την αξιοπιστία, την απλότητα της και τις εξελίξεις στην Just In-Time (JIT) Σύνταξη. Η σχετικά νέα γλώσσα Scala [15] διατηρεί όλα τα πλεονεκτήματα της Java, ενώ επιπλέον δημιουργεί ένα μυθιστόρημα με επεκτάσιμη αρχιτεκτονική. Η ScalaLab εκμεταλλεύεται τόσο την ευελιξία της Scala οσο και την ισχυρή και πλούσια σε χαρακτηριστικά Java πλατφόρμα, προκειμένου να προσφέρει ένα ανοιχτό Matlab-στυλ σύστημα με τον επιστήμονα. Ο χρήστης του μπορεί να λειτουργήσει ScalaLab τόσο με το Matlab-όπως και με προσανατολισμένο script τρόπο ή με την Java / Scala σαν τρόπο της δομής stand-alone εφαρμογών. Επίσης, ο χρήστης μπορεί να αντικαταστήσει ScalaLab scripts με τα μαθήματα, ώστε να οικοδομηθεί σταδιακά μια σύνθετη εφαρμογή. 10

11 Το περιβάλλον ScalaLab Η ScalaLab βασίζεται στη τεχνολογία στοίβας που αναπτύχθηκε εδώ και πολλά χρόνια για την Java Virtual Machine. Τα κύρια συστατικά αυτής της τεχνολογίας είναι: Ο Just-In-Time Java Compiler. Αν και απαρατήρητο στο χρήστη το στοιχείο αυτό είναι ίσως το πιο σημαντικό. Βήματα στο Just-In-Time compilation επιτρέπει τα bytecodes σήμερα να εκτελούνται με ταχύτητες που υπερβαίνουν ακόμα και των εγγενώς μεταγλωττισμένο κώδικα. Το γεγονός αυτό είναι ζωτικής σημασίας στον τομέα του αριθμητικού κώδικα που περιλαμβάνει μεγάλο αριθμό crunching. Ο Java compiler. Η ScalaLab ενσωματώνει τον Java 6 compiler μέσα στο εκτελέσιμο του. Έτσι, ο χρήστης μπορεί εύκολα να μεταγλωττίσει και να εκτελέσει κλάσεις Java, αποφεύγοντας την ενόχληση της εγκατάστασης και τον χειρισμό ενός εξωτερικού compiler Java. Ο Scala compiler και οι Run-Time βιβλιοθήκες. Η ScalaLab ενσωματώνει μια πρόσφατη έκδοση του όλου συστήματος Scala. Έτσι, μια ξεχωριστή εγκατάσταση της Scala είναι περιττή. Ο διερμηνέας της Scala. Αυτή η συνιστώσα είναι ο πυρήνας της ScalaLab και ο ένας που υλοποιεί την Matlab αίσθηση του συστήματος. Πρόκειται για ένα προηγμένο διερμηνέα που διερευνά καλά τα εσωτερικά της Java Virtual Machine για να διατηρηθεί η κατάσταση μεταξύ διαδοχικών εκτελέσιμων σεναρίων. 11

12 Οι ολοκληρωμένες Java βιβλιοθήκες. Οι Java Βιβλιοθήκες για τις πιο σημαντικές αριθμητικές εργασίες έχουν ενσωματωθεί με ScalaLab και είναι άμεσα διαθέσιμες στο χρήστη. Εξωτερικές κλάσεις βιβλιοθηκών. Από την στιγμή που η ScalaLab τρέχει από την Java Virtual Machine οποιοδήποτε αρχείο κλάσης μπορεί να εκτελεστεί όσο τοποθετείται στο classpath της ScalaLab. Η ScalaLab κρατά μια μεταβλητή προσαρμοσμένη στο περιβάλλον ScalaSciClassPath για την εφαρμογή της έννοιας του classpath. Ωστόσο, ειδική υποστήριξη που προσφέρεται για εύκολη φόρτωση.jar αρχείων που συσκευάζουν βιβλιοθήκες Java, δεδομένου ότι είναι ιδιαίτερα σημαντικό να χρησιμοποιούν αποτελεσματικά εργαλειοθήκες του κώδικα Java. Επίπεδο εφαρμογών Wizards. Τα εργαλεία αυτά διευκολύνουν σε μεγάλο βαθμό την ανάπτυξη εξειδικευμένων εφαρμογών. Θα δώσουμε ένα παράδειγμα επίλυσης Διαφορικών Εξισώσεων (Σ.Δ.Ε.) με ScalaLab, όπου οι οδηγοί είναι ιδιαίτερα χρήσιμοι. Το περιβάλλον χρήστη της ScalaLab αποτελείται από τα ακόλουθα συστατικά: a. Η κονσόλα ScalaLab που δέχεται εντολές και scripts από το χρήστη. Εντολές ελέγχου εκτελούνται άμεσα, ενώ τα σενάρια εκδίδονται στο διερμηνέα Scala για εκτέλεση. Ένα αναδυόμενο μενού, επίσης, εμφανίζει χρήσιμες επιλογές, όπως η επαναφορά του διερμηνέα Scala ή η εναλλαγή μεταξύ των διερμηνέων που χρησιμοποιήθηκαν σε διαφορετικές Java επιστημονικές βιβλιοθήκες. Ο χρήστης μπορεί να αντιγράψει και να επικολλήσει κώδικα στο παράθυρο της κονσόλας και αυτόν τον κώδικα που εκτελείται. 12

13 b. Το παράθυρο ιστορίας που κρατάει το ιστορικό των καλά εκτελέσιμων εντολών επιτρέποντας την άμεση επανεκτέλεση μιας εντολής απλά επιλέγοντάς την. c. Το παράθυρο μεταβλητού χώρου εργασίας που εμφανίζει τις global μεταβλητές και τους τύπους της d. Ο εξερευνητής ScalaLab, ο οποίος επιτρέπει να περιηγηθείτε εύκολα στο σύστημα αρχείων και να εκτελεστούν λειτουργίες στα αρχεία π.χ. να επεξεργαστούν, να καταρτίζουν, να τρέξουν Java και Scala αρχεία κλπ. e. Ο επεξεργαστής ScalaLab, είναι ένας απλός επεξεργαστής κειμένου που βοηθά προσφέροντας ειδικές λειτουργίες, όπως την κατάρτιση και την εκτέλεση των αρχείων Java / Scala και τη δημιουργία χρήσιμων προτύπων για Java και Scala εφαρμογές που χρησιμοποιούν εξειδικευμένες βιβλιοθήκες, π.χ. η αποτελεσματική βιβλιοθήκη Java Matrix, το BioJava κ.α. f. Το παράθυρο εξόδου της κονσόλας μπορεί να κυλήσει τα αποτελέσματα των εντολών. Στην ουσία στην κονσόλα εξόδου System.out stream της Java ανακατευθύνεται και έτσι όλη η παραγωγή μπορεί να εξεταστεί εύκολα. 13

14 14

15 Πλεονεκτήματα της ScalaLab Τα κύρια πλεονεκτήματα της ScalaSci που την εξοπλίζει με μεγάλες δυνατότητες είναι: 1. Η ευελιξία και η επεκτασιμότητα της ισχυρής γλώσσας Scala, που προσφέρει πολλές ευκαιρίες για να εφαρμοστούν πρακτικά επιστημονικοί φορείς υψηλού επιπέδου. 2. Η ταχύτητα της Scala βάση προγραμματισμού, που πλησιάζει την ταχύτητα του βελτιστοποιημένου κώδικα Java, και έτσι είναι κοντά ή ακόμα καλύτερα από την C / C ++ βάση επιστημονικού κώδικα! 3. Τα τεράστιες βασισμένες σε Java επιστημονικές βιβλιοθήκες με εξαιρετικό κώδικα για πολλά πεδία εφαρμογών. Οι βιβλιοθήκες αυτές είναι άμεσα διαθέσιμες από την ScalaSci με τη δυναμική φόρτιση των αντίστοιχων εργαλειοθηκών Java. 4. Το φιλικό προς τον χρήστη Matlab περιβάλλον της ScalaLab και η υψηλή ποιότητα υποστήριξης επιστημονικής αποτύπωσης. 5. Η ScalaLab μπορεί άμεσα να καλέσει και να έχει πρόσβαση στα αποτελέσματα από Matlab scripts. Επίσης GroovyLab scripts μπορούν να εκτελεστούν άμεσα, για αυτούς που προτιμούν javaστυλ σύνταξης. Στην συνέχεια θα εξετάσουμε 2 βιβλιοθήκες java που μπορούν να ενσωματοθούν στην ScalaLab για περαιτέρω επεξεργασία πληροφοριών και απαιτήσεων. Η μια βιβλιοθήκη είναι η Visad, η οποία είναι χρήσιμη για την οπτικοποίηση δεδομένων, και η άλλη Apache Common Maths, η οποία είναι χρήσιμη για λύση πολύπλοκων εξισώσεων μέσω προγραμματισμού. 15

16 Κεφάλαιο 2 VISAD Περίληψη Visad Το Visad είναι μια βιβλιοθήκη της Java για διαδραστική οπτικοποίηση και ανάλυση των αριθμητικών δεδομένων. Το όνομα Visad είναι ακρώνυμο για "Οπτικοποίηση του αλγόριθμου Ανάπτυξης". Το σύστημα συνδυάζει: Την χρήση καθαρής Java για ανεξαρτησία πλατφόρμας και για την υποστήριξη της ανταλλαγή δεδομένων και συνεργασίας σε πραγματικό χρόνο μεταξύ των γεωγραφικά κατανεμημένων χρηστών. Η υποστήριξη για κατανεμημένα συστήματα είναι ενσωματωμένη στα χαμηλότερα επίπεδα του συστήματος χρησιμοποιώντας Java RMI. Ένα γενικό μοντέλο μαθηματικών δεδομένων που μπορεί να προσαρμοστεί σε σχεδόν οποιαδήποτε αριθμητικά δεδομένα, που υποστηρίζει την ανταλλαγή δεδομένων μεταξύ των διαφόρων χρηστών, διαφορετικές πηγές δεδομένων και διαφορετικούς επιστημονικούς κλάδους, και ότι παρέχει διαφανή πρόσβαση στα δεδομένα ανεξάρτητα από τη μορφή αποθήκευσης και θέση (π.χ., μνήμη, δίσκος ή εξ αποστάσεως). Το μοντέλο δεδομένων είναι προσαρμοσμένο σε NetCDF, HDF-5, ΤΑΙΡΙΑΖΕΙ, HDF-EOS, McIDAS, Vis5D, GIF, JPEG, TIFF, QuickTime, ASCII και πολλές άλλες μορφές αρχείων. Ένα γενικό μοντέλο προβολής που υποστηρίζει διαδραστική 3-D, συγχώνευση δεδομένων, πολλαπλές προβολές δεδομένων, άμεση χειραγώγηση, και την εικονική πραγματικότητα. Το μοντέλο της οθόνης έχει προσαρμοστεί Java3D και Java2D και χρησιμοποιείται σε ImmersaDesk οθόνη εικονικής πραγματικότητας. 16

17 Ανάλυση των δεδομένων και υπολογισμός ενσωμάτωσης με απεικόνιση για την υποστήριξη υπολογιστικών διευθύνσεων και άλλες σύνθετες λειτουργίες αλληλεπίδρασης. Υποστήριξη για δύο διαφορετικές κοινότητες: προγραμματιστές που δημιουργούν domain-based συστήματα που βασίζονται σε Visad, και οι χρήστες αυτών των συστημάτων σε συγκεκριμένους τομείς. Το Visad έχει σχεδιαστεί για να υποστηρίξει μια ευρεία ποικιλία των διεπαφών χρήστη, που κυμαίνονται από απλά applets φυλλομετρητή δεδομένων μέχρι πολύπλοκες εφαρμογές που επιτρέπουν σε ομάδες των επιστημόνων να αναπτύξουν συνεργατικά αλγορίθμων ανάλυσης δεδομένων. Προγραμματιστική επεκτασιμότητα με όσο το δυνατόν περισσότερους τρόπους. 17

18 Java κατανεμημένα στοιχεία για αριθμητική απεικόνιση σε VISAD. Μέσα σε 10 χρόνια, το αριθμητικό υπολογιστικό περιβάλλον θα ενισχύσει το μοίρασμα μεταξύ των επιστημόνων, προσθέτοντας μια νέα δομή στο Web. Θα αποτελείται από ένα επίμονο, ενεργό δίκτυο των αριθμητικών δεδομένων και υπολογιστικά, εμφανισιακά, και σε περιβάλλον του χρήστη στοιχεία που διανέμονται μέσω του Διαδικτύου. Όπως και με το Web, οι χρήστες ακόμη και τα προγράμματα εφαρμογής σε μεγάλο βαθμό θα αγνοούν τους φυσικούς υπολογιστές, αλλά αντί αυτού την πρόσβαση σε ένα παγκόσμιο κοινό δίκτυο λογικών στοιχείων. Οι χρήστες θα εξερευνήσουν το δίκτυο μέσω των browsers και θα προσθέτουν νέα στοιχεία σε αυτό. Για παράδειγμα, οι ατμοσφαιρικοί χημικοί θα μπορούσαν να χρησιμοποιήσουν ένα πρόγραμμα περιήγησης για να εντοπίσουν ένα σύνολο δεδομένων προσομοίωσης καιρού ή ακόμα και ένα τρεχούμενο μοντέλο καιρού, συνδέοντας ως είσοδο μοντέλα χημεία, και στην συνέχεια, συνδέοντας ένα στοιχείο οθόνης για να απεικονίσει τους υπολογισμούς του κάθε μοντέλου. Κολέγια μοντελοποίησης καιρού θα μπορούσαν στη συνέχεια να κοινοποιήσουν αυτήν την εμφάνιση στους browsers τους και να συνδέσουν εξαρτήματα χρήστη για να συνεργαστούν πάνω σε πειράματα με τα συζευγμένα μοντέλα. Ένα τέτοιο περιβάλλον θα προκαλέσει πολλές long-held παραδοχές σχετικά με τον τρόπο που οι προγραμματιστές γράφουν αριθμητικά λογισμικά, όπως οι εξής: Ενιαίες μηχανές ή φτιαγμένα μέρη μηχανών. Το αριθμητικό λογισμικό τρέχει σε ένα μοναδικό μηχάνημα ή χωρίζεται σε πολλαπλές μηχανές με μια σταθερή διαμόρφωση: η πρόκληση έρχεται από την υποστήριξη του Grid Computing και διανεμημένη τεχνολογία αντικειμένων. 18

19 Η δομή και ιδιότητες των στοιχείων. Η δομή και οι ιδιότητες των στοιχείων είναι γνωστά εκ των προτέρων από τους προγραμματιστές που γράφουν λογισμικό για την πρόσβαση των δεδομένων: η πρόκληση έρχεται από αφηρημένα αριθμητικά μοντέλα δεδομένων και Χρήσεις του λογισμικού. Οι χρήσεις αυτές είναι γνωστές εκ των προτέρων από τους προγραμματιστές που γράφουν λογισμικό: η πρόκληση έρχεται από επαναχρησιμοποιήσιμα στοιχεία. Αναπτύσσεται το Visualization για ανάπτυξη αλγορίθμων, ή αλλιώς VISAD, μια βιβλιοθήκη από java στοιχεία για να υπερβεί αυτούς τους περιορισμούς οπού αυτές οι υποθέσεις επιβάλλουν στην αριθμητική απεικόνιση, προσδιορίζοντας τους τύπους των java στοιχείων: Δεδομένων. Υλοποιεί ένα μοντέλο δεδομένων που ορίζει ένα γραμματικό σχήμα για την οργάνωση αλφαριθμητικών τιμών. Καθορίζει επίσης τα σχετικά metadata (όπως μονάδες, συστήματα συντεταγμένων, δειγματοληψίες γεωμετρίας και τοπολογίας, ελλείπεις δείκτες δεδομένων, και εκτιμήσεις σφάλματος). Το γραμματικό σχήμα και τα metadata μπορούν να εκφράσουν τις εικόνες, 3D πλέγματα, χρονολογικές σειρές, τα όρια χάρτη, απλούς πραγματικούς αριθμούς, και σχεδόν όλα τα άλλα αριθμητικά στοιχεία. Τα δεδομένα συστατικού API κρύβουν διασυνδέσεις σε μια ποικιλία αρχείων και δεδομένων του διακομιστή σχημάτων, την κίνηση των δεδομένων μεταξύ του δίσκου και της μνήμης, την κίνηση των δεδομένων μέσω δικτύου, και κατατμήσεις των μεγάλων κατασκευαστικών στοιχείων σε συστάδες επεξεργαστή. Εμφάνισης. Εφαρμόζει ένα αφηρημένο μοντέλο εμφάνισης που επιτρέπει στις εφαρμογές να καθορίζουν απεικονίσεις δεδομένων περιγραφικάμέσω αντιστοιχίσεων από πρωτόγονες τιμές δεδομένων σε πρωτόγονες τιμές εμφάνισης-και όχι διαδικαστικά. Η οθόνη συστατικών API κρύβει τη βιβλιοθήκη γραφικών (όπως Java3D και Java2D) που χρησιμοποιείται για να καταστήσει παραστάσεις, καθώς και κατά πόσον οι παραστάσεις αποδίδονται σε παράθυρα στις οθόνες του σταθμού εργασίας, στα προγράμματα περιήγησης, ή σε εικονικής πραγματικότητας οθόνες. 19

20 Υπολογισμού. Χρησιμοποιεί κώδικα που παρέχεται από τις εφαρμογές για να υπολογίσει τις τιμές για τα συστατικά στοιχεία ή να εκμεταλλευτεί στοιχεία εμφάνισης με βάση τις αξίες των άλλων συστατικών στοιχείων. Το υπολογιστικό συστατικό API κρύβει τη γλώσσα προγραμματισμού που χρησιμοποιείται για την εφαρμογή που παρέχεται από τον κώδικα. Διεπαφή χρήστη. Περιλαμβάνει γνωστές εικόνες (όπως κουμπιά και sliders) συνδέοντας τις ενέργειες των χρηστών (όπως τα κλικ του ποντικιού) στις αξίες των στοιχείων των δεδομένων και στα καλέσματα της βιβλιοθήκης. Δίκτυα τέτοιων συστατικών εκτείνονται σε πολλούς υπολογιστές μέσω Java Remote Method Invocation (RMI), μια τεχνολογία κατανεμημένων αντικειμένων. Μπορούν να εκφράσουν διάφορες μορφές των κατανεμημένων συστημάτων πληροφορικής (όπως client-server, επεξεργασία συμπλέγματος, και εξ αποστάσεως συνεργασία, καθώς και ό, τι οι προγραμματιστές και οι χρήστες ενδιαφέρονται για να καθορίσουν). Εμφανισιακά και υπολογιστικά στοιχεία μπορούν να συνδέονται με τα συστατικά στοιχεία, με τις ενέργειές τους (ενημέρωση απεικονίσεις των δεδομένων ή την εκτέλεση) που ενεργοποιούνται κάθε φορά που αλλάζουν τα δεδομένα που συνδέονται με τις τιμές. Ένα στοιχείο δεδομένων μπορεί να συνδέεται με πολλαπλές συνιστώσες εμφάνισης με μια διαφορετική απεικόνιση κάθε φορά: πολλαπλά συστατικά στοιχεία μπορεί να συνδέονται με ένα κοινό συστατικό εμφάνισης για την οπτική σύγκριση. Στοιχεία εμφάνισης μπορούν να συνδέονται ακόμα με άλλα στοιχεία της οθόνης, δημιουργώντας συνεργατικά δίκτυα εμφάνισης που συγχρονίζουν την εμφάνισή τους: οποιαδήποτε αλλαγή από τους χρήστες ή τις εφαρμογές αντικατοπτρίζεται σε όλες τις συνδεδεμένες εμφανίσεις. Στοιχεία του περιβάλλοντος του χρήστη μπορεί να συνδεθούν με συστατικά στοιχεία, επιτρέποντας στους χρήστες να χειραγωγήσουν τις τιμές των δεδομένων. Στοιχεία εμφάνισης μπορούν επίσης να χρησιμοποιηθούν ως συστατικά του χρήστη του περιβάλλοντος, που επιτρέπει στους χρήστες να χειραγωγήσουν τις τιμές των δεδομένων ξανασχεδιάζοντας τις απεικονίσεις τους. Όλες αυτές οι συνδέσεις μπορούν να είναι είτε τοπικές είτε απομακρυσμένες. 20

21 Αποσπώμενα δεδομένα και πρότυπα εμφάνισης. Η απόσπαση είναι το κλειδί για την επαναχρησιμοποίηση. Η VISAD επιτυγχάνει την απόσπαση των συστατικών στοιχείων, μέσω ενός γραμματικού σχήματος για την έκφραση των οργανώσεων των δεδομένων, καθώς και για στοιχεία της εμφάνισης του μέσω της έκφρασης της απεικόνισης δεδομένων όπως η χαρτογράφηση από πρωτόγονες τιμές δεδομένων σε πρωτόγονες τιμές εμφάνισης. Το σχήμα 1 είναι ένα Visad συστατικό στοιχείο χρήστη που επιτρέπει στους χρήστες να καθορίσουν τις συντεταγμένες στην οθόνη. Το παράθυρο MathType περιλαμβάνει μια έκφραση στο γραμματικό σχήμα για μια χρονική ακολουθία από 2D εικόνες γης-ένα στοιχείο δεδομένων που θα εμφανιστεί. Ο όρος περιλαμβάνει τα ονόματα για πρωτόγονες αριθμητικές τιμές και τιμές κείμενου, χωρίζοντας τις τιμές σε συντεταγμένες. Το σύστημα συντεταγμένων δείχνει ότι η συνιστώσα των δεδομένων περιλαμβάνει ένα αντιστρέψιμο μετασχηματισμό των συντεταγμένων της εικόνας και των συντεταγμένων της γης. Όλες οι αριθμητικές τιμές που εμφανίζονται στα συστατικά στοιχεία μπορούν να περιλαμβάνουν συνδεδεμένες μονάδες και εκτιμήσεις σφάλματος. Υπάρχουν, επίσης, συνήθως δειγματοληψίες για τους τομείς των οποιονδήποτε λειτουργικών εξαρτήσεων. Μετατροπές μονάδων, μετασχηματισμοί συντεταγμένων, αναδειγματοληψία, διάδοση των δεδομένων που λείπουν και εκτιμήσεις από λάθη όλα γίνονται σιωπηρά όπως χρειάζεται σε μαθηματικές λειτουργίες. Για να οριστούν απεικονίσεις δεδομένων, πρωτόγονες αξίες -στα δεδομένα του χάρτη από το παράθυρο- αντιστοιχίζονται σε πρωτόγονες αξίες οθόνης. Το παράθυρο τρέχον-χάρτες παρουσιάζει την πρώτη εικασία του συστήματος σε κατάλληλες αντιστοιχίσεις για το σχήμα στο παράθυρο του MathType. Ο χρήστης μπορεί να καθαρίσει αυτές τις αντιστοιχίσεις και να δημιουργήσει νέες με εναλλάξ κλικ στα ονόματα πρωτόγονων τιμών δεδομένων και τα ονόματα πρωτόγονων δεδομένων εμφάνισης. Το στοιχείο του περιβάλλοντος επαφής του χρήστη στο σχήμα 1 καθορίζει τις αντιστοιχίσεις των καλεσμάτων την βιβλιοθηκών σε οποιαδήποτε εφαρμογή. Η γραμματική του σχήματος δεδομένων επιτρέπει συστατικά στοιχεία να επαναχρησιμοποιηθούν για σχεδόν οποιαδήποτε αριθμητικά δεδομένα 21

22 και δεδομένα κειμένου. Επιπλέον, τα σχετικά metadata επιτρέπουν ουσιαστικές συγκρίσεις των δεδομένων από διαφορετικές πηγές, συμπεριλαμβανομένης της χωρικής και χρονικής ευθυγράμμισης σε εμφανίσεις, και είναι σημαντικό για την αύξηση κοινής χρήσης δεδομένων στο Διαδίκτυο. Το σύστημα περιλαμβάνει μια σειρά από μαθήματα για την ερμηνεία αρχείων δεδομένων και μορφές του διακομιστή ως συστατικά στοιχεία, εμμέσως μεταφέροντας δεδομένα σε μια μνήμη cache, όπως απαιτείται για να εκτελεστούν δεδομένα συστατικών κλήσεων API. Visad προγραμματιστές έχουν εφαρμόσει αυτές τις κλάσεις σε περισσότερες από 20 κοινές μορφές αριθμητικών δεδομένων. Οι αντιστοιχίσεις εμφάνισης επιτρέπουν την επαναχρησιμοποίηση των συστατικών οθόνη για σχεδόν οποιαδήποτε μορφή απεικόνισης δεδομένων. Το γεγονός ότι οι αντιστοιχίσεις εμφάνισης είναι μια περιγραφικός και όχι διαδικαστικός ορισμός των απεικονίσεις δεδομένων επιτρέπει στοιχεία της οθόνης για να χρησιμοποιηθούν ως συστατικά του περιβάλλοντος του χρήστη, με τους χρήστες να τροποποιούν τις τιμές δεδομένων με επανασχεδιασμό απεικονίσεις δεδομένων. Δηλαδή, οι διαδικασίες είναι δύσκολο να αντιστραφούν, ενώ οι περιγραφές ισχύουν εξίσου καλά τόσο στην απεικόνιση δεδομένων-προς-απεικόνιση όσο και απεικόνιση-προς-δεδομένα. Οι προγραμματιστές μπορούν να επεκτείνουν τις κλάσεις Java εφαρμόζοντας συστατικά στοιχεία προκειμένου να καθορίσουν τα δικά τους συστήματα συντεταγμένων, τοπολογίες δειγματοληψίας, και αλγορίθμων παρεμβολής. Με την ανεξαρτησία της Java πλατφόρμας, αυτοί οι μαθηματικοί αλγόριθμοι μπορούν να μεταφερθούν με τα συστατικά στοιχεία μεταξύ των διαφόρων μηχανημάτων: με αυτόν τον τρόπο, οι αλγόριθμοι μπορούν να λειτουργήσουν ως περιεχόμενα των δεδομένων. Οι προγραμματιστές μπορούν να επεκτείνουν τις κατηγορίες εφαρμογής στοιχείων εμφάνισης, προκειμένου να καθορίσουν τους δικούς τους αλγόριθμους απόδοσης ή ακόμη και να χρησιμοποιήσουν μια διαφορετική βιβλιοθήκη γραφικών. 22

23 Οπτικοποίηση και Ανάλυση Για τους νέους χρήστες, η βιβλιοθήκη Visad είναι μια πρόκληση, λόγω του υψηλού επιπέδου της αποσπασματικότητας. Το πρώτο βήμα τους είναι συνήθως να απεικονίσουν τα δεδομένα τους σε ένα λογιστικό φύλλο Visad, το οποίο παρέχει πρόσβαση σε ένα μεγάλο μέρος της βιβλιοθήκης μέσω ενός GUI. Το περιβάλλον χρήστη στο σχήμα 1 είναι μέρος αυτής της GUI, βοηθώντας τους χρήστες να μάθουν για το γραμματικό σχήμα δεδομένων και τις συντεταγμένες εμφάνισης. Μπορούν να πειραματιστούν με τα αρχεία δεδομένων και τα σύνολα συντεταγμένων εμφάνισης, και να δουν τις προκύπτουσες απεικονίσεις. Το GUI λογιστικό φύλλο αποτελείται κυρίως από μια ορθογώνια συστοιχία κελιών (εμφάνισης-στοιχεία windows), το καθένα ενδεχομένως περιέχει απεικονίσεις πολλαπλών δεδομένων. Αυτά τα αρχεία παράγονται από την ανάγνωση αρχείων ή server ή από απλές φόρμουλες που εφαρμόζονται σε στοιχεία δεδομένων σε άλλα κελιά. Όταν οι χρήστες είναι έτοιμοι να προγραμματίσουν την βιβλιοθήκη, ο ευκολότερος τρόπος για να ξεκινήσουν είναι γράφοντας Python scripts. Ένα script μπορεί να είναι απλό, όπως η γραμμή plot(load("filename")), η οποία φορτώνει και εμφανίζει ένα αρχείο δεδομένων. Το Visad υποστηρίζει Python, μέσω της εφαρμογής Jython, παρέχοντας πρόσβαση σε αντικείμενα Java από την Python, και αυτό σημαίνει ότι το σύνολο της βιβλιοθήκης Visad είναι προσβάσιμο από την Python. Υποστήριξη είναι επίσης διαθέσιμη για μαθηματικές πράξεις σε συστατικά στοιχεία μέσω Python εκφράσεις infix και για εξειδικευμένες εμφανίσεις (όπως ιστογράμματα, διαγράμματα διασποράς, οικόπεδα περιγράμματος, και animations) χωρίς να χρειάζεται οι χρήστες να κατανοήσουν τις συντεταγμένες εμφάνισης του συστήματος. Τα Python scripts μπορούν να επικαλεστούν τη λειτουργία plot για να απεικονίσουν δεδομένα χρησιμοποιώντας ένα κελί του φύλλου εργασίας, επιτρέποντας στους χρήστες να ελέγχουν τις συντεταγμένες εμφάνισης μέσω του περιβάλλοντος χρήστη. 23

24 Συνεργατική Προσομοίωση Η βιβλιοθήκη Visad χρησιμοποιείται για να γράψει τις παραδοσιακές εφαρμογές οπτικοποίησης που αναλαμβάνουν συγκεκριμένες δομές δεδομένων και απεικονίσεις. Αυτές οι εφαρμογές συνήθως απαιτούν μερικές εκατοντάδες έως μερικές χιλιάδες γραμμές της Java. Η κατανομή της βιβλιοθήκης περιλαμβάνει περίπου 12 τέτοιες εφαρμογές ως παραδείγματα για τους νέους χρήστες. Η εφαρμογή Galaxy (το GUI του είναι στο σχήμα 2) είναι αρκετά χαρακτηριστική, επιτρέποντας ομάδες αστρονόμων να συνεργαστούν σε πειράματα με την προσομοίωση του γαλαξίας μας του φυσικού Robert Benjamin και να δούμε πώς θα φαινόταν από την γη ο H-alpha χάρτης ουρανού. Οι παράμετροι προσομοίωσης ορίζονται από ένα σύνολο απλών αριθμητικών αρχείων δεδομένων οπού οι χρήστες προσαρμόζουν μέσω των συστατικών που φαίνονται στην αριστερή πλευρά του σχήματος 2. Ο κώδικας προσομοίωσης γραμμένος σε Fortran γλώσσαπαράγει στοιχεία δεδομένων που συνδέονται με την εμφάνιση δεδομένων δημιουργώντας άλλα παράθυρα στο σχήμα 2. Το παράθυρο στο άνω κέντρο στο σχήμα δείχνει μια ισοεπιφάνεια της προσομοιωμένης πυκνότητας θερμού αέριου, το παράθυρο στο κάτω-κέντρο δείχνει το H- alpha χάρτη του ουρανού, όπως φαίνεται από τη Γη. Το κόκκινο σημείο και η πράσινη γραμμή στο παράθυρο που είναι πάνω-κέντρο απεικονίζουν ένα διάνυσμα από τη Γη σε κάποιο σημείο έξω από το Γαλαξία μας. Οι χρήστες σέρνουν το κόκκινο σημείο για να αλλάξουν τις συντεταγμένες, αλλαγές στο φορέα ενεργοποιούν μια δεύτερη υπολογιστική συνιστώσα να παράγει πυκνότητα και φάσματα κατά μήκος του φορέα, όπως στα πάνω και κάτω δεξιά παράθυρα. Ένας χρήστης που ξεκινά τη λειτουργία του πρώτου αντίγραφου της εφαρμογής Galaxy έχει όλα τα δεδομένα, υπολογιστικά, εμφανισιακά, και περιβάλλον του χρήστη συστατικά. Ωστόσο, οι άλλοι χρήστες οι οποίοι θα αρχίσουν να τρέχουν συνεργατικά αντίγραφα του Galaxy έχουν μόνο νέα στοιχεία εμφάνισης και περιβάλλον του χρήστη που συνδέονται μέσω RMI με τα δεδομένα και τα υπολογιστικά στοιχεία κατά το πρώτο αντίγραφο της αίτησης. 24

25 Αξιοποίηση επαναχρησιμοποιημένων στοιχείων Η βιβλιοθήκη Visad χρησιμοποιείται για την υποστήριξη εφαρμογών (πιο εξελιγμένες από την εφαρμογή Galaxy) που δεν αναλαμβάνουν συγκεκριμένες δομές δεδομένων και απεικονίσεις. Συνεχίζουν έργα που απαιτούν χρόνια ανάπτυξης. Το SpreadSheet-η πρώτη τέτοια εφαρμογήασχολείται με οποιαδήποτε δομή δεδομένων, πρόσβαση σε δεδομένων από απομακρυσμένους διακομιστές, και είναι πλήρως συνεργατική, το περιβάλλον χρήστη στο σχήμα 1 δίνει τη δυνατότητα στους χρήστες να δημιουργούν οποιαδήποτε απεικόνιση. Πολλοί χρήστες μπορεί να συνδέσουν τα υπολογιστικά φύλλα τους μαζί, και οι δράσεις που ξεκίνησαν από κάθε μεμονωμένο χρήστη φαίνονται στα GUI όλων. Η Unidata Program Center, τμήμα του Πανεπιστημίου Corporation for Atmospheric Research in Boulder, CO, χρησιμοποιεί Visad για την ανάπτυξη του Integrated Data Viewer (IDV) ως μέρος του Εθνικού Ιδρύματος Επιστημών που προμηθεύει τον κόσμο με επιστημονικά δεδομένα, και έχει πρόσβαση σε λογισμικά από Η.Π.Α. πανεπιστήμια. Η IDV επιτρέπει στους χρήστες να περιηγηθούν σε απομακρυσμένους διακομιστές και να συνδυάσουν τα δεδομένα τους σε ένα κοινό χωροχρονικό πλαίσιο αναφοράς. Λόγω της ποικιλομορφίας των περιβαλλοντικών-οργάνων παρατήρησης και προσομοιώσεων, τα επιστημονικά δεδομένα της γης περιλαμβάνουν μια ποικιλία των δομών και των ιδιοτήτων που υποστηρίζονται από την IDV. Εκτός του ότι είναι σε θέση να έχουν πρόσβαση σε στάνταρ εξυπηρετητές δεδομένων της Γης, η IDV παρέχει ένα περιβάλλον χρήστη Web που αναγνωρίζει συνδέσεις με αριθμητικά αρχεία δεδομένων. Κάνοντας κλικ στους συνδέσμους κατεβαίνουν τα αρχεία στο παράθυρο χωροχρονικής απεικόνισης και όχι μέσα από το παράθυρο του προγράμματος περιήγησης. Το Εργαστήριο Οπτικών Υπολογιστικών οργάνων στο Πανεπιστήμιο του Wisconsin-Madison χρησιμοποιεί Visad για την ανάπτυξη του συστήματος VisBio για την οπτικοποίηση και την ανάλυση των μεγάλων πολυδιάστατων συνόλων δεδομένων για μικροσκόπιο. Το σχήμα 3 δείχνει ένα VisBio volume rendering μιας εικόνας 3D μικροσκοπία ενός ζωντανού εμβρύου του C. elegans (ένα είδος νηματώδους σκουληκιού). Εκτός από τις διάφορες μορφές εμφάνισης της εικόνα, το σύστημα 25

26 καθορίζει προσαρμοσμένους δείκτες ποντικιού οπού οι χρήστες σέρνουν για να μετρήσουν αποστάσεις σε εικόνες και κινήσεις σε ακολουθίες του χρόνου. Ένας αριθμός σχημάτων δεδομένων είναι κατάλληλος για μια ποικιλία δεδομένων μικροσκοπίου, ανάλογα με το αν αυτοί περιλαμβάνουν βάθος (3D εναντίον 2D), ανάλυση αλληλουχίας, και πολλαπλά φάσματα. Με έως και έξι ανεξάρτητες μεταβλητές, τα σύνολα δεδομένων μικροσκοπίου μπορούν να είναι αρκετά μεγάλα. Έτσι VisBio αναπτύσσει προοδευτική βελτίωση απόδοσης (χαμηλή ανάλυση, ενώ το σκηνικό αλλάζει, υψηλή ανάλυση, όταν σταματά η αλλαγή) και την περίπλοκη διαχείριση της μνήμης. Η Αυστραλιανή Μετεωρολογική Υπηρεσία χρησιμοποιεί Visad για την ανάπτυξη του Australian Integrated Forecast System (AIFS) 2, ένα σύστημα Πρόγνωσης, που αποτελείται από μια σειρά modules που υποστηρίζουν εργασίες με προβλέψεις. Τα περισσότερα από αυτά τα καθήκοντα απαιτούν επικαλύψεις των δεδομένων με διαφορετικές δομές και ιδιότητες. Απαιτούν επίσης τον χειρισμό του χρήστη στα δεδομένα, σύροντας τις απεικονίσεις τους. Εν τω μεταξύ, το αμερικανικό Εθνικό Κέντρο για την Ατμοσφαιρική Έρευνα στο Boulder, CO, χρησιμοποιεί Visad για την ανάπτυξη Visual MEteorology Tool (VMET) για την οπτική μετεωρολογία. Όπως και το IDV και AIFS, VMET πρέπει να εμφανίζει τα δεδομένα με διαφορετικές δομές και ιδιότητες και παράγει μια ποικιλία από απεικονίσεις δεδομένων. Τα επαναχρησιμοποιήσιμα συστατικά του Visad, επίσης, χρησιμοποιούνται για πειράματα με τεχνικές απεικόνισης. Οι Visad προγραμματιστές έχουν επεκτείνει κλάσεις εφαρμόζοντας στοιχεία δεδομένων να υποστηρίζουν μεγάλα πακέτα δεδομένων δομημένα σε όλα τα συμπλέγματα του επεξεργαστή. Έχουν επεκτείνει κλάσεις εφαρμόζοντας στοιχεία απεικόνισης για να εκμεταλλευτούν την παράλληλη επεξεργασία για την οπτικοποίηση αυτών των κατανεμημένων συστατικών στοιχείων. Και έχουν επεκτείνει επίσης κλάσεις εφαρμόζοντας στοιχεία απεικόνισης για να απεικονίσει τα δεδομένα στο ImmersaDesk, ένα σύστημα εικονικής πραγματικότητας, καθώς και για την προοδευτική απόδοση του. Η βιβλιοθήκη Visad έχει αποδειχθεί ένα χρήσιμο εργαλείο για την έρευνα απεικόνισης, διότι επιτρέπει πειράματα σε οποιοδήποτε επίπεδο μέσω επεκτάσεων τάξης. Παρέχει επίσης τις απαραίτητες προγραμματιστικές υποδομές που 26

27 χρειάζονται για να γραφτούν πρακτικές εφαρμογές που δημιουργούν οι αξιολογήσεις των νέων τεχνικών από τους πραγματικούς χρήστες. Η βιβλιοθήκη Visad, συμπεριλαμβανομένου του πηγαίου κώδικα, και παραδείγματα εφαρμογών, είναι ελεύθερα διαθέσιμο στο Το Ugo Taddei του Ινστιτούτου Γεωγραφίας στο Πανεπιστήμιο της Ιένας στη Γερμανία συνέβαλε ένα καλό online γενικό φροντιστήριο και εξειδικευμένα tutorials. Περίπου 15 προγραμματιστές από μισή ντουζίνα ιδρύματα συνέβαλαν κώδικα στη βιβλιοθήκη. Η πολύ μεγαλύτερη κοινότητα των προγραμματιστών που χρησιμοποιούν τη βιβλιοθήκη, υποστηρίζονται από μια ενεργή λίστα mail που χρησιμοποιείται για online συζήτηση και συνεργασία. 27

28 Σχήμα 1 28

29 Σχήμα 2 29

30 Σχήμα 3 30

31 Χτίζοντας 3D-Components με VISAD Σκεφτόμαστε συνήθως τις βιβλιοθήκες οπτικοποίησης και τα γραφικά περιβάλλοντα χρήστη (GUI) ως δύο διαφορετικά πράγματα. Τα στοιχεία του GUI έχουν πολύ στυλιζαρισμένες εμφανίσεις, αποτελούν απλά στοιχεία, σε αντίθεση με τα σύνθετα δεδομένα σε τυπικές απεικονίσεις, και τονίζουν τη ροή πληροφοριών από τον χρήστη στον υπολογιστή, σε αντίθεση με τη ροή από τον υπολογιστή στο χρήστη σε απεικονίσεις. Ωστόσο, και το GUI και η βιβλιοθήκη οπτικοποίησης είναι για την οπτική επικοινωνία μεταξύ του χρήστη και του υπολογιστή, και μπορούμε να σκεφτούμε τα συστατικά του GUI ως απεικονίσεις των απλών στοιχείων που τονίζουν την αλληλεπίδραση του χρήστη. Για παράδειγμα, ο ολισθητήρας στο σχήμα 1 είναι μία απεικόνιση ενός πραγματικού αριθμού, και ο πίνακας χρωμάτων στο Σχήμα 2 είναι μία απεικόνιση τριών πραγματικών λειτουργιών (χαρτογράφηση pixel τιμών σε κόκκινο, πράσινα και μπλε στοιχεία χρώματος). Αυτή η στήλη περιγράφει μια προσέγγιση για το χτίσιμο στοιχεία διεπαφής χρήστη 3-D χρησιμοποιώντας την Visad βιβλιοθήκη. Αυτό είναι ένα σύστημα ανοικτού κώδικα ελεύθερα διαθέσιμο από 31

32 Διαδικαστικές εναντίον περιγραφικές visualization Βιβλιοθήκες Η Visad είναι διαφορετική από άλλες βιβλιοθήκες οπτικοποίησης. Οι περισσότερες βιβλιοθήκες καθορίζουν τη μέθοδο ή τα καλέσματα λειτουργίας που οι εφαρμογές εισάγουν σε διαδικασίες για ρητή κατασκευή εικονικών απεικονίσεων δεδομένων. Αυτές οι λειτουργίες της βιβλιοθήκης συνήθως εφαρμόζουν αλγορίθμους που υπολογίζουν isosurfaces και άλλη γεωμετρία από πίνακες δεδομένων και αλγορίθμων για την παροχή τέτοιων γεωμετριών σε πλαίσια οθόνης. Σε αντίθεση, η Visad ορίζει Java κατασκευαστές κλάσεων και μεθόδους για την περιγραφή των συστατικών στοιχείων και της προβολής μέσω των metadata που τεκμηριώνουν τη σχέση τους με τον κόσμο. Διαδικασίες εφαρμογών κατασκευάζουν δεδομένα και στοιχεία εμφάνισης αλλά δεν κατασκευάζουν ρητά απεικονίσεις δεδομένων. Η παραγωγή απεικονίσεων δεδομένων γίνεται εμμέσως από το σύστημα όταν τα στοιχεία δεδομένων συνδέονται με τα στοιχεία εμφάνισης, βασιζόμενα σε αναλύσεις περιγραφικών metadata. Τα πρωταρχικά metadata των δεδομένων είναι σχημάτων δεδομένων που καθορίζουν πρωτόγονους τύπους ονομάτων (π.χ., χρόνο, τη θερμοκρασία, το γεωγραφικό πλάτος) και μονάδων (π.χ., δευτερόλεπτα από 1η Ιανουαρίου 1970, βαθμούς Kelvin, μέτρα) για όλες αλφαριθμητικές τιμές στα συστατικά στοιχεία, καθώς και τον τρόπο οπού οι πρωτόγονες τιμές ομαδοποιούνται (π.χ., γεωγραφικό πλάτος, μήκος και ύψος μπορούν να ομαδοποιηθούν ως φορέας 3-D), και λειτουργικές εξαρτήσεις μεταξύ των πρωτόγονων τύπων (π.χ., θερμοκρασία ως συνάρτηση της 3-D τοποθεσίας γης). Ο πρωταρχικός metadata των εμφανίσεων είναι αντιστοιχίσεις από πρωτόγονους τύπους δεδομένων σε πρωτόγονες μορφές εμφάνισης, όπως animation, εμφάνιση χωρικών συντεταγμένων, εμφάνιση χρωματικών συντεταγμένων και isocontouring. Ο συνδυασμός των σχημάτων δεδομένων και της απεικόνισης αντιστοιχίσεων των πρωτόγονων τύπων είναι επαρκής για τα στοιχεία εμφάνισης να αυτοματοποιήσουν τη δημιουργία απεικονίσεις δεδομένων. 32

33 Αντιστρεψιμότητα των οπτικοποιημένων λειτουργιών Σε διαδικαστικές βιβλιοθήκες οπτικοποίησης όπου οι προγραμματιστές εφαρμογών είναι ελεύθεροι να καθορίσουν αυθαίρετα ακολουθίες ή δίκτυα των εργασιών μετατρέποντας τα δεδομένα σε εικόνα, θα είναι δύσκολο για το σύστημα να αντιστρέψει τη σειρά ή το δίκτυο των διαδικασιών, προκειμένου να μεταφράσει τις κινήσεις του χρήστη σε εμφανίσεις πίσω σε ενέργειες δεδομένων. Το πρόβλημα αυτό είναι γνωστό ανάμεσα στους προγραμματιστές των συστημάτων οπτικοποίησης. Ωστόσο, σε ένα σύστημα όπου η παραγωγή των εμφανίσεων βασίζεται στην ανάλυση των δεδομένων και την απεικόνιση των metadata, το σύστημα μπορεί να χρησιμοποιήσει την ίδια ανάλυση για να καθορίσει αντίστροφη γενιά των αλλαγών των δεδομένων από τις χειρονομίες του χρήστη σε απεικονίσεις δεδομένων. Αυτή είναι η βάση χρησιμοποιόντας το Visad για να καθορίσει 3-D στοιχεία GUI. Ένα σημαντικό στοιχείο των βιβλιοθηκών GUI είναι η ικανότητά τους να ειδοποιούν ασύγχρονα τις εφαρμογές για τις πράξεις του χρήστη μέσω μεθόδων επανάκλησης. Η Visad γεμίζει αυτή την ανάγκη, παρέχοντας έναν τρόπο για να καθορίσουν τις μεθόδους που επικαλούνται κάθε φορά όποτε τα συστατικά στοιχεία τροποποιούνται, καθώς μπορεί να είναι προς απάντηση για τις χειρονομίες του χρήστη σε απεικονίσεις δεδομένων. 33

34 Βασικοί τύποι συστατικών Μια περιγραφή του πώς να οικοδομήσουμε συστατικά GUI ως απεικονίσεις θα απαιτήσει μια πιο λεπτομερή κατανόηση του Visad. Το σύστημα καθορίζει πέντε βασικά είδη των συστατικών: 1. Δεδομένα συστατικών: αυτά μπορεί να είναι απλοί πραγματικοί αριθμοί, μπορεί να είναι συμβολοσειρές κειμένου, μπορεί να είναι συντεταγμένες πραγματικών ή άλλων τιμών, μπορεί να είναι σύνολα σε χώρους πραγματικών συντεταγμένων, μπορεί να λειτουργεί από χώρους πραγματικού διανύσματος προς άλλους χώρους δεδομένων, ή μπορεί να είναι πολύπλοκοι συνδυασμοί αυτών. Είναι ως επί το πλείστον αμετάβλητα, προκειμένου να τηρηθεί η ασφάλεια των νημάτων. 2. Στοιχεία εμφάνισης: αυτά περιέχουν οπτικές απεικονίσεις ενός ή περισσότερων συνδεδεμένων συστατικών στοιχείων. Αυτά μπορεί να είναι 2-D ή 3-D, μπορεί να είναι ένα παράθυρο στην οθόνη ή σε ένα πρόγραμμα περιήγησης, ή μπορεί να είναι ένα καθηλωτικό σύστημα εικονικής πραγματικότητας. Τα στοιχεία εμφάνισης ενημερώνουν τις απεικονίσεις δεδομένων με ανταπόκριση σε αλλαγές που συνδέονται με τα συστατικά στοιχεία. 3. Υπολογιστικά στοιχεία: αυτά εκτελούν μεθόδους που ορίζονται από το χρήστη ως απάντηση σε αλλαγές που συνδέονται με τα συστατικά στοιχεία. 4. Στοιχεία DataReference: αυτά είναι μεταβλητά στοιχεία που χρησιμοποιούνται για τη σύνδεση στοιχείων εμφάνισης, με υπολογιστικά στοιχεία, τα οποία συχνά είναι αμετάβλητα. Στο "Χ = 3" ο αριθμός 3 είναι αμετάβλητος και παίζει τον ρόλο Data, ενώ το Χ είναι μεταβλητό (δηλαδή, αυτό μπορεί να αλλάξει σε μια τιμή 34

35 διαφορετική από 3) και παίζει τον ρόλο DataReference. 5. Στοιχεία περιβάλλοντος χρήστη: αυτά είναι παραδοσιακά widgets GUI που συνήθως συνδέονται με στοιχεία δεδομένων ή στοιχεία εμφάνισης, και δεν θα πρέπει να συγχέεται με το θέμα αυτής της στήλης. Υπολογιστικά και εμφάνισης στοιχεία μπορούν να συνδέονται με DataReference (και ως εκ τούτου με την αναφορά δεδομένων) στοιχεία σε άλλα μηχανήματα, μέσω της Java RMI (Remote Μέθοδος Επίκληση) τεχνολογία κατανεμημένων αντικειμένων. Αυτό διευκολύνει την συνεργατική απεικόνιση, στην οποία στοιχεία DataReference σε μια μηχανή συνδέονται με στοιχεία εμφάνισης για τις γεωγραφικά κατανεμημένες μηχανές από πολλαπλούς χρήστες. Το RMI χρησιμοποιείται επίσης για να επιτρέπει στις εφαρμογές να συνδέσουν τις ομάδες των στοιχείων εμφάνισης σε διαφορετικές μηχανές, έτσι ώστε οι αλλαγές σε οποιαδήποτε εμφάνιση να αντικατοπτρίζεται σε όλες. 35

36 Metadata για στοιχεία δεδομένων Τα στοιχεία δεδομένων περιέχουν αριθμητικές τιμές και κείμενο, καθώς και τα metadata. Τα πρωταρχικά metadata είναι ένα σχήμα δεδομένων που ορίζει τα ονόματα για πρωτόγονες αριθμητικές τιμές και το κείμενο στα δεδομένα, ο τρόπος όπου οι τιμές ομαδοποιούνται σε φορείς, και συναρτησιακές εξαρτήσεις μεταξύ των τιμών. Για παράδειγμα, μια δορυφορική εικόνα της Γης μπορεί να περιγραφεί ως μια λειτουργική εξάρτηση της ακτινοβολίας της γραμμή pixel και των συντεταγμένων του στοιχείο, μέσω του σχήματος: ((line, element) -> radiance) Η λειτουργία αυτή προσεγγίζεται από ένα πεπερασμένο δείγμα σε διακριτά εικονοστοιχεία. Τα metadata δειγματοληψίας μιας συνάρτησης μπορεί να είναι ένα κανονικό ή ακανόνιστο σύνολο σε ένα πραγματικό χώρο συντεταγμένων. Η λειτουργία αυτή μπορεί επίσης να περιλαμβάνει metadata που περιγράφουν τις θέσεις της Γης των pixel μέσω αντιστρέψιμο συντεταγμένο μετασχηματισμό: (line, element) <--> (longitude, latitude) Όλες οι πραγματικές τιμές μπορεί να περιλαμβάνουν μονάδες. Για παράδειγμα, οι τιμές γεωγραφικού πλάτους και μήκους μπορούν να έχουν μονάδες μοίρες ή ακτίνια. Τιμές φάσματος λειτουργιών, όπως η ακτινοβολία μπορεί να περιλαμβάνουν metadata που δείχνει τις τιμές που λείπουν (που προκαλείται από υπολογιστικές αποτυχίες), ή metadata που καθορίζουν τις εκτιμήσεις των σφαλμάτων. Η χρονική ακολουθία των εικόνων μπορεί να έχει το σχήμα: (time -> ((line, element) -> radiance)) 36

37 Αυτή η λειτουργία θα καθορίσει κάποια πεπερασμένη δειγματοληψία των τιμών του χρόνου, και μπορεί να καθορίζει τις μονάδες για το χρόνο, όπως δευτερόλεπτα από την 1η Ιανουαρίου Ένα σύνολο των ορίων του χάρτη μπορεί να περιγραφεί με το σχήμα: set(longitude, latitude) Το Visad καθορίζει πολλές διαφορετικές κατηγορίες για τα σύνολα σε πραγματικούς χώρους φορέα, για κανονικές και ακανόνιστες τοπολογίες, για διαφορετικές διαστάσεις χώρου, και για τα σύνολα που περιορίζονται σε sub manifolds με μικρότερη διάσταση από τις περιοχές τους. Για παράδειγμα, ένα σύνολο δειγμάτων χάρτη περιγράμματος βρίσκονται σε μια μονοδιάστατη sub manifold από ένα δισδιάστατο τομέα. Metadata για στοιχεία εμφάνισης Οι απεικονίσεις των στοιχείων δεδομένων που συνδέονται με ένα συστατικό εμφάνισης ορίζεται από ένα σύνολο αντικειμένων ScalarMap που συνδέονται με την εμφάνιση. Αυτά είναι αντιστοιχίσεις από πρωτόγονους πραγματικούς και τύπους κειμένου για τα λεγόμενα DisplayRealTypes. Για παράδειγμα, η απεικόνιση του χρόνου μιας ακολουθίας εικόνων και επικάλυψη συνόρων χάρτη στην Εικόνα 3 προσδιορίζεται από ScalarMaps: time -> Animation latitude -> YAxis longitude -> XAxis radiance -> RGB 37

38 Τα συμβατικά widgets GUI στην εικόνα 3, που επιτρέπουν στο χρήστη να ελέγχει το χρόνο animation και τα RGB χρώματα αναζητούν τον πίνακα για τις τιμές ακτινοβολίας. Κάθε αντικείμενο ScalarMap έχει ένα συσχετισμένο αντικείμενο ελέγχου που παρέχει ένα μέσο για να προσδιορίσει κινούμενα σχέδια, πίνακες χρωμάτων, περιγράμματος, ροής, 3-D σε 2-D προβολής, κ.λπ. Αυτά τα αντικείμενα ελέγχου μπορεί να συνδεθούν με GUI widgets όπως στην εικόνα 3, ή μπορεί να χειραγωγούνται από υπολογισμούς. Κάποια ScalarMaps για ορισμένα DisplayRealTypes (π.χ., XAxis, RGB) επιτρέπουν στις εφαρμογές να ελέγχουν τη γραμμική χαρτογράφηση από πρωτόγονες τιμές πραγματικών δεδομένα σε DisplayRealType τιμές. Εάν οι εφαρμογές δεν διευκρινίζουν αυτό στην χαρτογράφηση, τότε ένα σύστημα AutoScaling αλγορίθμου καθορίζει μια βέλτιστη χαρτογράφηση προεπιλογής για να κρατήσει τις απεικονίσεις δεδομένων ορατές (π.χ., για να εξασφαλίσει ότι οι τιμές γεωγραφικού μήκους και πλάτους αντιστοιχίζονται με τις τιμές XAxis και ΑξοναςΥ που είναι μέσα στην οθόνη). Τα ConstantMaps, τα οποίες δεσμεύονται σε σταθερές τιμές DisplayRealTypes, μπορεί να συνδέονται με στοιχεία εμφάνισης με ακριβώς τον τρόπο που τα ScalarMaps συνδέονται. Αυτά επιτρέπουν στις εφαρμογές να παρακάμψουν τις προεπιλεγμένες τιμές για DisplayRealTypes, για παράδειγμα, για τον έλεγχο θέσεων και τα χρώματα των απεικονίσεων δεδομένων, όταν δεν καθορίζονται από ScalarMaps τυχόν πρωτόγονες τιμές δεδομένων. 38

39 Εικόνα 3 39

40 Ένα απλό 3D-GUI στοιχείο Παρά το γεγονός ότι η γενιά των απεικονίσεων δεδομένων είναι αυτοματοποιημένη με βάση την ανάλυση των δεδομένων και την απεικόνιση των metadata, το σύστημα παρέχει έναν τρόπο για τις εφαρμογές να επαναπροσδιορίσουν αυτήν την ανάλυση και την απεικόνιση γενιάς. Όταν ένα στοιχείο δεδομένων συνδέεται με ένα στοιχείο εμφάνισης, ένα αντικείμενο μίας υποκατηγορίας DataRenderer χρησιμοποιείται για την ανάλυση metadata και δημιουργεί την απεικόνιση. Υπάρχει μια προεπιλεγμένη υποκατηγορία για κάθε υποστηριζόμενο γραφικό API (π.χ., Java3D και Java2D), αλλά οι αιτήσεις έχουν τη δυνατότητα να καθορίζουν και τη χρήση μη-default υποκατηγορίων. Οι προεπιλεγμένες υποκατηγορίες DataRenderer δεν μεταφράζουν τις κινήσεις του χρήστη σε αλλαγές των δεδομένων, επειδή στη γενική περίπτωση των σχημάτων δεδομένων και ScalarMaps εμφανίσεων μπορεί να μην υπάρχει λογικός τρόπος για να ερμηνεύσει τις κινήσεις των χρηστών, όπως οι αλλαγές των δεδομένων. Το σύστημα περιλαμβάνει μια σειρά από μη-default υποκατηγορίες DataRenderer που δεν μεταφράζουν τις κινήσεις του χρήστη σε αλλαγές των δεδομένων. Αυτές πρώτα αναλύουν ένα σχήμα δεδομένων και ένα σύνολο ScalarMaps για να βεβαιωθούν ότι είναι συνεπής με την ερμηνεία των κινήσεων του χρήστη, όπως αλλαγές των δεδομένων, και στη συνέχεια να εφαρμόσει αυτή την ερμηνεία. Για παράδειγμα, ένα στοιχείο δεδομένων με σχήμα: (latitude, longitude, altitude) και ένα στοιχείο εμφάνισης με συνδεδεμένα ScalarMaps: latitude -> YAxis longitude -> XAxis 40

41 altitude -> ZAxis θα δημιουργήσει μια απεικόνιση δεδομένων ως ένα απλό σημείο σε 3-D απεικόνιση χώρου όπου ο χρήστης μπορεί να τροποποιήσει τιμές δεδομένων, σύροντας το σημείο. Μια ανάλυση ενός αντικειμένου της DirectManipulationRendererJ3D τάξης επαληθέυει και υλοποιεί αυτόν τον τρόπο ερμηνείας χειρονομιών. Η εικόνα 4 δείχνει μια απεικόνιση μιας απλής κωνικής επιφάνειας εδάφους σε ένα κουτί 3-D, με δύο μεγάλα κίτρινα σημεία στις αντίθετες γωνίες του κιβωτίου. Τα κίτρινα σημεία είναι απεικονίσεις των δύο εξαρτημάτων δεδομένων 3 φορέα που συνδέεται με το στοιχείο εμφάνισης μέσω αντικείμενα της κλάσης DirectManipulationRendererJ3D, όπως περιγράφεται στην προηγούμενη παράγραφο. Αυτές οι 3 φορείς συνδέονται με το έναυσμα για ένα υπολογιστικό στοιχείο που τροποποιεί τις γραμμικές απεικονίσεις που σχετίζονται με τις ScalarMaps για εμφάνιση χωρικών συντεταγμένων, προκειμένου να κρατήσει τις απεικονίσεις των δύο 3 φορέων στις γωνίες του πλαισίου οθόνης. Αυτό το μικρό δίκτυο δεδομένων, εμφάνισης και υπολογιστικών στοιχείων και DirectManipulationRendererJ3D αντικειμένων ορίζει ένα embeded 3-D στοιχείο GUI για rescaling 3-D χώρο της εμφάνισης. Προσθέτοντας ένα ScalarMap: latitude -> Shape επιτρέπει την εφαρμογή για να καθορίσει αυθαίρετα σχήματα (μέσω του ελέγχου που συνδέεται με την παρούσα ScalarMap) για τις απεικονίσεις των δύο συρτών σημείων, προκειμένου να δημιουργηθούν προσαρμοσμένοι δρομείς κατά τις 3-D γωνίες κουτιού εμφάνισης όπως απεικονίζεται στην εικόνα 5. Σημειώνεται ότι αν και κάποιος πρωτόγονος τύπος δεδομένων, όπως το γεωγραφικό πλάτος, έπρεπε να επιλεγεί για αυτό το ScalarMap, ο έλεγχος ορίζεται με ένα τέτοιο τρόπο που το σχήμα δεν διαφέρει αναλογικά με το γεωγραφικό πλάτος. 41

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 6 ΟΥ ΚΕΦΑΛΑΙΟΥ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ 6.1 Τι ονοµάζουµε πρόγραµµα υπολογιστή; Ένα πρόγραµµα

Διαβάστε περισσότερα

10. Με πόσους και ποιους τρόπους μπορεί να αναπαρασταθεί ένα πρόβλημα; 11. Περιγράψτε τα τρία στάδια αντιμετώπισης ενός προβλήματος.

10. Με πόσους και ποιους τρόπους μπορεί να αναπαρασταθεί ένα πρόβλημα; 11. Περιγράψτε τα τρία στάδια αντιμετώπισης ενός προβλήματος. 1. Δώστε τον ορισμό του προβλήματος. 2. Σι εννοούμε με τον όρο επίλυση ενός προβλήματος; 3. Σο πρόβλημα του 2000. 4. Σι εννοούμε με τον όρο κατανόηση προβλήματος; 5. Σι ονομάζουμε χώρο προβλήματος; 6.

Διαβάστε περισσότερα

Πιο συγκεκριμένα, η χρήση του MATLAB προσφέρει τα ακόλουθα πλεονεκτήματα.

Πιο συγκεκριμένα, η χρήση του MATLAB προσφέρει τα ακόλουθα πλεονεκτήματα. i Π Ρ Ο Λ Ο Γ Ο Σ Το βιβλίο αυτό αποτελεί μια εισαγωγή στα βασικά προβλήματα των αριθμητικών μεθόδων της υπολογιστικής γραμμικής άλγεβρας (computational linear algebra) και της αριθμητικής ανάλυσης (numerical

Διαβάστε περισσότερα

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Εργαστήριο 1 Εισαγωγή στη C Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Διαδικαστικά Ιστοσελίδα μαθήματος: http://eclass.uoa.gr/courses/f30/ Υποχρεωτική παρακολούθηση: Παρασκευή 14:00 16:00 στην

Διαβάστε περισσότερα

ΔΙΔΑΚΤΙΚΗ της ΠΛΗΡΟΦΟΡΙΚΗΣ

ΔΙΔΑΚΤΙΚΗ της ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΔΙΔΑΚΤΙΚΗ της ΠΛΗΡΟΦΟΡΙΚΗΣ Μ. Γρηγοριάδου Ρ. Γόγουλου Ενότητα: Η Διδασκαλία του Προγραμματισμού Περιεχόμενα Παρουσίασης

Διαβάστε περισσότερα

Προγραμματισμός Υπολογιστών

Προγραμματισμός Υπολογιστών Προγραμματισμός Υπολογιστών Βασικές γνώσεις Κ. Βασιλάκης, ΣΤΕΦ, ΤΕΙ Κρήτης Η Πληροφορική και τα εργαλεία της Παροχή έγκαιρης και έγκυρης πληροφόρησης. Καταχώριση στοιχείων Αποθήκευση Επεξεργασία ψηφιακών

Διαβάστε περισσότερα

ΟΜΑΔΑ Ε ΓΕΩΡΓΙΟΥ ΦΩΤΕΙΝΗ ΗΛΙΟΥΔΗ ΑΦΡΟΔΙΤΗ ΜΕΤΑΛΛΙΔΟΥ ΧΡΥΣΗ ΝΙΖΑΜΗΣ ΑΛΕΞΑΝΔΡΟΣ ΤΖΗΚΑΛΑΓΙΑΣ ΑΝΔΡΕΑΣ ΤΡΙΓΚΑΣ ΑΓΓΕΛΟΣ

ΟΜΑΔΑ Ε ΓΕΩΡΓΙΟΥ ΦΩΤΕΙΝΗ ΗΛΙΟΥΔΗ ΑΦΡΟΔΙΤΗ ΜΕΤΑΛΛΙΔΟΥ ΧΡΥΣΗ ΝΙΖΑΜΗΣ ΑΛΕΞΑΝΔΡΟΣ ΤΖΗΚΑΛΑΓΙΑΣ ΑΝΔΡΕΑΣ ΤΡΙΓΚΑΣ ΑΓΓΕΛΟΣ ΟΜΑΔΑ Ε ΓΕΩΡΓΙΟΥ ΦΩΤΕΙΝΗ ΗΛΙΟΥΔΗ ΑΦΡΟΔΙΤΗ ΜΕΤΑΛΛΙΔΟΥ ΧΡΥΣΗ ΝΙΖΑΜΗΣ ΑΛΕΞΑΝΔΡΟΣ ΤΖΗΚΑΛΑΓΙΑΣ ΑΝΔΡΕΑΣ ΤΡΙΓΚΑΣ ΑΓΓΕΛΟΣ Η ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΣΤΟ ΛΥΚΕΙΟ Εισαγωγή Η μεγάλη ανάπτυξη και ο ρόλος που

Διαβάστε περισσότερα

Η προέλευση του Sketchpad 1

Η προέλευση του Sketchpad 1 Η προέλευση του Sketchpad 1 Το The Geometer s Sketchpad αναπτύχθηκε ως μέρος του Προγράμματος Οπτικής Γεωμετρίας, ενός προγράμματος χρηματοδοτούμενου από το Εθνικό Ίδρυμα Ερευνών (ΝSF) υπό τη διεύθυνση

Διαβάστε περισσότερα

POWERPOINT 2003. Είναι το δημοφιλέστερο πρόγραμμα παρουσιάσεων.

POWERPOINT 2003. Είναι το δημοφιλέστερο πρόγραμμα παρουσιάσεων. POWERPOINT 2003 1. Τι είναι το PowerPoint (ppt)? Είναι το δημοφιλέστερο πρόγραμμα παρουσιάσεων. 2. Τι δυνατότητες έχει? Δημιουργία παρουσίασης. Μορφοποίηση παρουσίασης. Δημιουργία γραφικών. Δημιουργία

Διαβάστε περισσότερα

Λογισμικό διδασκαλίας των μαθηματικών της Γ Τάξης Γυμνασίου

Λογισμικό διδασκαλίας των μαθηματικών της Γ Τάξης Γυμνασίου Λογισμικό διδασκαλίας των μαθηματικών της Γ Τάξης Γυμνασίου Δρ. Βασίλειος Σάλτας 1, Αλέξης Ηλιάδης 2, Ιωάννης Μουστακέας 3 1 Διδάκτωρ Διδακτικής Μαθηματικών, Επιστημονικός Συνεργάτης ΑΣΠΑΙΤΕ Σαπών coin_kav@otenet.gr

Διαβάστε περισσότερα

Εκπαιδευτικό Λογισμικό Ανοικτού Κώδικα

Εκπαιδευτικό Λογισμικό Ανοικτού Κώδικα Εκπαιδευτικό Λογισμικό Ανοικτού Κώδικα Οι τίτλοι εκπαιδευτικού λογισμικού ανοικτού κώδικα που περιλαμβάνονται στον παρακάτω πίνακα εξελληνίστηκαν ή/και προσαρμόστηκαν στο ελληνικό εκπαιδευτικό σύστημα

Διαβάστε περισσότερα

Επιµέλεια Θοδωρής Πιερράτος

Επιµέλεια Θοδωρής Πιερράτος Εισαγωγή στον προγραµµατισµό Η έννοια του προγράµµατος Ο προγραµµατισµός ασχολείται µε τη δηµιουργία του προγράµµατος, δηλαδή του συνόλου εντολών που πρέπει να δοθούν στον υπολογιστή ώστε να υλοποιηθεί

Διαβάστε περισσότερα

1 η ΕΝΟΤΗΤΑ ΕΙΣΑΓΩΓΗ (Προγραμματισμός & MATLAB)

1 η ΕΝΟΤΗΤΑ ΕΙΣΑΓΩΓΗ (Προγραμματισμός & MATLAB) ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ΕΠΙΛΥΣΗΣ ΜΕ Η/Υ 1 η ΕΝΟΤΗΤΑ ΕΙΣΑΓΩΓΗ (Προγραμματισμός & MATLAB) Ν.Δ. Λαγαρός Μ. Φραγκιαδάκης Α. Στάμος Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

Διαβάστε περισσότερα

ΕΠΙΣΤΗΜΟΝΙΚΟΙ ΥΠΟΛΟΓΙΣΜΟΙ: Μια ενδιαφέρουσα σταδιοδρομία

ΕΠΙΣΤΗΜΟΝΙΚΟΙ ΥΠΟΛΟΓΙΣΜΟΙ: Μια ενδιαφέρουσα σταδιοδρομία ΕΠΙΣΤΗΜΟΝΙΚΟΙ ΥΠΟΛΟΓΙΣΜΟΙ: Μια ενδιαφέρουσα σταδιοδρομία N. Μισυρλής (e-mail: nmis@di.uoa.gr) Τμήμα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήμιο Αθηνών Parallel Scientific Computing Laboratory (PSCL)

Διαβάστε περισσότερα

6. Εισαγωγή στον προγραµµατισµό

6. Εισαγωγή στον προγραµµατισµό 6. Εισαγωγή στον προγραµµατισµό 6.1 Η έννοια του προγράµµατος. 6.2 Ιστορική αναδροµή. 6.2.1 Γλώσσες µηχανής. ΗΜ04-Θ1Α 1. Ένα πρόγραµµα σε γλώσσα µηχανής είναι µια ακολουθία δυαδικών ψηφίων. 5. Ένα πρόγραµµα

Διαβάστε περισσότερα

Τεχνικές Μείωσης Διαστάσεων. Ειδικά θέματα ψηφιακής επεξεργασίας σήματος και εικόνας Σ. Φωτόπουλος- Α. Μακεδόνας

Τεχνικές Μείωσης Διαστάσεων. Ειδικά θέματα ψηφιακής επεξεργασίας σήματος και εικόνας Σ. Φωτόπουλος- Α. Μακεδόνας Τεχνικές Μείωσης Διαστάσεων Ειδικά θέματα ψηφιακής επεξεργασίας σήματος και εικόνας Σ. Φωτόπουλος- Α. Μακεδόνας 1 Εισαγωγή Το μεγαλύτερο μέρος των δεδομένων που καλούμαστε να επεξεργαστούμε είναι πολυδιάστατα.

Διαβάστε περισσότερα

Γλώσσες Προγραμματισμού Μεταγλωττιστές

Γλώσσες Προγραμματισμού Μεταγλωττιστές Γλώσσες Προγραμματισμού Μεταγλωττιστές Πανεπιστήμιο Μακεδονίας Τμήμα Εφαρμοσμένης Πληροφορικής Ηλίας Σακελλαρίου Δομή Γλώσσες Προγραμματισμού Εισαγωγικά Γλώσσα Μηχανής Γλώσσες υψηλού επιπέδου Μεταγλωττιστές

Διαβάστε περισσότερα

Υλοποίηση ενός προγραμματιστικού κελύφους εργασίας

Υλοποίηση ενός προγραμματιστικού κελύφους εργασίας Τ.Ε.Ι ΗΠΕΙΡΟΥ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ & ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΤΗΛΕΠΛΗΡΟΦΟΡΙΚΗΣ & ΔΙΟΙΚΗΣΗΣ Υλοποίηση ενός προγραμματιστικού κελύφους εργασίας Πτυχιακή εργασία του φοιτητή Γιαννακίδη Αποστόλη Επιβλέπων καθηγητής Τσούλος

Διαβάστε περισσότερα

5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ

5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ 5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ 5.1 Εισαγωγή στους αλγορίθμους 5.1.1 Εισαγωγή και ορισμοί Αλγόριθμος (algorithm) είναι ένα πεπερασμένο σύνολο εντολών οι οποίες εκτελούν κάποιο ιδιαίτερο έργο. Κάθε αλγόριθμος

Διαβάστε περισσότερα

Εργαλεία CASE. Computer Assisted Systems Engineering. Δρ Βαγγελιώ Καβακλή. Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου

Εργαλεία CASE. Computer Assisted Systems Engineering. Δρ Βαγγελιώ Καβακλή. Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Εργαλεία CASE Computer Assisted Systems Engineering Δρ Βαγγελιώ Καβακλή Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου Εαρινό Εξάμηνο 2011-2012 1 Εργαλεία CASE

Διαβάστε περισσότερα

Σενάριο 14: Προγραμματίζοντας ένα Ρομπότ ανιχνευτή

Σενάριο 14: Προγραμματίζοντας ένα Ρομπότ ανιχνευτή Σενάριο 14: Προγραμματίζοντας ένα Ρομπότ ανιχνευτή Ταυτότητα Σεναρίου Τίτλος: Προγραμματίζοντας ένα Ρομπότ ανιχνευτή Γνωστικό Αντικείμενο: Πληροφορική Διδακτική Ενότητα: Ελέγχω-Προγραμματίζω τον Υπολογιστή

Διαβάστε περισσότερα

Αποµακρυσµένη κλήση διαδικασιών

Αποµακρυσµένη κλήση διαδικασιών Αποµακρυσµένηκλήση διαδικασιών Τοπική κλήση διαδικασιών Αποµακρυσµένη κλήση διαδικασιών Μεταβίβαση παραµέτρων Πρωτόκολλα επικοινωνίας Αντιγραφή µηνυµάτων Προδιαγραφές διαδικασιών RPC στο σύστηµα DCE Κατανεµηµένα

Διαβάστε περισσότερα

Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον

Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον Κεφάλαιο 6ο Εισαγωγή στον Προγραµµατισµό Μέρος Πρώτο (6.1, 6.2 και 6.3) Α. Ερωτήσεις Σωστού Λάθους 1. Η γλώσσα µηχανής είναι µία γλώσσα υψηλού επιπέδου.

Διαβάστε περισσότερα

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ και ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ 2.1 Να δοθεί ο ορισμός

Διαβάστε περισσότερα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΣΚΗΣΕΙΣ 6 ΟΥ ΚΕΦΑΛΑΙΟΥ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΕΡΩΤΗΣΕΙΣ ΣΩΣΤΟ ΛΑΘΟΣ Σημειώστε αν είναι σωστή ή

Διαβάστε περισσότερα

Πως θα κατασκευάσω το πρώτο πρόγραμμα;

Πως θα κατασκευάσω το πρώτο πρόγραμμα; Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Να γίνει εξοικείωση το μαθητών με τον ΗΥ και το λειτουργικό σύστημα. - Επίδειξη του My Computer

Διαβάστε περισσότερα

Γρήγορη Εκκίνηση. Όταν ξεκινήσετε το GeoGebra, εμφανίζεται το παρακάτω παράθυρο:

Γρήγορη Εκκίνηση. Όταν ξεκινήσετε το GeoGebra, εμφανίζεται το παρακάτω παράθυρο: Τι είναι το GeoGebra; Γρήγορη Εκκίνηση Λογισμικό Δυναμικών Μαθηματικών σε ένα - απλό στη χρήση - πακέτο Για την εκμάθηση και τη διδασκαλία σε όλα τα επίπεδα της εκπαίδευσης Συνδυάζει διαδραστικά γεωμετρία,

Διαβάστε περισσότερα

Εικόνες και γραφικά. Τεχνολογία Πολυµέσων 05-1

Εικόνες και γραφικά. Τεχνολογία Πολυµέσων 05-1 Εικόνες και γραφικά Περιγραφή στατικών εικόνων Αναπαράσταση γραφικών Υλικό γραφικών Dithering και anti-aliasing Σύνθεση εικόνας Ανάλυση εικόνας Μετάδοση εικόνας Τεχνολογία Πολυµέσων 05-1 Περιγραφή στατικών

Διαβάστε περισσότερα

ΔΙΔΑΣΚΑΛΙΑ ΤΗΣ ΕΝΝΟΙΑΣ ΤΟΥ ΟΡΙΟΥ ΣΥΝΑΡΤΗΣΗΣ

ΔΙΔΑΣΚΑΛΙΑ ΤΗΣ ΕΝΝΟΙΑΣ ΤΟΥ ΟΡΙΟΥ ΣΥΝΑΡΤΗΣΗΣ ΕΠΙΜΟΡΦΩΣΗ ΤΩΝ ΕΚΠΑΙΔΕΥΤΙΚΩΝ ΓΙΑ ΤΗΝ ΑΞΙΟΠΟΙΗΣΗ ΚΑΙ ΕΦΑΡΜΟΓΗ ΤΩΝ ΤΠΕ ΣΤΗ ΔΙΔΑΚΤΙΚΗ ΠΡΑΞΗ ΔΙΔΑΣΚΑΛΙΑ ΤΗΣ ΕΝΝΟΙΑΣ ΤΟΥ ΟΡΙΟΥ ΣΥΝΑΡΤΗΣΗΣ ΟΡΙΟ ΣΥΝΑΡΤΗΣΗΣ ΕΞ ΑΡΙΣΤΕΡΩΝ ΚΑΙ ΕΚ ΔΕΞΙΩΝ ΣΥΓΓΡΑΦΕΑΣ: ΚΟΥΤΙΔΗΣ ΙΩΑΝΝΗΣ

Διαβάστε περισσότερα

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Δρ. Κόννης Γιώργος Πανεπιστήμιο Κύπρου - Τμήμα Πληροφορικής Προγραμματισμός Στόχοι 1 Να περιγράψουμε τις έννοιες του Υπολογιστικού Προβλήματος και του Προγράμματος/Αλγορίθμου

Διαβάστε περισσότερα

ό ή ύ ύ ύ ώ ά ς ύ ς ής ί ώ,... Τοµέας Επιµόρφωσης & Κατάρτισης

ό ή ύ ύ ύ ώ ά ς ύ ς ής ί ώ,... Τοµέας Επιµόρφωσης & Κατάρτισης ό ή ύ ύ ύ ώ ά ς ύ ς ής ί ώ,..... Τοµέας Επιµόρφωσης & Κατάρτισης 1 Το Ε.Α.ΙΤΥ στο πλαίσιο των αρµοδιοτήτων του ως Τεχνικού Συµβούλου της Πράξης «Επιµόρφωση εκπαιδευτικών στη χρήση και αξιοποίηση των ΤΠΕ

Διαβάστε περισσότερα

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Εισαγωγή στην FORTRAN. Δρ. Ιωάννης Λυχναρόπουλος 2014-2015

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Εισαγωγή στην FORTRAN. Δρ. Ιωάννης Λυχναρόπουλος 2014-2015 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στην FORTRAN Δρ. Ιωάννης Λυχναρόπουλος 2014-2015 Fortran FORmula TRANslation: (Μία από τις πρώτες γλώσσες τρίτης γενιάς) Εκδόσεις FORTRAN (1957) FORTRAN II (1958) FORTRAN III

Διαβάστε περισσότερα

ΕΠΙΣΤΗΜΟΝΙΚΟΙ ΥΠΟΛΟΓΙΣΜΟΙ: Μια ενδιαφέρουσα σταδιοδρομία

ΕΠΙΣΤΗΜΟΝΙΚΟΙ ΥΠΟΛΟΓΙΣΜΟΙ: Μια ενδιαφέρουσα σταδιοδρομία ΕΠΙΣΤΗΜΟΝΙΚΟΙ ΥΠΟΛΟΓΙΣΜΟΙ: Μια ενδιαφέρουσα σταδιοδρομία N. Μισυρλής (e-mail: nmis@di.uoa.gr) Τμήμα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήμιο Αθηνών Parallel Scientific Computing Laboratory (PSCL)

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΣΧΟΛΗ ΟΙΚΟΝΟΜΙΑΣ ΔΙΟΙΚΗΣΗΣ και ΠΛΗΡΟΦΟΡΙΚΗΣ. ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ και ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΟΔΗΓΟΣ ΜΕΤΑΒΑΤΙΚΩΝ ΔΙΑΤΑΞΕΩΝ 2014 2015

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΣΧΟΛΗ ΟΙΚΟΝΟΜΙΑΣ ΔΙΟΙΚΗΣΗΣ και ΠΛΗΡΟΦΟΡΙΚΗΣ. ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ και ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΟΔΗΓΟΣ ΜΕΤΑΒΑΤΙΚΩΝ ΔΙΑΤΑΞΕΩΝ 2014 2015 ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΣΧΟΛΗ ΟΙΚΟΝΟΜΙΑΣ ΔΙΟΙΚΗΣΗΣ και ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ και ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΟΔΗΓΟΣ ΜΕΤΑΒΑΤΙΚΩΝ ΔΙΑΤΑΞΕΩΝ 2014 2015 Επιτροπή προπτυχιακών σπουδών: Κ. Βασιλάκης Κ. Γιαννόπουλος

Διαβάστε περισσότερα

Διδακτική της Πληροφορικής ΙΙ

Διδακτική της Πληροφορικής ΙΙ Διδακτική της Πληροφορικής ΙΙ Ομάδα Γ Βότσης Ευστάθιος Γιαζιτσής Παντελής Σπαής Αλέξανδρος Τάτσης Γεώργιος Προβλήματα που αντιμετωπίζουν οι αρχάριοι προγραμματιστές Εισαγωγή Προβλήματα Δυσκολίες Διδακτικό

Διαβάστε περισσότερα

Συμβολική γλώσσα Εκπαιδευτικού Υπολογιστή - Λογισμικό Υπολογιστών

Συμβολική γλώσσα Εκπαιδευτικού Υπολογιστή - Λογισμικό Υπολογιστών Συμβολική γλώσσα Εκπαιδευτικού Υπολογιστή - Λογισμικό Υπολογιστών Πρόγραμμα σε γλώσσα μηχανής του ΕΚΥ Θέση μνήμης Περιεχόμενα μνήμης Εντολή (assembly) 0 0001 000000000011 lda 3 1 0011 000000000100 ada

Διαβάστε περισσότερα

7.5 ΑΡΑΙΕΣ ΜΗΤΡΕΣ 290 7.5.1 Κατασκευή αραιών µητρών... 290 7.5.2 Πράξεις και συναρτήσεις αραιών µητρών... 294 7.5.3 Συναρτήσεις για γραφήµατα...

7.5 ΑΡΑΙΕΣ ΜΗΤΡΕΣ 290 7.5.1 Κατασκευή αραιών µητρών... 290 7.5.2 Πράξεις και συναρτήσεις αραιών µητρών... 294 7.5.3 Συναρτήσεις για γραφήµατα... Κ. Π Α Π Α Ρ Ρ Ι Ζ Ο Σ M A T L A B 6. 5 Π Ε Ρ Ι Ε Χ Ο Μ Ε Ν Α Π Ρ Ο Λ Ο Γ Ο Σ............. v Κ Ε Φ Α Λ Α Ι Ο 1 Β Α Σ Ι Κ Ε Σ Λ Ε Ι Τ Ο Υ Ρ Γ Ι Ε Σ Τ Ο Υ M A T L A B 1 1.1 ΠΡΑΞΕΙΣ ΚΑΙ ΑΡΙΘΜΗΤΙΚΕΣ ΠΑΡΑΣΤΑΣΕΙΣ

Διαβάστε περισσότερα

Εργαλεία ανάπτυξης εφαρμογών internet Ι

Εργαλεία ανάπτυξης εφαρμογών internet Ι IEK ΟΑΕΔ ΚΑΛΑΜΑΤΑΣ ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΟΦΟΡΙΚΗΣ Εργαλεία ανάπτυξης εφαρμογών internet Ι Διδάσκουσα: Κανελλοπούλου Χριστίνα ΠΕ19 Πληροφορικής Εργαλεία και τεχνικές από την πλευρά του πελάτη Java Applet

Διαβάστε περισσότερα

ΤΟΜΟΣ Α : Συμβολικός Προγραμματισμός

ΤΟΜΟΣ Α : Συμβολικός Προγραμματισμός 2 ΤΟΜΟΣ Α : Συμβολικός Προγραμματισμός 3 ΟΔΗΓΟΣ στη ΧΡΗΣΗ του ΥΠΟΛΟΓΙΣΤΗ 4 ΤΟΜΟΣ Α : Συμβολικός Προγραμματισμός 5 ΓΕΩΡΓΙΟΣ ΘΕΟΔΩΡΟΥ Καθηγητής Α.Π.Θ. ΧΡΙΣΤΙΝΑ ΘΕΟΔΩΡΟΥ Μαθηματικός ΟΔΗΓΟΣ στη ΧΡΗΣΗ του ΥΠΟΛΟΓΙΣΤΗ

Διαβάστε περισσότερα

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Τμήμα Πληροφορικής & Επικοινωνιών Τομέας Υπολογιστικών Τεχνικών & Συστημάτων Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Ιωάννης Γεωργουδάκης - Πάρις Μαστοροκώστας Σεπτέμβριος 2011 ΠΕΡΙΕΧΟΜΕΝΑ

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 13: (Μέρος Β ) Λειτουργικό Σύστημα Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 2 ΛΟΓΙΣΜΙΚΟ

ΚΕΦΑΛΑΙΟ 2 ΛΟΓΙΣΜΙΚΟ ΚΕΦΑΛΑΙΟ 2 ΛΟΓΙΣΜΙΚΟ ΤΙ ΕΊΝΑΙ ΛΟΓΙΣΜΙΚΟ Για τη λειτουργία ενός υπολογιστικού συστήματος χρειάζεται εκτός από το υλικό (hardware) και το λογισμικό (software). Σε αυτό περιλαμβάνονται όλα τα Προγράμματα

Διαβάστε περισσότερα

TRAVIS TRAFFIC VIOLATION INFORMATION SYSTEM ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΗΣΗΣ ΠΑΡΑΒΑΣΕΩΝ ΦΩΤΟΕΠΙΣΗΜΑΝΣΗΣ

TRAVIS TRAFFIC VIOLATION INFORMATION SYSTEM ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΗΣΗΣ ΠΑΡΑΒΑΣΕΩΝ ΦΩΤΟΕΠΙΣΗΜΑΝΣΗΣ TRAFFIC VIOLATION INFORMATION SYSTEM ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΗΣΗΣ ΠΑΡΑΒΑΣΕΩΝ ΦΩΤΟΕΠΙΣΗΜΑΝΣΗΣ TRAVIS-V1-2012 TRAVIS Λογισμικό Διαχείρισης Παραβάσεων Φωτοεπισήμανσης Το σύστημα διαχείρισης παραβάσεων φωτοεπισήμανσης

Διαβάστε περισσότερα

Γνωρίστε το χώρο εργασίας του PowerPoint

Γνωρίστε το χώρο εργασίας του PowerPoint Γνωρίστε το χώρο εργασίας του PowerPoint Για να εκκινήσουμε το Office PowerPoint 2007 ακολουθούμε τα εξής βήματα: Έναρξη à Όλα τα προγράμματα PowerPoint 2007. à Microsoft Office à Microsoft Office Όταν

Διαβάστε περισσότερα

Ανάπτυξη Plugins για το AgentSheets

Ανάπτυξη Plugins για το AgentSheets Ανάπτυξη Plugins για το AgentSheets Thought Amplifier AgentSheets Ανάπτυξη Plugins AgentSheets 2.5 Συγγραφείς Τεκµηρίωσης: Alexander Repenning και Ronald Sudomo Εξελληνισµός Τεκµηρίωσης: Λίνος Βίγκλας,

Διαβάστε περισσότερα

ΤΕΛΙΚΕΣ ΔΙΠΛΩΜΑΤΙΚΕΣ ΕΡΓΑΣΙΕΣ (6 Μονάδες ECTS)- Ακαδημαϊκό Έτος 2013 2014

ΤΕΛΙΚΕΣ ΔΙΠΛΩΜΑΤΙΚΕΣ ΕΡΓΑΣΙΕΣ (6 Μονάδες ECTS)- Ακαδημαϊκό Έτος 2013 2014 ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Ηλεκτρολόγων Μηχανικών, Μηχανικών Η/Υ και Πληροφορικής ΤΕΛΙΚΕΣ ΔΙΠΛΩΜΑΤΙΚΕΣ ΕΡΓΑΣΙΕΣ (6 Μονάδες ECTS)- Ακαδημαϊκό Έτος 2013 2014 1. Ερευνητική Περιοχή: Επεξεργασία

Διαβάστε περισσότερα

Τα Διδακτικά Σενάρια και οι Προδιαγραφές τους. του Σταύρου Κοκκαλίδη. Μαθηματικού

Τα Διδακτικά Σενάρια και οι Προδιαγραφές τους. του Σταύρου Κοκκαλίδη. Μαθηματικού Τα Διδακτικά Σενάρια και οι Προδιαγραφές τους του Σταύρου Κοκκαλίδη Μαθηματικού Διευθυντή του Γυμνασίου Αρχαγγέλου Ρόδου-Εκπαιδευτή Στα προγράμματα Β Επιπέδου στις ΤΠΕ Ορισμός της έννοιας του σεναρίου.

Διαβάστε περισσότερα

ΜΑΘΗΜΑ: Εργαλεία Ανάπτυξης εφαρμογών internet.

ΜΑΘΗΜΑ: Εργαλεία Ανάπτυξης εφαρμογών internet. ΜΑΘΗΜΑ: Εργαλεία Ανάπτυξης εφαρμογών internet. ΩΡΕΣ ΔΙΔΑΣΚΑΛΙΑΣ: ΕΙΔΟΣ ΜΑΘΗΜΑΤΟΣ: Μικτό Γενικός σκοπός είναι να αποκτήσει ο καταρτιζόμενος τις αναγκαίες γνώσεις σχετικά με εργαλεία και τις τεχνικές για

Διαβάστε περισσότερα

Αναδρομή. Τι γνωρίζετε για τη δυνατότητα «κλήσης» αλγορίθμων; Τι νόημα έχει;

Αναδρομή. Τι γνωρίζετε για τη δυνατότητα «κλήσης» αλγορίθμων; Τι νόημα έχει; ΜΑΘΗΜΑ 7 Κλήση αλγορίθμου από αλγόριθμο Αναδρομή Σ χ ο λ ι κ ο Β ι β λ ι ο ΥΠΟΚΕΦΑΛΑΙΟ 2.2.7: ΕΝΤΟΛΕΣ ΚΑΙ ΔΟΜΕΣ ΑΛΓΟΡΙΘΜΟΥ ΠΑΡΑΓΡΑΦΟI 2.2.7.5: Κλήση αλγορίθμου από αλγόριθμο 2.2.7.6: Αναδρομή εισαγωγη

Διαβάστε περισσότερα

Σενάριο 15: Ενεργός Μετεωρολογικός Χάρτης

Σενάριο 15: Ενεργός Μετεωρολογικός Χάρτης Σενάριο 15: Ενεργός Μετεωρολογικός Χάρτης Ταυτότητα Σεναρίου Τίτλος : Ενεργός Μετεωρολογικός Χάρτης Γνωστικό Αντικείμενο: Εφαρμογές Πληροφορικής-Υπολογιστών Διδακτική Ενότητα: Διερευνώ - Δημιουργώ Ανακαλύπτω,

Διαβάστε περισσότερα

UTECO ABEE ΒΙΟΜΗΧΑΝΙΚΟΣ & ΝΑΥΤΙΛΙΑΚΟΣ ΑΥΤΟΜΑΤΙΣΜΟΣ

UTECO ABEE ΒΙΟΜΗΧΑΝΙΚΟΣ & ΝΑΥΤΙΛΙΑΚΟΣ ΑΥΤΟΜΑΤΙΣΜΟΣ IMAGO F3000 Συνοπτική περιγραφή Αυτοί οι ελεγκτές διαδικασίας χτίζονται σε ένα σχεδιασμό επεκτάσιμης μονάδας, και είναι κατάλληλοι για τον έλεγχο ρύθμιση λειτουργίας, ψησίματος, καπνίσματος και ελέγχου

Διαβάστε περισσότερα

Σενάριο 13. Προγραμματίζοντας ένα Ρομπότ

Σενάριο 13. Προγραμματίζοντας ένα Ρομπότ Σενάριο 13. Προγραμματίζοντας ένα Ρομπότ Ταυτότητα Σεναρίου Τίτλος: Προγραμματίζοντας ένα Ρομπότ Γνωστικό Αντικείμενο: Πληροφορική Διδακτική Ενότητα: Ελέγχω-Προγραμματίζω τον Υπολογιστή Τάξη: Γ Γυμνασίου

Διαβάστε περισσότερα

Σκοπός του μαθήματος

Σκοπός του μαθήματος ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Εισαγωγή Βασικές Έννοιες Βαγγελιώ Καβακλή Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου Εαρινό Εξάμηνο 2012-2013 1 Σκοπός του μαθήματος Η απόκτηση των γνώσεων

Διαβάστε περισσότερα

Ενότητα 12 (κεφάλαιο 28) Αρχιτεκτονικές Εφαρμογών

Ενότητα 12 (κεφάλαιο 28) Αρχιτεκτονικές Εφαρμογών ΕΠΛ362: Τεχνολογία Λογισμικού ΙΙ (μετάφραση στα ελληνικά των διαφανειών του βιβλίου Software Engineering, 9/E, Ian Sommerville, 2011) Ενότητα 12 (κεφάλαιο 28) Αρχιτεκτονικές Εφαρμογών Οι διαφάνειες αυτές

Διαβάστε περισσότερα

6 Εισαγωγή στο Wordpress 3.x

6 Εισαγωγή στο Wordpress 3.x Περιεχόμενα 1 Εγκατάσταση του WordPress... 11 Ελάχιστες απαιτήσεις... 11 Easy PHP... 12 Εγκατάσταση Easy PHP... 12 Βήματα εγκατάστασης EasyPHP με εικόνες... 13 Το EasyPHP στα Ελληνικά... 17 Κατέβασμα και

Διαβάστε περισσότερα

hel-col@otenet.gr Κωνσταντίνος Παρασκευόπουλος Καθηγητής Πληροφορικής (ΠΕ19 MSc) Ελληνικό Κολλέγιο Θεσσαλονίκης kparask@hellenic-college.

hel-col@otenet.gr Κωνσταντίνος Παρασκευόπουλος Καθηγητής Πληροφορικής (ΠΕ19 MSc) Ελληνικό Κολλέγιο Θεσσαλονίκης kparask@hellenic-college. Χρήση της Διεπαφής Προγραμματισμού Εφαρμογής Google Maps για τη δημιουργία διαδραστικού χάρτη με τα Μνημεία Παγκόσμιας Πολιτιστικής Κληρονομιάς της ΟΥΝΕΣΚΟ στη Θεσσαλονίκη Εμμανουήλ Τσάμης 1, Κωνσταντίνος

Διαβάστε περισσότερα

Using Custom Python Expression Functions

Using Custom Python Expression Functions Using Custom Python Expression Functions QGIS Tutorials and Tips Author Ujaval Gandhi http://google.com/+ujavalgandhi Translations by Christina Dimitriadou Paliogiannis Konstantinos Tom Karagkounis Despoina

Διαβάστε περισσότερα

Περιεχόμενα. Περιεχόμενα

Περιεχόμενα. Περιεχόμενα Περιεχόμενα xv Περιεχόμενα 1 Αρχές της Java... 1 1.1 Προκαταρκτικά: Κλάσεις, Τύποι και Αντικείμενα... 2 1.1.1 Βασικοί Τύποι... 5 1.1.2 Αντικείμενα... 7 1.1.3 Τύποι Enum... 14 1.2 Μέθοδοι... 15 1.3 Εκφράσεις...

Διαβάστε περισσότερα

ΚΑΤΑΓΡΑΦΗ ΓΝΩΣΕΩΝ & ΕΝΔΙΑΦΕΡΟΝΤΩΝ

ΚΑΤΑΓΡΑΦΗ ΓΝΩΣΕΩΝ & ΕΝΔΙΑΦΕΡΟΝΤΩΝ ΚΑΤΑΓΡΑΦΗ ΓΝΩΣΕΩΝ & ΕΝΔΙΑΦΕΡΟΝΤΩΝ Αυτό το ερωτηματολόγιο αποσκοπεί στη συγκέντρωση στοιχείων που αφορούν τόσο τις γνώσεις όσο και τα ενδιαφέροντά σας. Χωρίζεται σε τρία μέρη: το πρώτο έχει ερωτήσεις για

Διαβάστε περισσότερα

Εικόνα. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 05-1

Εικόνα. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 05-1 Εικόνα Εισαγωγή Ψηφιακή αναπαράσταση Κωδικοποίηση των χρωμάτων Συσκευές εισόδου και εξόδου Βάθος χρώματος και ανάλυση Συμβολική αναπαράσταση Μετάδοση εικόνας Σύνθεση εικόνας Ανάλυση εικόνας Τεχνολογία

Διαβάστε περισσότερα

ΤΕΙ ΚΑΒΑΛΑΣ. Πτυχιακή εργασία ΕΙΣΑΓΩΓΗ. Μιλτιάδης Κακλαμάνης

ΤΕΙ ΚΑΒΑΛΑΣ. Πτυχιακή εργασία ΕΙΣΑΓΩΓΗ. Μιλτιάδης Κακλαμάνης Σελίδα 1από ΤΕΙ ΚΑΒΑΛΑΣ Πτυχιακή εργασία Δικτυακή Εφαρμογή διαχείρισης ηλεκτρονικών εγγράφων υπηρεσίας. ΕΙΣΑΓΩΓΗ Μιλτιάδης Κακλαμάνης Σελίδα 2από Κατάλογος περιεχομένων ΕΙΣΑΓΩΓΗ...1 Σχετιζόμενα πρόσωπα...3

Διαβάστε περισσότερα

iii ΠΕΡΙΕΧΟΜΕΝΑ Πρόλογος

iii ΠΕΡΙΕΧΟΜΕΝΑ Πρόλογος iii ΠΕΡΙΕΧΟΜΕΝΑ Πρόλογος xi 1 Αντικείμενα των Πιθανοτήτων και της Στατιστικής 1 1.1 Πιθανοτικά Πρότυπα και Αντικείμενο των Πιθανοτήτων, 1 1.2 Αντικείμενο της Στατιστικής, 3 1.3 Ο Ρόλος των Πιθανοτήτων

Διαβάστε περισσότερα

Διδάσκων:Μ.Χατζόπουλος, Παραδόσεις:Τρίτη 4-6, Τετάρτη 1-3; (Αμφιθέατρο Α15) Πληροφορίες στην ιστοσελίδα του μαθήματος http://www.di.uoa.

Διδάσκων:Μ.Χατζόπουλος, Παραδόσεις:Τρίτη 4-6, Τετάρτη 1-3; (Αμφιθέατρο Α15) Πληροφορίες στην ιστοσελίδα του μαθήματος http://www.di.uoa. Πληροφορική 1 Διδάσκων:Μ.Χατζόπουλος, Παραδόσεις:Τρίτη 4-6, Τετάρτη 1-3; (Αμφιθέατρο Α15) Πληροφορίες στην ιστοσελίδα του μαθήματος http://www.di.uoa.gr/~organosi/ 2 Η δομή του μαθήματος Εισαγωγή στην

Διαβάστε περισσότερα

Δυναμική Ηλεκτρικών Μηχανών

Δυναμική Ηλεκτρικών Μηχανών Δυναμική Ηλεκτρικών Μηχανών Ενότητα 1: Εισαγωγή Βασικές Αρχές Επ. Καθηγήτρια Τζόγια Χ. Καππάτου Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Τεχνική υποστήριξη λογισμικού HP

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

Διαβάστε περισσότερα

Υπολογιστική Νέφους Cloud computing

Υπολογιστική Νέφους Cloud computing Υπολογιστική Νέφους Cloud computing Χρ. Ηλιούδης Clouds Cloud computing??? Διείσδυση του Cloud Ορισμός - χαρακτηριστικά Ο όρος cloud έχει τις ρίζες στου στην αρχή του internet όπου συνήθιζαν να το αναπαριστούν

Διαβάστε περισσότερα

Κεφάλαιο 6: Ζωγραφική

Κεφάλαιο 6: Ζωγραφική Κεφάλαιο 6: Ζωγραφική... Σε αυτό το κεφάλαιο: 6.1 Ζωγραφική 6.2 Απλά ζωγράφισε 6.3 Χρώμα, σκιά και μέγεθος 6.4 Παράδειγμα... «Ζωγραφίζω πράγματα που σκέφτομαι, όχι πράγματα που βλέπω!» (Πικάσο) 6.1 Ζωγραφική

Διαβάστε περισσότερα

Εισαγωγή στην επανάληψη

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

Διαβάστε περισσότερα

ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΘΕΜΑ 1 (Α) Σημειώστε δίπλα σε κάθε πρόταση «Σ» ή «Λ» εφόσον είναι σωστή ή λανθασμένη αντίστοιχα. 1. Τα συντακτικά λάθη ενός προγράμματος

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C Στο εργαστήριο αυτό, θα ασχοληθούμε με δύο προγραμματιστικά περιβάλλοντα για τη γλώσσα C: τον gcc μεταγλωττιστή της C σε περιβάλλον

Διαβάστε περισσότερα

Πληρουορική Γ Γσμμασίοσ

Πληρουορική Γ Γσμμασίοσ Πληρουορική Γ Γσμμασίοσ Προγραμματισμός και Αλγόριθμοι Από το και τημ Χελώμα στημ Ευριπίδης Βραχνός http://evripides.mysch.gr/ 2014 2015 1 Προγραμματισμός Ζάννειο Πρότυπο Πειραματικό Γυμνάσιο Πειραιά Ενότητα:

Διαβάστε περισσότερα

«Εισαγωγή στον Τριγωνομετρικό Κύκλο» Διδάσκοντας Μαθηματικά με Τ.Π.Ε.

«Εισαγωγή στον Τριγωνομετρικό Κύκλο» Διδάσκοντας Μαθηματικά με Τ.Π.Ε. «Εισαγωγή στον Τριγωνομετρικό Κύκλο» Διδάσκοντας Μαθηματικά με Τ.Π.Ε. Μπολοτάκης Γιώργος Μαθηματικός, Επιμορφωτής Β επιπέδου, Διευθυντής Γυμνασίου Αγ. Αθανασίου Δράμας, Τραπεζούντος 7, Άγιος Αθανάσιος,

Διαβάστε περισσότερα

ΔΙΕΡΕΥΝΗΣΗ ΤΩΝ ΕΝΝΟΙΩΝ ΕΝΤΑΣΗ ΚΑΙ ΔΥΝΑΜΙΚΟ ΣΕ ΗΛΕΚΤΡΙΚΟ ΠΕΔΙΟ ΠΟΥ ΔΗΜΙΟΥΡΓΕΙΤΑΙ ΑΠΟ ΔΥΟ ΣΗΜΕΙΑΚΑ ΦΟΡΤΙΑ

ΔΙΕΡΕΥΝΗΣΗ ΤΩΝ ΕΝΝΟΙΩΝ ΕΝΤΑΣΗ ΚΑΙ ΔΥΝΑΜΙΚΟ ΣΕ ΗΛΕΚΤΡΙΚΟ ΠΕΔΙΟ ΠΟΥ ΔΗΜΙΟΥΡΓΕΙΤΑΙ ΑΠΟ ΔΥΟ ΣΗΜΕΙΑΚΑ ΦΟΡΤΙΑ 2 Ο ΣΥΝΕΔΡΙΟ ΣΤΗ ΣΥΡΟ ΤΠΕ ΣΤΗΝ ΕΚΠΑΙΔΕΥΣΗ 475 ΔΙΕΡΕΥΝΗΣΗ ΤΩΝ ΕΝΝΟΙΩΝ ΕΝΤΑΣΗ ΚΑΙ ΔΥΝΑΜΙΚΟ ΣΕ ΗΛΕΚΤΡΙΚΟ ΠΕΔΙΟ ΠΟΥ ΔΗΜΙΟΥΡΓΕΙΤΑΙ ΑΠΟ ΔΥΟ ΣΗΜΕΙΑΚΑ ΦΟΡΤΙΑ Μαστρογιάννης Αθανάσιος Εκπαιδευτικός Δευτεροβάθμιας

Διαβάστε περισσότερα

IR-100 Προγραμματιζόμενο Τηλεχειριστήριο Οδηγίες Χρήσης

IR-100 Προγραμματιζόμενο Τηλεχειριστήριο Οδηγίες Χρήσης IR-100 Προγραμματιζόμενο Τηλεχειριστήριο Οδηγίες Χρήσης 1. Περιεχόμενα 1.Περιεχόμενα 2.Δομή των οδηγιών χρήσης 3.Αρχική εγκατάσταση του προϊόντος 3.1.Περιγραφή του συστήματος 3.2.Εγκατάσταση της συσκευής

Διαβάστε περισσότερα

Περιεχόμενα ΜΕΡΟΣ ΠΡΩΤΟ. Πρόλογος... 13

Περιεχόμενα ΜΕΡΟΣ ΠΡΩΤΟ. Πρόλογος... 13 Περιεχόμενα Πρόλογος... 13 ΜΕΡΟΣ ΠΡΩΤΟ Κεφ. 1 Περί προγραμματισμού και γλωσσών προγραμματισμού Προγράμματα και Λειτουργικά Συστήματα... 17 Γλώσσες προγραμματισμού και εργαλεία ανάπτυξης προγραμμάτων...

Διαβάστε περισσότερα

ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ. της Πλατφόρμας Τηλεκατάρτισης

ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ. της Πλατφόρμας Τηλεκατάρτισης ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ της Πλατφόρμας Τηλεκατάρτισης ΠΕΡΙΕΧΟΜΕΝΑ 1. Εισαγωγή...2 2. Αρχική σελίδα, Εισαγωγή & Περιβάλλον Συστήματος...3 2.1. Αρχική σελίδα εισαγωγής...3 2.2. Εισαγωγή στην Πλατφόρμα Τηλε-κατάρτισης...4

Διαβάστε περισσότερα

Λειτουργικά. Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Σιώζιος Κων/νος - Πληροφορική Ι

Λειτουργικά. Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Σιώζιος Κων/νος - Πληροφορική Ι Λειτουργικά Συστήματα 1 Λογισμικό του Υπολογιστή Για να λειτουργήσει ένας Η/Υ εκτός από το υλικό του, είναι απαραίτητο και το λογισμικό Το σύνολο των προγραμμάτων που συντονίζουν τις λειτουργίες του υλικού

Διαβάστε περισσότερα

Πώς μπορούμε να δημιουργούμε γεωμετρικά σχέδια με τη Logo;

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

Διαβάστε περισσότερα

ΛΟΓΙΣΜΙΚΟ ΜΕΛΕΤΩΝ ΗΛΕΚΤΡΙΚΩΝ ΕΓΚΑΤΑΣΤΑΣΕΩΝ ΚΑΙ ΥΠΟΣΤΑΘΜΩΝ ΜΕΣΗΣ ΤΑΣΗΣ

ΛΟΓΙΣΜΙΚΟ ΜΕΛΕΤΩΝ ΗΛΕΚΤΡΙΚΩΝ ΕΓΚΑΤΑΣΤΑΣΕΩΝ ΚΑΙ ΥΠΟΣΤΑΘΜΩΝ ΜΕΣΗΣ ΤΑΣΗΣ ΛΟΓΙΣΜΙΚΟ ΜΕΛΕΤΩΝ ΗΛΕΚΤΡΙΚΩΝ ΕΓΚΑΤΑΣΤΑΣΕΩΝ ΚΑΙ ΥΠΟΣΤΑΘΜΩΝ ΜΕΣΗΣ ΤΑΣΗΣ Βασίλης Τσέτογλου, Ηλεκτρολόγος Μηχ/κός ΑΠΘ (Φρυγίας 30 Καβάλα, τηλ. 2510-241735, e-mail:vatset@panafonet.gr) ΠΕΡΙΛΗΨΗ Η συνεχής και

Διαβάστε περισσότερα

Σενάριο 18: Ραβδογράμματα Πληθυσμού

Σενάριο 18: Ραβδογράμματα Πληθυσμού Σενάριο 18: Ραβδογράμματα Πληθυσμού Φύλλο Εργασίας Τίτλος: Ραβδογράμματα Πληθυσμού Γνωστικό Αντικείμενο: Εφαρμογές Πληροφορικής-Υπολογιστών Διδακτική Ενότητα: Διερευνώ - Δημιουργώ Ανακαλύπτω, Συνθετικές

Διαβάστε περισσότερα

J-GANNO. Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β, Φεβ.1998) Χάρης Γεωργίου

J-GANNO. Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β, Φεβ.1998) Χάρης Γεωργίου J-GANNO ΓΕΝΙΚΕΥΜΕΝΟ ΠΑΚΕΤΟ ΥΛΟΠΟΙΗΣΗΣ ΤΕΧΝΗΤΩΝ ΝΕΥΡΩΝΙΚΩΝ ΙΚΤΥΩΝ ΣΤΗ ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ JAVA Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β,

Διαβάστε περισσότερα

Τυπικές χρήσεις της Matlab

Τυπικές χρήσεις της Matlab Matlab Μάθημα 1 Τι είναι η Matlab Ολοκληρωμένο Περιβάλλον Περιβάλλον ανάπτυξης Διερμηνευμένη γλώσσα Υψηλή επίδοση Ευρύτητα εφαρμογών Ευκολία διατύπωσης Cross platform (Wintel, Unix, Mac) Τυπικές χρήσεις

Διαβάστε περισσότερα

Σχεδιασµός βασισµένος σε συνιστώσες

Σχεδιασµός βασισµένος σε συνιστώσες Σχεδιασµός βασισµένος σε συνιστώσες 1 Ενδεικτικά περιεχόµενα του κεφαλαίου Ποια είναι τα "άτοµα", από τα οποία κατασκευάζονται οι υπηρεσίες; Πώς οργανώνουµε τις συνιστώσες σε ένα αρµονικό σύνολο; Τι είναι

Διαβάστε περισσότερα

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL)

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) Pascal- Εισαγωγή Η έννοια του προγράμματος Η επίλυση ενός προβλήματος με τον υπολογιστή περιλαμβάνει, όπως έχει ήδη αναφερθεί, τρία εξίσου

Διαβάστε περισσότερα

ΔΙΔΑΣΚΑΛΙΑ ΓΝΩΣΤΙΚΗΣ ΣΤΡΑΤΗΓΙΚΗΣ ΓΙΑ ΤΗΝ ΚΑΤΑΝΟΗΣΗ Δρ. Ζαφειριάδης Κυριάκος Οι ικανοί αναγνώστες χρησιμοποιούν πολλές στρατηγικές (συνδυάζουν την

ΔΙΔΑΣΚΑΛΙΑ ΓΝΩΣΤΙΚΗΣ ΣΤΡΑΤΗΓΙΚΗΣ ΓΙΑ ΤΗΝ ΚΑΤΑΝΟΗΣΗ Δρ. Ζαφειριάδης Κυριάκος Οι ικανοί αναγνώστες χρησιμοποιούν πολλές στρατηγικές (συνδυάζουν την 1 ΔΙΔΑΣΚΑΛΙΑ ΓΝΩΣΤΙΚΗΣ ΣΤΡΑΤΗΓΙΚΗΣ ΓΙΑ ΤΗΝ ΚΑΤΑΝΟΗΣΗ Δρ. Ζαφειριάδης Κυριάκος Οι ικανοί αναγνώστες χρησιμοποιούν πολλές στρατηγικές (συνδυάζουν την παλαιότερη γνώση τους, σημειώνουν λεπτομέρειες, παρακολουθούν

Διαβάστε περισσότερα

Η ΑΞΙΟΠΟΙΗΣΗ ΤΟΥ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΛΟΓΙΣΜΙΚΟΥ COACH 5 ΣΤΗΝ ΔΙΔΑΣΚΑΛΙΑ ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΤΟΥ ΗΛΕΚΤΡΟΝΙΚΟΥ ΤΟΜΕΑ ΤΩΝ Τ.Ε.Ε.

Η ΑΞΙΟΠΟΙΗΣΗ ΤΟΥ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΛΟΓΙΣΜΙΚΟΥ COACH 5 ΣΤΗΝ ΔΙΔΑΣΚΑΛΙΑ ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΤΟΥ ΗΛΕΚΤΡΟΝΙΚΟΥ ΤΟΜΕΑ ΤΩΝ Τ.Ε.Ε. 2 Ο ΣΥΝΕΔΡΙΟ ΣΤΗ ΣΥΡΟ ΤΠΕ ΣΤΗΝ ΕΚΠΑΙΔΕΥΣΗ 485 Η ΑΞΙΟΠΟΙΗΣΗ ΤΟΥ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΛΟΓΙΣΜΙΚΟΥ COACH 5 ΣΤΗΝ ΔΙΔΑΣΚΑΛΙΑ ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΤΟΥ ΗΛΕΚΤΡΟΝΙΚΟΥ ΤΟΜΕΑ ΤΩΝ Τ.Ε.Ε. Μπουλταδάκης Στέλιος Εκπαιδευτικός

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ Διδάσκουσα Δρ Β Καβακλή Χειμερινό Εξάμηνο 2001 Στόχοι του Μαθήματος! Ανάπτυξη αναλυτικής

Διαβάστε περισσότερα

Υπολογιστικά Συστήματα

Υπολογιστικά Συστήματα Υπολογιστικά Συστήματα Ενότητα 3: Βασικά στοιχεία της γλώσσας προγραμματισμού Visual Basic for Applications (VBA) Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Γραφικά Υπολογιστών: Μέθοδοι Ανίχνευσης Επιφανειών (Surface Detection Methods)

Γραφικά Υπολογιστών: Μέθοδοι Ανίχνευσης Επιφανειών (Surface Detection Methods) 1 ΤΕΙ Θεσσαλονίκης Τμήμα Πληροφορικής Γραφικά Υπολογιστών: Μέθοδοι Ανίχνευσης Επιφανειών (Surface Detection Methods) Πασχάλης Ράπτης http://aetos.it.teithe.gr/~praptis praptis@it.teithe.gr 2 Περιεχόμενα

Διαβάστε περισσότερα

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12 Αρχιτεκτονικές κατανεμημένων συστημάτων Στόχοι Εξήγηση των πλεονεκτημάτων και των μειονεκτημάτων των αρχιτεκτονικών κατανεμημένων συστημάτων Εξέταση των αρχιτεκτονικών συστημάτων πελάτηδιακομιστή και των

Διαβάστε περισσότερα

Μ Ε Ρ Ο Σ Γ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ

Μ Ε Ρ Ο Σ Γ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ Μ Ε Ρ Ο Σ Γ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ 6 ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ 6.1 Γλώσσες Προγραμματισμού 6.1.1 Γλώσσες μηχανής (1 η γενιά) Η γλώσσα στην οποία ένας ηλεκτρονικός υπολογιστής καταλαβαίνει

Διαβάστε περισσότερα

Διάλεξη 2η: Αλγόριθμοι και Προγράμματα

Διάλεξη 2η: Αλγόριθμοι και Προγράμματα Διάλεξη 2η: Αλγόριθμοι και Προγράμματα Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) Αλγόριθμοι και Προγράμματα

Διαβάστε περισσότερα

Τo πρόγραμμα «Διάγραμμα Ροής» και η διδακτική του αξιοποίηση στην Διδασκαλία του προγραμματισμού

Τo πρόγραμμα «Διάγραμμα Ροής» και η διδακτική του αξιοποίηση στην Διδασκαλία του προγραμματισμού Τo πρόγραμμα «Διάγραμμα Ροής» και η διδακτική του αξιοποίηση στην Διδασκαλία του προγραμματισμού Α. Βρακόπουλος 1, Θ.Καρτσιώτης 2 1 Καθηγητής Πληροφορικής Δευτεροβάθμιας Εκπαίδευσης Vraa8@sch.gr 2 Σχολικός

Διαβάστε περισσότερα

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

Περιεχόμενο του μαθήματος ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Η Αντικειμενοστρεφής Τεχνολογία Δρ Βαγγελιώ Καβακλή Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου Εαρινό Εξάμηνο 202-203 Περιεχόμενο του μαθήματος Η έννοια

Διαβάστε περισσότερα

5ο Συνέδριο ΕΛΛΑΚ Εργαστήριο Octave

5ο Συνέδριο ΕΛΛΑΚ Εργαστήριο Octave 5ο Συνέδριο ΕΛΛΑΚ Εργαστήριο Octave ΕΜΠ, 15 Μαΐου 2010 Α. Λερός 1 & Α. Ανδρεάτος 2 1Τμήμα Αυτοματισμού, ΤΕΙ Χαλκίδας και Τομέας Πληροφορικής και Υπολογιστών, Σχολή Ικάρων lerosapostolos@gmail.com 2 Τομέας

Διαβάστε περισσότερα

ΕΣΔ 200: ΔΗΜΙΟΥΡΓΙΑ ΠΕΡΙΕΧΟΜΕΝΟΥ ΙΙ. Ακαδημαϊκό Έτος 2011 2012, Χειμερινό Εξάμηνο Διδάσκων Καθ.: Νίκος Τσαπατσούλης

ΕΣΔ 200: ΔΗΜΙΟΥΡΓΙΑ ΠΕΡΙΕΧΟΜΕΝΟΥ ΙΙ. Ακαδημαϊκό Έτος 2011 2012, Χειμερινό Εξάμηνο Διδάσκων Καθ.: Νίκος Τσαπατσούλης ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΕΠΙΚΟΙΝΩΝΙΑΣ & ΣΠΟΥΔΩΝ ΔΙΑΔΙΚΤΥΟΥ ΕΣΔ 200: ΔΗΜΙΟΥΡΓΙΑ ΠΕΡΙΕΧΟΜΕΝΟΥ ΙΙ Ακαδημαϊκό Έτος 2011 2012, Χειμερινό Εξάμηνο Διδάσκων Καθ.: Νίκος Τσαπατσούλης ΕΡΩΤΗΣΕΙΣ ΕΠΑΝΑΛΗΨΗΣ

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ 6: Συναρτήσεις και Αναδρομή

ΕΡΓΑΣΤΗΡΙΟ 6: Συναρτήσεις και Αναδρομή ΕΡΓΑΣΤΗΡΙΟ 6: Συναρτήσεις και Αναδρομή Στο εργαστήριο αυτό θα μάθουμε για τη χρήση συναρτήσεων με σκοπό την κατασκευή αυτόνομων τμημάτων προγραμμάτων που υλοποιούν μία συγκεκριμένη διαδικασία, τα οποία

Διαβάστε περισσότερα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝΩ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Γ ΛΥΚΕΙΟΥ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝΩ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Γ ΛΥΚΕΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝΩ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Γ ΛΥΚΕΙΟΥ ΘΕΜΑ 1 ο : Α. Να αναφέρετε ονομαστικά τις βασικές λειτουργίες (πράξεις) επί των δομών δεδομένων. Μονάδες 8 Β. Στον

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΜΑΘΗΜΑ: ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ ΔΙΑΔΙΚΑΣΙΕΣ ΠΑΡΑΓΩΓΗΣ ΛΟΓΙΣΜΙΚΟΥ Διδάσκων: Γ. Χαραλαμπίδης,

Διαβάστε περισσότερα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 6 ο

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 6 ο Με τι ασχολείται ο προγραμματισμός; Ο προγραμματισμός ασχολείται με την διατύπωση του αλγορίθμου σε κατανοητή μορφή από τον Η/Υ, δηλ. τη δημιουργία του προγράμματος, του συνόλου των εντολών που πρέπει

Διαβάστε περισσότερα