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

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

Download "ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΠΜΣ ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ & ΥΠΗΡΕΣΙΕΣ ΚΑΤΕΥΘΥΝΣΗ ΨΗΦΙΑΚΕΣ ΕΠΙΚΟΙΝΩΝΙΕΣ ΚΑΙ ΔΙΚΤΥΑ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ"

Transcript

1 ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΠΜΣ ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ & ΥΠΗΡΕΣΙΕΣ ΚΑΤΕΥΘΥΝΣΗ ΨΗΦΙΑΚΕΣ ΕΠΙΚΟΙΝΩΝΙΕΣ ΚΑΙ ΔΙΚΤΥΑ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ «ΑΝΑΠΤΥΞΗ ΚΑΤΑΛΛΗΛΟΥ ΜΑΘΗΜΑΤΙΚΟΥ ΕΡΓΑΛΕΙΟΥ ΣΤΗΝ ΠΛΑΤΦΟΡΜΑ ANDROID» ΖΩΤΟΣ ΠΑΝΑΓΙΏΤΗΣ ΜΕ ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ: ΓΕΩΡΓΙΟΣ ΕΥΘΥΜΟΓΛΟΥ, ΑΝΑΠΛΗΡΩΤΗΣ ΚΑΘΗΓΗΤΗΣ ΤΜΗΜΑΤΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΠΕΙΡΑΙΑΣ ΔΕΚΕΜΒΡΙΟΣ

2 Περιεχόμενα Περιεχόμενα... 2 Πίνακας Εικόνων... 4 Περίληψη... 5 Εισαγωγή... 6 Περιγραφή του Λειτουργικού Συστήματος Android Γενικά Αρχιτεκτονική Πυρήνας Linux (Linux Kernel) Βιβλιοθήκες (Libraries) Εγγενείς Βιβλιοθήκες (Internal) Βιβλιοθήκες Χρόνου Εκτέλεσης (Runtime) Πλαίσιο Υποστήριξης Εφαρμογών (Application Framework) Επίπεδο Εφαρμογών (Application) Άλλα Λειτουργικά Συστήματα BlackBerry ios Windows Phone Σχεδίαση της εφαρμογής Απαιτήσεις Λειτουργίες Συνολική Λειτουργία της Εφαρμογής Λειτουργία Εκτέλεσης Αριθμητικών Πράξεων Λειτουργία Ανάπτυξης Γραφικής Παράστασης Συνάρτησης Σχεδίαση διεπαφών Ανάπτυξη με Eclipse Εγκατάσταση του Eclipse ADT Εγκατάσταση Android Developer Tools Εγκατάσταση Android SDK και πακέτα εκδόσεων του Android Δημιουργία του προσομοιωτή (emulator) Εγκατάσταση Απαραίτητων Βιβλιοθηκών Βιβλιοθήκη MathEval Βιβλιοθήκη GraphView Λειτουργία Υπολογισμού Αριθμητικών Παραστάσεων Λειτουργία Εμφάνισης Παράστασης μίας μεταβλητής Κώδικας της εφαρμογής Χρήση της Εφαρμογής Λειτουργία Υπολογισμού Αριθμητικών Παραστάσεων Λειτουργία Απεικόνισης Γραφικών Παραστάσεων Συναρτήσεων μίας Μεταβλητής Παράρτημα Α: Κώδικας της Εφαρμογής AndroidManifest.xml activity_main.xml

3 activity_graph.xml MainActivity.java GraphActivity.java Αναφορές

4 Πίνακας Εικόνων Εικόνα 1: Η εξέλιξη των κινητών τηλεφώνων... 8 Εικόνα 2: Το λογότυπο του android Εικόνα 3: Αρχιτεκτονική Android Εικόνα 4: Χαρακτηριστική Blackberry συσκευή Εικόνα 5: Αρχιτεκτονική ios Εικόνα 6: Διάγραμμα Περιπτώσεων Χρήσης Εικόνα 7: Διάγραμμα Καταστάσεων Εφαρμογής Εικόνα 8: Διάγραμμα Ροής για τον υπολογισμό αριθμητικών παραστάσεων31 Εικόνα 9: Διάγραμμα Ροής για την λειτουργία της δημιουργίας γραφικής παράστασης Εικόνα 10: Σχέδιο διεπαφής 1β Εικόνα 11: Σχέδιο διεπαφής Εικόνα 12: Σχέδιο διεπαφής Εικόνα 13: Εγκατάσταση του Eclipse Android Developers Tools Εικόνα 14: Εγκατάσταση του Android SDK I Εικόνα 15: Εγκατάσταση του Android SDK II Εικόνα 16: Δημιουργία Emulator Εικόνα 17: Αρχική Οθόνη Εικόνα 18: Υπολογισμός Αριθμητικής Παράστασης... Error! Bookmark not defined. Εικόνα 19: Καταχώρηση Τύπου Συνάρτησης Εικόνα 20: Εμφάνιση Γραφικής Παράστασης

5 Περίληψη Η παρούσα εργασία πραγματεύεται την ανάπτυξη μίας εφαρμογής για την επεξεργασία μαθηματικών εκφράσεων για χρήση στο περιβάλλον του λειτουργικού συστήματος Android χρησιμοποιώντας το android SDK και άλλα εργαλεία ανάπτυξης όπως το Eclipse IDE. Σκοπός είναι η παρουσίαση του τρόπου σχεδίασης και ανάπτυξης εφαρμογών για έξυπνες συσκευές που βασίζονται σε λειτουργικό σύστημα android, σε περιβάλλον Eclipse. Η εφαρμογή η οποία αναπτύσεται στο πλαίσιο της συγκεκριμένης διπλωματικής εργασίας έχει ως στόχο εκτός από το να εκτελεί τις συνηθισμένες μαθηματικές πράξεις, κάτι το οποίο παρέχεται ήδη από πληθώρα εφαρμογών οι οποίες είναι διαθέσιμες στο play store της google, να δώσει στο χρήστη τη δυνατότητα εμφάνισης της γραφικής παράστασης για οποιαδήποτε συνάρτηση μιας μεταβλητής εισάγει ο χρήστης στην εφαρμογή. Αρχικά γίνεται μια ιστορική αναδρομή της εξέλιξης των τηλεπικοινωνιών και πως φτάσαμε στις smartphone συσκευές. Ύστερα γίνεται ανάλυση του λειτουργικού συστήματος android και της αρχιτεκτονικής του, καθώς επίσης αναλύονται και τα υπολοιπα λειτουργικά συστήματα όπως το blackberry, ios και windows phone 7. Τέλος, γίνεται ανάλυση της σχεδίασης της εφαρμογής, πως μπορούμε να την χρησιμοποιήσουμε και πως έγινε η ανάπτυξη της σε περιβάλλον eclipse. 5

6 Εισαγωγή Από το 1969 οπότε και αναπτύχθηκε το πρώτο δίκτυο απομακρυσμένων μεταξύ τους κόμβων, το ARPANET, έχει σημειωθεί τεράστια πρόοδος τόσο στις διαδικασίες και της μεθοδολογίες της δικτύωσης και της διαδικτύωσης όσο και στην ανάπτυξη καινοτόμων συστημάτων και εξοπλισμού. Η πρόοδος αυτή υπήρξε ραγδαία τα τελευταία είκοσι περίπου χρόνια οπότε η πρόσβαση στο διαδίκτυο έγινε προσιτή για το μεγαλύτερο μέρος του πληθυσμού. Παράλληλα την ίδια περίοδο, επίσης ραγδαία υπήρξε (και συνεχίζει να υφίσταται) η ανάπτυξη των κινητών τηλεπικοινωνιών. Αιτία αυτού ήταν η άμεση υιοθέτηση των τεχνολογιών τους από τον παγκόσμιο πληθυσμό αλλά και η διάθεση των παραγόντων της σχετικής αγοράς να καταστήσουν προσιτή την πρόσβαση στις υπηρεσίες της στο μεγαλύτερο ποσοστό των ανθρώπων. Ο συνδυασμός των δυνατοτήτων των κινητών τηλεπικοινωνιών και του διαδικτύου αναβάθμισε την δυνατότητα των ανθρώπων τόσο για επικοινωνία αλλά και για την πρόσβαση στις προηγμένες υπηρεσίες του διαδικτύου. Το εργαλείο για την εκμετάλλευση των υπηρεσιών αυτών είναι κυρίως οι έξυπνες συσκευές. Οι έξυπνες συσκευές κινητής τηλεφωνίας, (Smartphones), έχουν πλέον διεισδύσει σε μεγάλο βαθμό στην καθημερινότητα των ανθρώπων ανεξαρτήτως οικονομικής, κοινωνικής ή εκπαιδευτικής στάθμης. Η έρευνα που οδήγησε στην ανάπτυξη τους ξεκίνησε μετά την λήξη του Β Παγκοσμίου πολέμου ενώ η πρώτη κλήση από κινητό τηλέφωνο πραγματοποιήθηκε στις 3 Απριλίου Το πρώτο δίκτυο κινητής τηλεφωνίας αναπτύχθηκε και λειτούργησε στις αρχές της δεκαετίας του Η πρόσβαση σε αυτό γινόταν από ογκώδεις συσκευές πρώτης γενιάς 1G. Την δεκαετία του 1990 η ανάπτυξη της κινητής τηλεφωνίας υπήρξε αλματώδης και ξεκίνησε με την εμφάνιση του Global System for 1 Ο δόκτωρ Μάρτιν Κούπερ της Motorola, πραγματοποίησε την πρώτη κλήση από κινητό τηλέφωνο με 25 εκατοστά και βάρος 900 γραμμάρια με τον κωδικό MotorolaDynaTAC. 6

7 Mobile Communications (GSM) 2. Οι συσκευές κινητής τηλεφωνίας έγιναν μικρότερες σε μέγεθος και είχαν την δυνατότητα να διαχειρίζονται την αποστολή και την λήψη σύντομων γραπτών μηνυμάτων (Short Message Service SMS) 3. Είχαν επίσης την δυνατότητα λήψης και αποθήκευσης φωτογραφιών. Την δεκαετία του 2000 εμφανίστηκαν οι έξυπνες συσκευές 3G με δυνατότητες διαχείρισης πολυμέσων και την λειτουργία εφαρμογών. Οι συσκευές τρίτης γενιάς παρέχουν ένα ευρύ σύνολο δυνατοτήτων στους χρήστες τους. Οι κυριότερες από αυτές είναι: Η επικοινωνία με ήχο και κινούμενη εικόνα (video telephony) Πλοήγηση και διαχείριση του ηλεκτρονικού ταχυδρομείου με μεγάλες ταχύτητες. Ενημέρωση για εξειδικευμένα και συγκεκριμένα θέματα (πχ εξέλιξη συγκεκριμένων γεγονότων) σε πραγματικό χρόνο από σχετικές υπηρεσίες. Αναπαραγωγή πολυμέσων σε υψηλή ποιότητα. του διαδικτύου. Ηλεκτρονικές αγορές μέσω ταχέων εξειδικευμένων εφαρμογών Μη εμπορικές συναλλαγές (πχ υπηρεσίες κοινής ωφέλειας). Διενέργεια τραπεζικών και λοιπών χρηματοοικονομικών συναλλαγών. Χρήση εφαρμογών με προσανατολισμό είτε την διασκέδαση είτε την παροχή υπηρεσιών στον τελικό χρήστη. Η ανάπτυξη των συσκευών τρίτης γενιάς όπως επίσης και το σχετικά χαμηλό κόστος απόκτησης τους αλλά και των παρεχομένων υπηρεσιών για 2 Το GSM είναι ένα κυψελοειδές ψηφιακό σύστημα κινητής τηλεφωνίας δεύτερης γενιάς (2G), το οποίο χρησιμοποιεί ηλεκτρομαγνητικά σήματα και την τεχνική πολλαπλής πρόσβασης με διαχωρισμό του διαθέσιμου φάσματος συχνοτήτων σε ένα αριθμό καναλιών και την διαίρεση αυτών σε χρονοθυρίδες για την μετάδοση σημάτων. 3 SMS είναι υπηρεσία της κινητής τηλεφωνίας, με την οποία ο χρήστης έχει τη δυνατότητα να αποστείλει ή να παραλάβει σύντομο γραπτό μήνυμα από άλλους χρήστες, στην οθόνη του κινητού του τηλεφώνου. 7

8 χρήση από αυτές συνέβαλαν στην ραγδαία εξάπλωση τους. Αιτία αυτού ήταν να δημιουργηθεί μία προσοδοφόρα αγορά γύρω από αυτές η οποία γενικά περιλαμβάνει: Την δημιουργία νέων συσκευών με αναβαθμισμένες δυνατότητες που ξεπερνούν τα στενά (πλέον) όρια της επικοινωνίας. τους. Την παροχή έξυπνων και χρηστικών υπηρεσιών στους χρήστες Την ασφαλή χρήση τους. Την ανάπτυξη λογισμικού. Η παρακάτω εικόνα αποδίδει περιγραφικά την εξέλιξη των συσκευών κινητής τηλεφωνίας. Εικόνα 1: Η εξέλιξη των κινητών τηλεφώνων Στα πλαίσια αυτά προτάθηκαν λειτουργικά συστήματα για έξυπνες συσκευές (στα πρότυπα των λειτουργικών συστημάτων των ηλεκτρονικών υπολογιστών). Τα χαρακτηριστικά των λειτουργικών συστημάτων ποικίλουν με αποτέλεσμα να διίστανται οι απόψεις για την καταλληλόλητας ή την αποδοτικότητα του κάθε ενός από αυτά. Σήμερα το πιο διαδεδομένο λειτουργικό σύστημα για smartphones είναι το Android της Google, αφού 8

9 χρησιμοποιείται από την πλειοψηφία των χρηστών smartphones και αναπτύσσονται για αυτό μεγάλο πλήθος εφαρμογών καθημερινά. Για την ανάπτυξη των εφαρμογών του έχουν προταθεί διάφορα εργαλεία ανάπτυξης λογισμικού (eclipse, app inventor κα) τα οποία διευκολύνουν σε ικανοποιητικό βαθμό τον προγραμματιστή[1]. Στην παρούσα εργασία θα παρουσιαστεί η διαδικασία σχεδίασης και ανάπτυξης μία εφαρμογής κατάλληλης να τρέξει σε περιβάλλον Android με την χρήση του Eclipse ADT. Με την εφαρμογή αυτή ο χρήστης της έξυπνης συσκευής θα μπορεί να πραγματοποιεί πολύπλοκές αριθμητικές πράξεις αλλά και να βλέπει τις γραφικές παραστάσεις συναρτήσεων μίας μεταβλητής. 9

10 Περιγραφή του Λειτουργικού Συστήματος Android Γενικά Πρόκειται για ένα σύνολο προγραμμάτων προορισμένου για λειτουργία σε κινητές συσκευές. Περιλαμβάνει: Λειτουργικό σύστημα Ενδιάμεσο Επίπεδο Εφαρμογές Το Software Development Kit (SDK) του Android περιλαμβάνει όλα τα εργαλεία και Application Programming Interfaces (APIs) που είναι απαραίτητα για την σχεδίαση και ανάπτυξη εφαρμογών σε γλώσσα προγραμματισμού Java. Σε αυτό περιέχονται επίσης τα στοιχεία εκείνα που χρειάζονται για τη λειτουργία τηλεφώνων, smartphone και tablets. Είναι σχεδιασμένο να δημιουργεί διεπαφή, μέσω της οποίας οι τελικοί χρήστες επικοινωνούν με την κινητή συσκευή. Αναπτύχθηκε από την Android, μία εταιρεία που στην συνέχεια εξαγοράστηκε και ενσωματώθηκε από την Google. Στοχεύει στην αποδοτική λειτουργία των κινητών συσκευών. Η ονομασία του προέρχεται από την Ελληνική λέξη ανδροειδές. Το λογότυπό της παριστάνει ένα ανδροειδές, όπως φαίνεται στο ακόλουθο σχήμα. 10

11 Εικόνα 2: Το λογότυπο του android Η ανάπτυξη του και η διεισδυτικότητα του στην αγορά ήταν ραγδαία με αποτέλεσμα να χρησιμοποιείται στις μέρες μας από μεγάλο αριθμό μεγάλων κατασκευαστών συσκευών, μεταξύ των οποίων είναι η Samsung, η Motorola και η Sony Ericsson. Το ενδιαφέρον των προγραμματιστών για την ανάπτυξη android εφαρμογών παραμένει έντονο. Έτσι μεγάλος αριθμός δραστηριοποιούνται στην αγορά εφαρμογών για smart phones. Αποτέλεσμα αυτού είναι να υπάρχουν διαθέσιμες πολλές αξιόλογες εφαρμογές που μπορούν να λειτουργήσουν σε κινητές συσκευές που τρέχουν λειτουργικό σύστημα n android. Σημαντικό ρόλο στην διείσδυση του έπαιξε και η απόλυτη συμβατότητα του με τις δημοφιλείς υπηρεσίες της Google (Google maps, Google location κτλ). Ενισχυτικός παράγοντας της υιοθέτησης του από το κοινό των smart phones είναι το γεγονός ότι το μεγαλύτερο ποσοστό των σχετικών εφαρμογών και υπηρεσιών παρέχονται εντελώς δωρεάν[2][7]. 11

12 Αρχιτεκτονική αυτά είναι: Η αρχιτεκτονική του περιγράφεται από τέσσερα επίπεδα. Τα επίπεδα Ο πυρήνας Οι βιβλιοθήκες Το πλαίσιο υποστήριξης εφαρμογών Το επίπεδο εφαρμογών. Τα βασικά χαρακτηριστικά των επιπέδων της αρχιτεκτονικής του περιγράφονται παρακάτω ενώ σχηματικά περιγράφεται στην ακόλουθη εικόνα: Εικόνα 3: Αρχιτεκτονική Android 12

13 Πυρήνας Linux (Linux Kernel) Το Android βασίζεται σε πυρήνα Linux για τις χαμηλού επιπέδου υπηρεσίες που παρέχει οι οποίες είναι: Διαχείριση των προγραμμάτων οδήγησης της συσκευής, Αποδοτική χρησιμοποίηση της μνήμης, Χρονοπρογραμματισμό των διεργασιών, εγκατάσταση και διατήρηση της δικτύωσης με την χρήση όλων των διαθέσιμων σχετικών τεχνολογιών Βιβλιοθήκες (Libraries) Στο επίπεδο αυτό περιλαμβάνονται οι εγγενείς βιβλιοθήκες και οι βιβλιοθήκες χρόνου εκτέλεσης. Εγγενείς Βιβλιοθήκες (Internal) Βιβλιοθήκες που χρησιμοποιούν οι λειτουργίες του έχουν αναπτυχθεί σε γλώσσα προγραμματισμού C/C++ και χρησιμοποιούνται με κατάλληλες διεπαφές της Java. Βιβλιοθήκες Χρόνου Εκτέλεσης (Runtime) Στο επίπεδο αυτό κατατάσσονται οι βασικές βιβλιοθήκες της Java που χρησιμοποιούνται και η εικονική μηχανή Dalvik η οποία είναι μία υλοποίηση μιας εικονικής μηχανής Java για φορητές συσκευές που αναπτύχθηκε από 13

14 την Google.Χαρακτηριστικό της είναι το γεγονός της χρήσης των πιο συνεκτικών τύπων αρχείων που παρουσιάζονται πιο αποδοτικά σε περιβάλλον συσκευών με περιορισμένους φυσικούς πόρους. Πλαίσιο Υποστήριξης Εφαρμογών (Application Framework) Περιέχονται οι λειτουργικές μονάδες που χρησιμοποιούνται για την ανάπτυξη εφαρμογών. Υπάρχει ένα σύνολο από βασικές προεγκατεστημένες λειτουργίες που στην συνέχεια μπορεί να επεκταθούν από τον κατασκευαστή της έξυπνης συσκευής. Οι βασικότερες λειτουργικές μονάδες του επιπέδου αυτού είναι οι ακόλουθές: View System: Παρέχει τα στοιχεία των γραφικών διεπαφών (πχ buttons, textboxes, links κα). Content Providers: Επιτρέπουν στις εφαρμογές την πρόσβαση στα δεδομένα άλλων εφαρμογών ή την διάθεση των δικών τους δεδομένων σε άλλες. Resource Manager: Τα στοιχεία ενός προγράμματος που δεν είναι κώδικας. Η μονάδες αυτές ρυθμίζουν την πρόσβαση σε αυτά. Notification Manager: Διαχειρίζεται τα μηνύματα που ανταλλάσσονται μεταξύ των εφαρμογών ή εκείνων που οι εφαρμογές παράγουν. Activity Manager: Ελέγχει τις δραστηριότητες της εφαρμογής κατά την λειτουργία της και διατηρεί μιας στοίβα που επιτρέπει την πλοήγηση στην πρότερες καταστάσεις των διεπαφών της. Location Manager: Δομική μονάδα που διατηρεί την θέση της συσκευής ανά πάσα στιγμή [3]. 14

15 15

16 Επίπεδο Εφαρμογών (Application) Στο ανώτερο επίπεδο βρίσκονται οι εφαρμογές που χειρίζεται ο τελικός χρήστης Βασικό τους χαρακτηριστικό είναι η διαφανής χρήση των λειτουργιών και των υπηρεσιών των κατωτέρων επιπέδων της αρχιτεκτονικής αποκρύπτοντας τις λεπτομέρειες υλοποίησης τους από τους τελικούς χρήστες. Στον ακόλουθο πίνακα φαίνονται συνοπτικά οι δυνατότητες των συσκευών κινητής τηλεφωνίας που λειτουργούν με λειτουργικό σύστημα Android. Λειτουργία Λειτουργίες Οθόνης Αποθήκευση Δεδομένων Συνδεσιμότητα Αποστολή μηνυμάτων Περιγραφή χαρακτηριστικών Προσαρμόζεται σε μεγάλη ανάλυση, δισδιάστατες ψηφιακές γραφικές βιβλιοθήκες, τρισδιάστατα γραφικά και παραδοσιακές απεικονίσεις οθόνης "έξυπνων" συσκευών κινητής τηλεφωνίας. Χρησιμοποιείται το σύστημα διαχείρισης σχεσιακής βάσης δεδομένων SQLite για την αποθήκευση των δεδομένων Υποστηρίζει όλες τις γνωστές τεχνολογίες ενσύρματης και ασύρματης σύνδεσης συμπεριλαμβανομένων των GSM/EDGE, CDMA, EV-DO, UMTS, Bluetooth, και WiFi. Ανταλλαγή μηνυμάτων με SMS και MMS. Περιήγηση στον Ιστό WebKit browser. Υποστήριξη Java Λογισμικό γραμμένο στην Java είναι δυνατόν να 16

17 Λειτουργία Περιγραφή χαρακτηριστικών μεταγλωττιστεί και να εκτελεστεί στην εικονική μηχανή Dalvik. Υποστήριξη Πολυμέσων Επιπλέον υποστήριξη hardware Περιβάλλον Ανάπτυξης Λογισμικού Αγορά και Εγκατάσταση Εφαρμογών Οθόνη Αφής Πολλαπλών Σημείων Υποστηρίζει τις εξής μορφές πολυμέσων: H.263, H.264, MPEG-4 SP, AMR, AMR- WB, AAC, HE-AAC, MP3, MIDI, OGG Vorbis, WAV, JPEG, PNG, GIF, BMP. Παρουσιάζει συμβατότητα με κάμερες στατικής ή κινούμενης εικόνας, οθόνες αφής, GPS, αισθητήρες επιτάχυνσης, μαγνητόμετρα, δισδιάστατους καθώς και τρισδιάστατους επιταχυντές γραφικών. Περιλαμβάνει ένας προσομοιωτή συσκευής, εργαλεία για διόρθωση σφαλμάτων, μνήμη και εργαλεία ανάλυσης της απόδοσης του εκτελέσιμου λογισμικού καθώς και ένα επιπρόσθετο για το Eclipse. Tο Android Market είναι ένας κατάλογος εφαρμογών που μπορούν να μεταφορτωθούν και εγκατασταθούν στην συσκευή άμεσα μέσω ασύρματων καναλιών, χωρίς την χρήση υπολογιστή. Το λειτουργικό Android είχε εξ ορισμού υποστήριξη για οθόνες πολλαπλών σημείων. Τα πλεονεκτήματα του Android πηγάζουν από την ίδια την αρχιτεκτονική του. Στο κατώτερο επίπεδο της αρχιτεκτονική του βρίσκεται ο πυρήνας Linux ο οποίος δεν είναι ιδιαίτερα απαιτητικός σε φυσικούς πόρους. Το χαρακτηριστικό αυτό του επιτρέπει να εγκαθίσταται σε διαφορετικές πλατφόρμες υποβόσκοντος υλικού αλλά και να παρουσιάζει υψηλό βαθμό επεκτασιμότητας ώστε μελλοντικά να είναι ικανό να προσαρμοστεί σε νέες απαιτήσεις. Η χρήση πυρήνα Linux επίσης είναι ένας παράγοντας που 17

18 καθιστά το λειτουργικό σύστημα αρκετά αξιόπιστο. Σε βάθος χρόνου έχουν αναπτυχθεί και λειτουργήσει αξιόπιστα απαιτητικές εφαρμογές βασιζόμενες σε Linux για χρήση από κινητές συσκευές. Η ανάπτυξη των εφαρμογών του γίνεται σε γλώσσα προγραμματισμού Java της οποίας το βασικότερο χαρακτηριστικό είναι ότι και αυτή δεν εξαρτάται από την πλατφόρμα του υλικού όπου τρέχουν τα προγράμματα της. Η φύση των εφαρμογών που αναπτύσσονται για Android παρουσιάζει σε υψηλό βαθμό προσαρμοστικότητα σε διαφορετικά είδη συσκευών. Επιπλέον παρέχει όλα τα εργαλεία για την αποδοτική διασύνδεση των συσκευών που υποστηρίζει είτε με ενσύρματα είτε με ασύρματα φυσικά μέσα. Παρέχεται δωρεάν πρόσβαση στον κώδικα του ώστε να μπορούν τρίτοι προγραμματιστές να ενσωματώσουν πρόσθετες λειτουργίες, να επαναπροσδιορίσουν τον τρόπο εκτέλεσης δεδομένων λειτουργιών του. Καταλυτικός παράγοντας για την υψηλή του αποδοχή είναι δυνατότητα του για πλήρη προσαρμογή του σε διεθνή πρότυπα λειτουργίας για κάθε επίπεδο της αρχιτεκτονικής του και η δυνατότητα που παρέχει για δωρεάν χρήση, ανάπτυξη και δημοσίευση εφαρμογών. Τα στοιχεία αυτά ήταν άλλωστε και ο αντικειμενικός σκοπός της Google κατά την σχεδίαση του. Όσο αφορά την ασφάλεια, παρέχει ικανοποιητικό επίπεδο αφού ο πυρήνας Linux μπορεί να ελέγχει τις δικές του διαδικασίες αλλά και αυτές των εφαρμογών ανάλογα με τα δικαιώματα πρόσβασης που έχουν στους πόρους του συστήματος. Επιπροσθέτως παρέχει και διαδικασίες ελέγχου για τον περιορισμό των επιτρεπόμενων ενεργειών για κάθε μία διαδικασία που τρέχει[3][4]. 18

19 Άλλα Λειτουργικά Συστήματα BlackBerry Η εταιρεία Research In Motion (RIM) παράγει τις έξυπνες συσκευές κινητής τηλεφωνίας γνωστές ως BlackBerry. Οι συσκευές αυτές τρέχουν το λειτουργικό σύστημα BlackBerry OS, το οποίο επίσης αναπτύσσεται από την RIM. Το λειτουργικό σύστημα BlackBerry είναι διαθέσιμο αποκλειστικά για συμβατές συσκευές. Δυνατό του σημείο είναι οι υπηρεσίες που παρέχει για την διαχείριση του ηλεκτρονικού ταχυδρομείου και των άμεσων μηνυμάτων (instant messaging). Παράλληλα έχει επενδυθεί μεγάλη σπουδή για την ανάκτηση και αναπαραγωγή πολυμέσων και την εξατομίκευση των συσκευών και των εφαρμογών τους. Η πλατφόρμα Blackberry παρέχει υψηλού επιπέδου υποστήριξη σε εταιρικές εφαρμογές και για αυτό το λόγο χρησιμοποιείται κυρίως σε τέτοιου είδους εφαρμογές. Γενικό χαρακτηριστικό των συσκευών της RIM είναι ότι δεν υποστηρίζουν αναβάθμιση του λογισμικού τους με αποτέλεσμα να είναι συμβατά αποκλειστικά με το αρχικό λειτουργικό της εκάστοτε συσκευής. Μία συσκευή BlackBerry φαίνεται στην επόμενη εικόνα. Επίσης το ότι αποτελεί closed source λογισμικό δεν παροτρύνει τους προγραμματιστές να επιχειρούν την παραμετροποίηση τους και την ανάπτυξη εφαρμογών πάνω σε αυτό. Το λειτουργικό σύστημα αρχικά ήταν προγραμματισμένο σε γλώσσα C++ αλλά στην εξέλιξη του η ανάπτυξη του έγινε σε Java. Είναι έτσι προγραμματισμένο ώστε να έχει την δυνατότητα να ανταποκρίνεται σε πολλαπλές εργασίες ταυτόχρονα. Το λειτουργικό σύστημα έχει επίσης ένα Application Programming Interface (API). Με την χρήση κλάσεων API, παρέχεται η δυνατότητα σε προγραμματιστές να αναπτύξουν δικές τους εφαρμογές. Αυτές οι κλάσεις παρέχουν πρόσβαση σε τεχνολογίες που ενισχύουν την ανάπτυξη εφαρμογών που πέραν των άλλων θα μπορούν να συνεργάζονται με άλλες εφαρμογές περιλαμβανομένων των 19

20 ενσωματωμένων BlackBerry εφαρμογών. Οι προγραμματιστές εφαρμογών για BlackBerry συσκευές έχουν την δυνατότητα να χρησιμοποιούν εξελιγμένες διεπαφές API και να τις ενσωματώνουν στις εφαρμογές τους εύκολα. Επίσης παρέχονται δικτυακά API για την ανάπτυξη αντιστοίχων λειτουργιών στις εφαρμογές αλλά και API για την ενσωμάτωση λειτουργιών των συσκευών. Περιέχει επίσης Graphical User Interface (GUI) για την διάδραση του με τους χρήστες των κινητών συσκευών στις οποίες είναι εγκατεστημένο. Υπάρχουν επίσης ισχυρά εργαλεία για την ανάπτυξη διεπαφών με πιο δημοφιλή το GUI Builder for Blackberry Java Plug-in for Eclipse. Εικόνα 4: Χαρακτηριστική Blackberry συσκευή Στο τομέα της ασφαλείας δεν παρέχει κάποιας μορφής κρυπτογράφηση στις επικοινωνίες μεταξύ των συνδρομητών και των BlackBerry Internet services. Αποτέλεσμα αυτού είναι η ασφάλεια των μεταδιδομένων πληροφοριών να εξαρτάται αποκλειστικά από τις επιταγές ασφαλείας των πρωτοκόλλων 3G και 2G. Ωστόσο η ανταλλαγή δεδομένων μέσω του BlackBerry Enterprise Server γίνεται με κρυπτογράφηση 3DES ή AES. Όταν η επικοινωνία περιλαμβάνει BIS και BES τότε κρυπτογραφούνται 20

21 τα δεδομένα που περνάνε μέσω του BES. Όσο αφορά την ανταλλαγή των αμέσων μηνυμάτων αυτά κρυπτογραφούνται με Global PIN Encryption key που επιτρέπει στις συσκευές να μπορούν να κρυπτογραφούν και να αποκρυπτογραφούν τα διακινούμενα μηνύματα [5] [9]. 21

22 ios Το λειτουργικό σύστημα ios 4 είναι διαθέσιμο μόνο στις συσκευές της Apple. Αρχικά αναπτύχθηκε μόνο για το iphone αλλά στην συνέχεια επεκτάθηκε και στην υποστήριξη ipod Touch και ipad. Στο τέλος του 2010 το ios κατείχε το 16% της αγοράς των smartphones και κατείχε την τρίτη θέση στον σχετικό πίνακα. Βασίζεται στην άμεση αλληλεπίδραση του χρήστη με την οθόνη αφής της συσκευής. Με αυτόν τον τρόπο ο χειρισμός των συσκευών καθίσταται γρήγορος και απλός. Στηρίζεται στο Mac OS X και κατ επέκταση στο UNIX. Διαχειρίζεται το υλικό της συσκευής όπου είναι εγκατεστημένο και παρέχει όλες εκείνες τις τεχνολογίες και μεθοδολογίες για την υλοποίηση εφαρμογών από τρίτους προγραμματιστές, μέσω του ios Software Development Kit (SDK). Επίσης περιέχει προεγκατεστημένες ορισμένες εφαρμογές του συστήματος όπως η διαχείριση τηλεφωνικών κλήσεων, το ηλεκτρονικό ταχυδρομείο και ο φυλλομετρητης safari. Το ios Software Development Kit χρησιμοποιεί το Xcode 4. Δίνει την δυνατότητα στους προγραμματιστές να δημιουργούν εφαρμογές και να τις δοκιμάζουν στο iphone Simulator, ένα εργαλείο για την προσομοίωση λειτουργίας των εφαρμογών που αναπτύσσουν. Το SDK της Apple έχει ως απαιτήσεις συστήματος για να χρησιμοποιηθεί, έναν Intel Mac με λειτουργικό σύστημα Mac OS X Leopard ή και νεότερο. Τα Windows αλλά και παλιότερες εκδόσεις Mac OS X δεν υποστηρίζονται. Το λειτουργικό σύστημα του iphone στηρίζεται στο UNIX με αποτέλεσμα αρκετές από τις χαμηλού επιπέδου λειτουργίες να προέρχονται από τεχνολογίες ανοικτού κώδικα, αν και το ίδιο το ios είναι λογισμικό κλειστού κώδικα. Το λογισμικό του λειτουργικού συστήματος είναι οργανωμένο σε μια στοίβα. Το κατώτερο στοιχείο της στοίβας αποτελεί ο πυρήνας Mach και οι οδηγοί (drivers) του υλικού της συσκευής κινητής τηλεφωνίας. Τοποθετημένα πάνω από αυτά βρίσκονται λειτουργίες πυρήνα 4 Το Xcode είναι ένα εξελιγμένο περιβάλλον ανάπτυξης εφαρμογών της Apple που περιλαμβάνει ένα σύνολο εργαλείων ανάπτυξης για εφαρμογές που προορίζονται για OS X και ios. 22

23 και διεπαφές που χρησιμοποιούνται στην ανάπτυξη ειδικευμένων εφαρμογών. Η αρχιτεκτονική του λειτουργικού συστήματος διαρθρώνεται στα εξής επίπεδα: Το επίπεδο του υλικού μέρους (hardware) το οποίο έχει να κάνει με τα υλικά συστατικά μέρη της συσκευής όπως συσκευές εισόδουεξόδου, επεξεργαστής και μνήμη. Το επίπεδο firmware αναφέρεται στον προγραμματισμό του κάθε chip ξεχωριστά. Το επίπεδο του επεξεργαστή που σχετίζεται με το σύνολο των εντολών ARM και με τον πίνακα διακοπών (interrupts) όπως αυτός ορίζεται κατά την διάρκεια εκκίνησης της συσκευής και αρχικοποίησης των drivers. Στο επίπεδο iphone OS περιλαμβάνεται ο πυρήνας, οι drivers και οι υπηρεσίες που αποτελούν το λειτουργικό σύστημα που iphone. Το επίπεδο Objective-C Runtime αποτελείται από τις αντίστοιχες δυναμικές βιβλιοθήκες αλλά και τις βασικές βιβλιοθήκες της C. Στο επίπεδο Frameworks/API περιλαμβάνονται τα cocoa touch 5 και οι κλήσεις ανωτέρων επιπέδων. Στο υψηλότερο επίπεδο της αρχιτεκτονικής βρίσκεται το επίπεδο εφαρμογών (Application) όπου τοποθετούνται οι εφαρμογές που είναι εγκατεστημένες στην συσκευή. Στο επίπεδο αυτό το λογισμικό παίζει τον ρόλο του ενδιάμεσου μεταξύ του υλικού της συσκευής και των εφαρμογών που παρουσιάζονται στον χρήστη. Οι εφαρμογές επικοινωνούν με το υλικό μέσω διεπαφών του συστήματος προκειμένου να προστατευθούν από αλλαγές που ενδεχομένως 5 Πρόκειται για ένα πρωτόκολλο για την κατασκευή προγραμμάτων λογισμικού για ipod, ipad, iphone. Εισάγει ένα επιπλέον επίπεδο αφαίρεσης στο ios. Είναι γραμμένο σε Objective-C και επιτρέπει την χρήση υλικού και χαρακτηριστικών που δεν είναι διαθε σιμα σε MAC OS X. 23

24 να συμβούν στο υλικό επιτυγχάνοντας υψηλό βαθμό ανεξαρτησίας από αυτό. Σχηματικά η αρχιτεκτονική του παρουσιάζεται στην επόμενη εικόνα. Εικόνα 5: Αρχιτεκτονική ios Η ανάπτυξη εφαρμογών προορισμένων για να λειτουργήσουν πάνω σε ios περιλαμβάνει τέσσερα επίπεδα. Ανεβαίνοντας από τα κατώτερα επίπεδα στα ανώτερα μετακινούμαστε από τις βασικές τεχνολογίες που στηρίζονται όλες οι εφαρμογές προς πιο εξειδικευμένες. Οι υπηρεσίες που υπάρχουν στα ανώτερα επίπεδα περιλαμβάνουν τις απαραίτητες αφαιρέσεις για την αποδοτικότερη ανάπτυξη προγραμμάτων που να χρησιμοποιούν τις υπηρεσίες των κατωτέρων επιπέδων. Cocoa Touch: Έτσι το επίπεδο των cocoa touch περιλαμβάνει το πλαίσιο για την βασική μορφή της εφαρμογής και υποστηρίζει μεθοδολογίες υψηλού επιπέδου, καθοδηγώντας την διαδραση του χρήστη με την εφαρμογή. Είναι γραμμένο σε Objective-C και διαχειρίζεται τα συμβάντα στην οθόνη της συσκευής, τα συμβάντα αλλαγή κλίσης της συσκευής (Accelerometer), την υποστήριξη κάμερας για την εφαρμογή, την ιεραρχία των προβαλλομένων στοιχείων στην οθόνη και την προσαρμογή των 24

25 τοπικών ρυθμίσεων της εφαρμογής. Έχει αναπτυχθεί πάνω σε Model View Controller (MVC). Media: Στο επίπεδο Media περιλαμβάνονται οι μεθοδολογίες ανάπτυξης στοιχείων πολυμέσων και δικτυακών λειτουργιών και παρέχονται πολλές δυνατότητες για ενσωμάτωση αρκετών μορφών πολυμέσων στην εφαρμογή. Χρησιμοποιείται το OpenAL (open audio library) που έχει την ικανότητα να παράγει υψηλής ποιότητας πολυδυαυλικό ήχο. Πραγματοποιούνται οι διαδικασίες εγγραφής και μείξης ήχου, αναπαραγωγή βίντεο. Υποστηρίζεται επίσης η σχεδίαση και υλοποίηση γραφικών δύο ή τριών διαστάσεων και η δημιουργία κινουμένων περιβαλλόντων χρήσης. Core Services: Στο επίπεδο αυτό παρέχονται υπηρεσίες συστήματος που χρησιμοποιούνται από τις εφαρμογές. Σε αυτά περιλαμβάνονται οι ακόλουθες τεχνολογίες: Block Objects: Τμήματα λογισμικού γραμμένα σε C που ενσωματώνονται σε προγράμματα C ή Objective C και χρησιμοποιούνται κυρίως ως callbacks 6 ή σε περιπτώσεις που απαιτείται ευελιξία του κώδικα και των δεδομένων που θα χρησιμοποιηθούν. Grand Central Dispatch (GCD): Είναι τεχνολογία που χρησιμοποιείται για την διαχείριση των διεργασιών μίας εφαρμογής. In-App Purchase: Παρέχει τις μεθοδολογίες για την συναλλαγή του χρήστη μιας εφαρμογής με το περιεχόμενο και τις υπηρεσίες που είναι διαθέσιμες. SQLite: Βιβλιοθήκη που βοηθάει την ενσωμάτωση μίας SQL βάσης δεδομένων στην εφαρμογή. Υποστήριξη XML: Παρέχει μεθοδολογίες για την ανάκτηση XML εγγράφων και την διαχείριση XML περιεχομένου. 6 Συνάρτηση που παρέχεται από τον IIS και επιτρέπει σε έναν Internet Server API (ISAPI) extension ή filter να έχει πρόσβαση στο διαδίκτυο. 25

26 Core OS: Στο επίπεδο Core OS περιλαμβάνονται τα χαμηλού επιπέδου χαρακτηριστικά στα οποία στηρίζονται οι τεχνολογίες των ανωτέρων επιπέδων καθώς και το σύστημα που καλύπτει το περιβάλλον του πυρήνα τους drivers και τις χαμηλού επιπέδου διεπαφές του λειτουργικού συστήματος [8]. 26

27 Windows Phone 7 Το νέο λειτουργικό για κινητά από την Microsoft παρουσιάστηκε τον Οκτώβριο του 2010 επανασχεδιασμένο από την αρχή. Στοχεύει στην απλούστευση του χειρισμού της συσκευής που είναι εγκατεστημένο και της σύνδεσης σε τόπου κοινωνικής δικτύωσης στο διαδίκτυο. Δόθηκε επίσης σημασία στην παροχή καλαίσθητών και χρηστικών γραφικών διεπαφών χρήστη, στην λειτουργία των multituch οθονών και στην παροχή δημοφιλών υπηρεσιών. Παράλληλα με την ανάπτυξη του λειτουργικού συστήματος η Microsoft παρουσίασε και το Windows Marketplace για την υποστήριξη του. Περιλαμβάνει ένα περιβάλλον χρήσης το οποίο έχει δημιουργηθεί με την Metro. Υποστηρίζει πλήρως τις υπηρεσίες της Microsoft Windows Live, Zune, Xbox Live και το Bing. Υποστηρίζει επίσης υπηρεσίες τρίτων κατασκευαστών όπως Facebook και οι Google Accounts. Τα Windows Phone 7 Smartphones έχουν διασύνδεση με το Zune της Microsoft, Facebook, Windows LIVE καθώς και το Windows Phone Marketplace. Περιέχουν επ πισης το office hub, ένα εργαλείο για την διασύνδεση της Windows Phone 7 συσκευής και της αντίστοιχης έκδοσης Microsoft Office στον υπολογιστή, Word Mobile, Excel Mobile, PowerPoint Mobile, OneNote Mobile, και SharePoint για την διαχείριση αρχείων του office[6]. Για τον προγραμματισμό σε αυτή την πλατφόρμα, οι εφαρμογές πρέπει να βασίζονται ή στο XNA, ένα σετ εργαλείων της Microsoft με διαχειρίσιμο περιβάλλον ανάπτυξης εφαρμογών, ή σε μια συγκεκριμένη έκδοση του Silverlight που να υποστηρίζει τα Windows Phone 7. Για την σχεδίαση και την προσομοίωση των εφαρμογών παρέχεται από την Mirosoft μία επέκταση για το Visual Studio 2010, το Windows Phone Developer [10][11]. 27

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

29 παράστασης που περιγράφει την συνάρτηση που πληκτρολόγησε. Αποτέλεσμα μπορεί να είναι η γραφική παράσταση ή ένα μήνυμα σφάλματος αν έχει γίνει κάποιο σφάλμα στην πληκτρολόγηση. Πιθανοί Χρήστες της Εφαρμογής phones. Οι πιθανοί χρήστες της εφαρμογής είναι όλοι οι πιθανοί χρήστες smart Τα παραπάνω αποτυπώνονται στο ακόλουθο use case διάγραμμα. Εικόνα 6: Διάγραμμα Περιπτώσεων Χρήσης 29

30 Συνολική Λειτουργία της Εφαρμογής Ο χρήστης με την είσοδο του στην εφαρμογή θα μπορεί να επιλέξει το αν πρέπει να εκτελεστούν οι αριθμητικές πράξεις μία αριθμητικής παράστασης, αν πρέπει να δημιουργεί η γραφική παράσταση μία συνάρτησης μίας μεταβλητής ή θα πρέπει η συσκευή να τερματιστεί. Στην πρώτη περίπτωση καταγράφει την αριθμητική πράξη. Με την ολοκλήρωση της καταγραφής της επιλέγει την εμφάνιση του αποτελέσματος. Στην συνέχεια επιστέφει στις αρχικές του επιλογές που είχε με την εκκίνηση της εφαρμογής. Στην δεύτερη περίπτωση καταγράφει την συνάρτηση. Με την ολοκλήρωση της καταγραφής της επιλέγει την εμφάνιση της γραφικής της παράστασης οπότε αυτή δημιουργείται και εμφανίζεται.. Στην συνέχεια επιστέφει στις αρχικές του επιλογές που είχε με την εκκίνηση της εφαρμογής. Τέλος στην τρίτη περίπτωση τερματίζεται η εφαρμογή. Η λειτουργία της εφαρμογής αποτυπώνεται διαγραμματικά στην ακόλουθο διάγραμμα καταστάσεων. Εικόνα 7: Διάγραμμα Καταστάσεων Εφαρμογής Λειτουργία Εκτέλεσης Αριθμητικών Πράξεων 30

31 Κατά την λειτουργία αυτή ο χρήστης καταχωρεί τα αριθμητικά ψηφία και τους τελεστές που απαρτίζουν την αριθμητική παράσταση. Όταν ολοκληρώσει την πληκτρολόγηση ζητάει την εμφάνιση του αποτελέσματος αυτής. Η ροή αυτή καταγράφεται στο ακόλουθο διάγραμμα ροής. Εικόνα 8: Διάγραμμα Ροής για τον υπολογισμό αριθμητικών παραστάσεων 31

32 Λειτουργία Ανάπτυξης Γραφικής Παράστασης Συνάρτησης Κατά την λειτουργία αυτή ο χρήστης καταχωρεί τα αριθμητικά ψηφία, την μεταβλητή (με το σύμβολο χ) και τους τελεστές που απαρτίζουν τον μαθηματικό τύπο της συνάρτησης. Όταν ολοκληρώσει την πληκτρολόγηση ζητάει την εμφάνιση γραφικής της παράστασης. Η εφαρμογή εφαρμόζει ορισμένες τιμές στην μεταβλητή της συνάρτησης. Οι τιμές που προκύπτουν είναι εκείνες που χρησιμοποιούνται για να διαμορφωθεί η γραφική παράσταση η οποία και εμφανίζεται στην οθόνη. Η ροή αυτή καταγράφεται στο ακόλουθο διάγραμμα ροής. Εικόνα 9: Διάγραμμα Ροής για την λειτουργία της δημιουργίας γραφικής παράστασης 32

33 Σχεδίαση διεπαφών Η εφαρμογή σχεδιάστηκε να λειτουργεί με δύο μόνο διεπαφές. Στην πρώτη ο χρήστης έχει την δυνατότητα να προσδιορίσει τη αριθμητική παράσταση που επιθυμεί να υπολογίσει. Στην συνέχεια στην ίδια διεπαφή έχει την δυνατότητα να κάνει κλικ στο πλήκτρο ΥΠΟΛΟΓΙΣΜΟΣ οπότε και σε κατάλληλο textbox υπολογίζεται το αποτέλεσμα της. Στην επόμενη εικόνα φαίνεται η χρήση αυτή της διεπαφής. Χαρακτηριστικό είναι ότι η λειτουργία του υπολογισμού ολοκληρώνεται σε μία μόνο διεπαφή. Το σκαρίφημα διεπαφή φαίνεται στη επόμενη εικόνα. Εικόνα 10: Σχέδιο διεπαφής 1β Για την δημιουργία γραφικής παράστασης ο χρήστης χρειάζεται να καταγράψει την συνάρτηση σε textbox στην συνέχεια θα επιλέξει να κάνει 33

34 κλικ στο πλήκτρο γραφική παράσταση οπότε σε επόμενη οθόνη θα παρουσιαστεί η γραφική παράσταση που έδωσε. Η πρώτη διεπαφή για την λειτουργία θα έχει την μορφή που φαίνεται στη Εικόνα 8 ενώ η διεπαφή στην οποία προβάλλεται η γραφική παράσταση θα έχει την μορφή που φαίνεται στην εικόνα 9. Στην ίδια διεπαφή βρίσκεται και ένα πλήκτρο για την επιστροφή στην πρώτη διεπαφή. Εικόνα 11: Σχέδιο διεπαφής 1 Εικόνα 12: Σχέδιο διεπαφής 2 34

35 Ανάπτυξη με Eclipse Εγκατάσταση του Eclipse ADT Η εγκατάσταση γίνεται μέσω του Android Development Tools (ADT) πρόσθετου (plug-in) στο Eclipse IDE. To Eclipse τρέχει μέσω του Java runtime environment (JRE), το οποίο υπάρχει δωρεάν διαθέσιμο στον δικτυακό τόπο της Oracle. Για την ανάπτυξη android εφαρμογών χρειάζεται να γίνει η λήψη του Eclipse από το και να ακολουθηθεί η παρακάτω διαδικασία. Εγκατάσταση Android Developer Tools Κλικ στο Help -> Install New Software Πατάμε το Add στο νέο παράθυρο και στο Name βάζουμε οτι θέλουμε ενώ στο Location αντιγράφουμε αυτή τη διεύθυνση: Κάνουμε check σε όλα τα κουτάκια και πατάμε Next, και περιμένουμε να τελειώσει η διαδικασία, download αρχείων και ενημέρωση του Eclipse. 35

36 Εικόνα 13: Εγκατάσταση του Eclipse Android Developers Tools Ακολούθως πατάμε Next αποδοχή στους Όρους Χρήσης και Finish. Android Εγκατάσταση Android SDK και πακέτα εκδόσεων του Κατεβάζουμε το Android SDK από το και το κάνουμε εγκατάσταση. Κάνουμε uncheck το Start Android SDK now. 36

37 Στο Eclipse, και Window -> Preferences και στο SDK Location, βάζουμε το φάκελο στον οποιο κάναμε προηγούμενος εγκατάσταση τοandroid SDK. Εικόνα 14: Εγκατάσταση του Android SDK I Στο Eclipse, Window -> Android SDK Manager Πατάμε Install Packages, και περιμένουμε να τελειώσει η διαδικασία [14]. 37

38 Εικόνα 15: Εγκατάσταση του Android SDK II Δημιουργία του προσομοιωτή (emulator) πρόγραμμα. Στο Eclipse, Window -> AVD Manager Πατάμε New, και συμπληρώνουμε τα πεδία. Target: Η έκδοση στην οποία θα αναπτύξουμε το πρόγραμμα. SD Card Size: Το μέγεθος τις διαθέσιμης μνήμης για το Skin Built in: είναι η ανάλυση της οθόνης (κινητού). 38

39 Hardware: Εδώ διαλέγουμε το υλικό που θα χρησιμοποιήσουμε στο πρόγραμμα μας, πχ, κάμερα, μνήμη cache, κλπ [13][14]. Εικόνα 16: Δημιουργία Emulator 39

40 Εγκατάσταση Απαραίτητων Βιβλιοθηκών Βιβλιοθήκη MathEval Για να λειτουργήσει αποδοτικά η εφαρμογή απαιτείται να γίνει parsing της αριθμητικής παράστασης ή της συνάρτησης που καταχωρεί ο χρήστης. Αυτό μπορεί να γίνει με την java βιβλιοθήκη MathEval ή οποία είναι διαθέσιμη δωρεάν. Πρόκειται για έναν ισχυρό parser ο οποίος δημιουργήθηκε για να καλύψει την ανάγκη για αποδοτική και ασφαλή αποτύπωση των μαθηματικών εκφράσεων που γράφονται με τρόπο που βρίσκεται κοντά στην φυσική γλώσσα σε τρόπο απολύτως κατανοητό από τους ηλεκτρονικούς υπολογιστές. Με τον όρο αποδοτική εννοείται ότι ο parser θα πρέπει να περιλαμβάνει το σύνολο των τελεστών αλλά και να προβλέπει όλους τους τρόπους γραφής των αριθμητικών και των μαθηματικών εκφράσεων. Με τον όρο ασφαλή εννοείται ότι το αποτέλεσμα που παρέχει ο parser θα πρέπει να ταυτίζεται εννοιολογικά με αυτό που έχει καταγραφεί στο αρχικό string. Για παράδειγμα ο parser θα πρέπει να λαμβάνει σαν είσοδο το: [( )^2]/12 Να εκτελεί την πράξη ((10+2)*(10+2))/12 Και να επιστρέφει το αποτέλεσμα 12 Στο διαδίκτυο υπάρχουν αρκετές λύσεις για το πρόβλημα αυτό. Ωστόσο η βιβλιοθήκη MathEval έχει το πλεονέκτημα ότι δεν κάνει κατάχρηση 40

41 των διατιθεμένων πόρων. Το στοιχείο αυτό γίνεται περισσότερο σημαντικό όταν πρόκειται να χρησιμοποιηθεί σε μία εφαρμογή android δηλαδή σε συσκευές με περιορισμένη διαθέσιμή μνήμη. Τα κύρια χαρακτηριστικά της MathEval είναι: Υποστηρίζει όλους τους βασικούς τελεστές που μπορούν να γραφούν με ένα qwerty πληκτρολογίου (^,*,,,/,,%,+,-) Αποδοτική ιεράρχηση των πράξεων με την χρήση των παρενθέσεων Υπονοούμενη εκτέλεση πολλαπλασιασμών εντός αγκυλών Καλή συμπεριφορά στην χρήση εκθετικών εκφράσεων Υποστήριξη δεκαεξαδικών αριθμών με τη χρήση του προθέματος 0x. Υποστηρίζει σταθερές και μεταβλητές τιμές. Χρησιμοποίει επεκτάσιμους τελεστές Χρησιμοποιεί επεκτάσιμες συναρτήσεις. Ένα δείγμα κώδικα java που χρησιμοποίει συναρτήσεις της βιβλιοθήκης φαίνεται παρακάτω. MathEval math=new MathEval(); math.setvariable("top", 5); math.setvariable("left", 20); math.setvariable("bottom",15); math.setvariable("right", 60); System.out.println("Middle: "+math.evaluate("floor((right+1-left)/2)")); 41

42 Η λειτουργία της βασίζεται στην ανάγνωση της συμβολοσειράς εισόδου και αρχικά την αναζήτηση των τελεστών που περιλαμβάνονται. Όταν βρεθεί ένας τελεστής, αν η προτεραιότητα του είναι μεγαλύτερη από εκείνη κάποιου άλλου που βρίσκεται στην αναμονή, τότε γίνεται αναδρομή σε μια υποέκφραση από την τρέχουσα θέση μέχρι το τέλος της τρέχουσας υποέκφρασης. Εάν εντοπιστεί κάποια υπο-έκφραση σε παρένθεση τότε επίσης εκτελείται αναδρομή για να υπολογιστεί. Σε διαφορετική περίπτωση εκτελείται η τρέχουσα πράξη και ο νέο-ανακαλυφθέντας τελεστής γίνεται ο τρέχων. Αν ο νέος τρέχον τελεστής δεν έχει μεγαλύτερη προτεραιότητα από τον πρώτο που αναμένει στην ουρά ή αν έχει ολοκληρωθεί η υπο-έκφραση γίνεται επιστροφή στην τιμή του αριστερού μέλους. Όταν η διαδικασία επιστρέφει στην κορυφή της αναδρομή σημαίνει ότι η διαδικασία έχει ολοκληρωθεί. Βασική συνάρτηση της βιβλιοθήκης είναι η function_evaluate που υλοποιεί την προαναφερθήσα διαδικασία. Πολύ σημαντική επίσης είναι η δυνατότητα που παρέχεται στον προγραμματιστή που θα την χρησιμοποιήσει, να ορίσει δικούς του τελεστές και πράξεις ή να επαναπροσδιορίσει τους ήδη υπάρχοντες. Στο επόμενο παράδειγμα παρουσιάζει την εισαγωγή στην κλάση του προσδιορισμου της σημασίας του τελεστή! για τον υπόλογισμο του παραγοντικού ενός ακεραίου αριθμού[15]. matheval.setoperator(new MathEvalHandler())); MathEval.Operator('!',90,90,MathEval.LEFT_SIDE,new... public class MathEvalHandler extends Object implements MathEval.OperatorHandler { 42

43 public double evaluateoperator(double lft, char opr, double rgt) throws ArithmeticException { switch(opr) { case '!': { if(lft<0) { number"); throw new ArithmeticException("Cannot calculate factorial of negative } else if(lft<2) { return 1; } else { int tot=2; for(int xa=3; xa<=lft; xa++) { tot*=xa; } return tot; } } // returns default: { throw new ArithmeticException("Operator '"+opr+"' not supported in custom operator implementation"); } // throws } } } Βιβλιοθήκη GraphView Πρόκειται για μία java που παρέχει πλήρη και αποδοτικά API για την εμφάνιση στις διεπαφές των android εφαρμογών γραφημάτων. Οι δυνατότητες απεικόνισης που προσφέρει περιλαμβάνουν: 43

44 Δυνατότητα απεικόνιση Line Chart και Bar Chart. Δυνατότητα σχεδιασμού πολλαπλών σειρών δεδομένων στα οποία μπορεί να αντιστοιχίζεται ένα διαφορετικό χρώμα. Δυνατότητα εμφάνισης υπομνήματος για την επεξήγηση των δεδομένων του γραφήματος. Δυνατότητα εμφάνισης ετικετών που αντιστοιχίζονται στα στοιχεία του γραφήματος. Οι ετικέτες μπορεί να τοποθετηθούν στο γράφημα με διάφορους τρόπους. Δυνατότητα εμφάνισης ετικετών για τους άξονες του γραφήματος. Υποστήριξη διαφορετικών συχνοτήτων δεδομένων Δυνατότητα περιορισμού του μεγέθους του παραθύρου εμφάνισης του γραφήματος ώστε να εμφανίζεται μόνο το μέρος εκείνο που έχει ενδιαφέρον. Δυνατότητα μετακίνησης του παραθύρου εμφάνισης του γραφήματος. Δυνατότητα προσαρμογής όλων των αισθητικών χαρακτηριστικών εμφάνισης Στο παρακάτω παράδειγμα φαίνεται ο τρόπος για την ενσωμάτωση ενός απλού γραφήματος σε εφαρμογή android. Το γράφημα που προκύπτει θα έχει την παρακάτω μορφή: 44

45 Ο κώδικας που καταγράφεται έχει όπως παρακάτω: GraphViewSeries exampleseries = new GraphViewSeries(new GraphViewData[] { new GraphViewData(1, 2.0d), new GraphViewData(2, 1.5d), new GraphViewData(3, 2.5d), new GraphViewData(4, 1.0d) }); GraphView graphview = new LineGraphView( this // context, "GraphViewDemo" // heading ); graphview.addseries(exampleseries); // data LinearLayout layout = (LinearLayout) findviewbyid(r.id.layout); 45

46 layout.addview(graphview); Σε αυτό το απόσπασμα κώδικα ένα αντικείμενο GraphViewSeries δημιουργείται. Για αυτό δημιουργείται ένας πίνακας που περιλαμβάνει τα δεδομένα που απεικονίζονται στο γράφημα και ενσωματώνεται στο αντικείμενο GraphViewSeries. Στην συνέχεια δημιουργείται ένα αντικείμενο GraphView τύπου Line Graph το οποίο θα τοποθετηθεί στο τρέχον context, θα έχει τίτλο GraphView. Σε αυτό το αντικείμενο τοποθετείται ο πίνακας των σχετικών δεδομένων. Στην συνέχεια ενσωματώνεται στο layout που έχει τοποθετηθεί στην διεπαφή για την απεικόνιση του γραφήματος [12]. 46

47 Λειτουργία Υπολογισμού Αριθμητικών Παραστάσεων Η λειτουργία αυτή χειρίζεται την είσοδο που δέχεται από τον χρήστη, το επεξεργάζεται και στην συνέχεια εμφανίζει το αποτέλεσμα στην διεπαφή της. Η επεξεργασία περιλαμβάνει την αξιολόγηση και μετασχηματισμό της με την βιβλιοθήκη MathEval. Αν η παράσταση που δόθηκε είναι έγκυρη, οι αριθμητικές πράξεις που θα εκτελέσει θα αποδώσουν το τελικό αποτέλεσμα. Λειτουργία Εμφάνισης Παράστασης μίας μεταβλητής Κατά την λειτουργία αυτή γίνεται επεξεργασία της συμβολοσειράς που εισάγει ο χρήστης. Η εφαρμογή κρατάει σε πίνακα 100 θέσεων τα αποτελέσματα που προκύπτουν από την αντικατάσταση του χαρακτήρα «χ» που αντιστοιχεί στην μεταβλητή της συνάρτησης. Η αριθμητική παράσταση που θα προκύψει θα υποστεί επεξεργασία με την βιβλιοθήκη MathEval ώστε, αν είναι έγκυρη, να παράξει το αποτέλεσμά της. Ο πίνακας θα χρησιμοποιηθεί από ένα αντικείμενο GraphView ώστε να δημιουργηθεί η γραφική παράσταση της συνάρτησης. Κώδικας της εφαρμογής Το eclipse με την δημιουργία νέου έργου Android εφαρμογής σχηματίζει το δένδρο των αρχείων της εφαρμογής. Ο προγραμματιστής στην συνέχεια πρέπει να προσθέσει τις διεπαφές που χρειάζεται για την υλοποίηση των λειτουργιών της. Τον κώδικα που θα καθορίσει την λειτουργητότητα της στα παρακάτω αρχεία: Τα xml αρχεία που καθορίζουν την μορφή των διεπαφών. Τα αρχεία αυτά είναι activity_graph.xml, activity_main.xml. 47

48 Τα java αρχεία που καθορίζουν την συμπεριφορά των διεπαφών της εφαρμογής. Τα αρχεία αυτά είναι τα GraphActivity.java και MainActivity.java To αρχείο AndroidManifest.xml το οποίο συντονίζει την λειτουργία της. Επίσης χρειάζεται να προστεθεί το αρχείο MathEval.java και το αρχείο GraphView.jar που λαμβάνονται από το διαδίκτυο. Στο Παράρτημα Α φαίνονται τα περιεχόμενα των αρχείων στα οποία επεμβαίνει ο προγραμματιστής. 48

49 Χρήση της Εφαρμογής Λειτουργία Υπολογισμού Αριθμητικών Παραστάσεων Κατά την λειτουργία αυτή ο χρήστης πληκτρολογεί την αριθμητική παράσταση που τον ενδιαφέρει. Αυτήν μπορεί να την πληκτρολογήσει χρησιμοποιώντας το εικονικό πληκτρολόγιο της αλλά και επιλέγοντας κατάλληλους τελεστές από το list box που περιλαμβάνεται στην εφαρμογή. Αφού ολοκληρώσει την πληκτρολόγηση και αν αυτή έχει γίνει σωστά, εμφανίζεται στο text box ακριβώς από κάτω, το αποτέλεσμα της. Εικόνα 18: Αρχική Οθόνη Εικόνα 17: Υπολογισμός Αριθμητικής Παράστασης 49

50 Λειτουργία Απεικόνισης Γραφικών Παραστάσεων Συναρτήσεων μίας Μεταβλητής. Κατά την λειτουργία αυτή ο χρήστης καταγράφει στο textbox που βρίσκεται στην κορυφή της διεπαφής τον τύπο της συνάρτησης. Στην θέση της μεταβλητής χρειάζεται να καταχωρήσει τον χαρακτήρα x. Στην συνέχεια πρέπει να κάνει κλικ στο πλήκτρο Graph προκειμένου να εμφανιστεί η επόμενη οθόνη που περιλαμβάνει την γραφική παράσταση. Εικόνα 19: Καταχώρηση Τύπου Συνάρτησης Εικόνα 20: Γραφική Παράσταση Συνάρτησης 50

51 Συμπεράσματα Το περιβάλλον ανάπτυξης λογισμικού Eclipse δίνει απεριόριστες δυνατότητες στους προγραμματιστές να αναπτύσσουν τις android εφαρμογές τους με ακρίβεια, αποδοτικότητα και με ταχύτητα. Παράλληλα η γλώσσα java τους δίνει την δυνατότητα να χρησιμοποιούν έτοιμα συστατικά λογισμικού επιταχύνοντας τους ρυθμούς ανάπτυξης. Το γεγονός ότι όλα τα προαναφερθέντα μπορούν να τα κάνουν δωρεάν δίνει ιδιαίτερη δυναμική στην εργασία τους. Τα χαρακτηριστικά αυτά πέρα από το ότι ευεργετούν τους προγραμματιστές δίνει ιδιαίτερη δυναμική στο Android σαν επιλογή για λειτουργικό σύστημα των smart phones αφού η ανάπτυξη χρήσιμων για κάθε περίπτωση εφαρμογών γίνεται σχετικά εύκολα και γρήγορα. Στην εφαρμογή που δημιουργήθηκε στα πλαίσια της εργασίας χρησιμοποιήθηκαν δύο βιβλιοθήκες που ήταν διαθέσιμες στο διαδίκτυο. Οι βιβλιοθήκες αυτές απήλλαξαν τον προγραμματιστή από την απαίτηση ανάπτυξης κώδικα για τον υπολογισμό των αριθμητικών παραστάσεων αλλά και για την απεικόνιση των γραφικών παραστάσεων μίας μεταβλητής. Έτσι η εφαρμογή αναπτύχθηκε ταχύτερα και με μεγαλύτερη ακρίβεια αφού ο προγραμματιστής χρειάζεται να ασχοληθεί με την επίλυση λιγότερων προβλημάτων. Η ελευθερία που παρέχει η Google για την ανάπτυξη εφαρμογών για το λειτουργικό σύστημα Android, επέδρασσε καταλυτικά στην επικράτησή του σε σχέση με τα υπόλοιπα λειτουργικά συστήματα του ανταγωνισμού. Η επένδυση της εταιρείας στην διάθεση εργαλείων για την ανάπτυξη εφαρμογών δωρεάν, έδωσε την ευκαιρία σε μεγάλο πλήθος προγραμματιστών να αναπτύξουν δυνατές παραγωγές με χαμηλό κόστος. Αυτό έδωσε επίσης την ευκαιρία στους χρήστες συσκευών που τρέχουν το λειτουργικό σύστημα να έχουν να επιλέξουν από μία μεγάλη ποικιλία εφαρμογών χαμηλού κόστους και υψηλών δυνατότητων. Για τους 51

52 σύγχρονους νέους προγραμματιστές η ενασχόληση με την ανάπτυξη εφαρμογών Android είναι μία πολύ ενδιαφέρουσα πρόκληση. 52

53 Παράρτημα Α: Κώδικας της Εφαρμογής AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android=" package="math.functions.mathfunctions" android:versioncode="1" android:versionname="1.0" > <uses-sdk android:minsdkversion="8" android:targetsdkversion="19" /> <application android:allowbackup="true" > <activity android:name="math.functions.mathfunctions.mainactivity" > <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> </activity> <activity android:name="math.functions.mathfunctions.graphactivity" > </activity> </application> </manifest> 53

54 activity_main.xml <RelativeLayout xmlns:android=" xmlns:tools=" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".mainactivity" > <ListView android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_alignparentright="true" > </ListView> <EditText android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_alignparentright="true" android:layout_alignparenttop="true" android:inputtype="text" android:ems="10" > <requestfocus /> </EditText> <EditText android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_alignparentright="true" android:text="" android:inputtype="text" 54

55 android:ems="10"> </EditText> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentbottom="true" android:layout_alignparentleft="true" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_alignparentright="true" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_alignparentright="true" /> </RelativeLayout> 55

56 activity_graph.xml <RelativeLayout xmlns:android=" xmlns:tools=" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".graphactivity" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentbottom="true" android:layout_alignparentleft="true" android:layout_alignparentright="true" /> <LinearLayout android:layout_width="fill_parent" android:layout_height="250dip" android:orientation="vertical" > </LinearLayout> </RelativeLayout> 56

ANDROID Προγραμματισμός Εφαρμογών

ANDROID Προγραμματισμός Εφαρμογών ANDROID Προγραμματισμός Εφαρμογών Παναγιώτης Κρητιώτης ΑΜ 1607 Περιεχόμενα Εισαγωγή Βασικά Στοιχεία Χαρακτηριστικά Αρχιτεκτονική Εργαλεία Προγραμματισμού Eclipse IDE Android SDK - ADT Plugin Προσομοιωτής

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

Digital Academy. Εισαγωγή στην ανάπτυξη Android Εφαρμογών

Digital Academy. Εισαγωγή στην ανάπτυξη Android Εφαρμογών Digital Academy Εισαγωγή στην ανάπτυξη Android Εφαρμογών Περιεχόμενα ΠΕΡΙΕΧΟΜΕΝΑ... 2 ΕΝΟΤΗΤΑ 1 ΠΡΩΤΗ ΓΝΩΡΙΜΙΑ ΜΕ ΤΟ ANDROID... 4 1.1 ΕΙΣΑΓΩΓΗ... 4 1.2 ΠΗΓΕΣ ΓΝΩΣΗΣ... 4 1.3 ΙΣΤΟΡΙΚΗ ΑΝΑΔΡΟΜΗ... 5 1.4

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

Ανάπτυξη Διεπαφών Χρήστη σε Λειτουργικά Συστήματα Κινητών Συσκευών

Ανάπτυξη Διεπαφών Χρήστη σε Λειτουργικά Συστήματα Κινητών Συσκευών Βιβλιογραφία: Ανάπτυξη Διεπαφών Χρήστη σε Λειτουργικά Συστήματα Κινητών Συσκευών Προγραμματισμός Android Ian Clifton. AndroidTM User Interface Design, Addison-Wesley, 2013 P. Deitel. H. Deitel, A. Deitel.

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

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

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

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

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

ΠΑΡΑΡΤΗΜΑ ΓΡΕΒΕΝΩΝ ΤΜΗΜΑ ΕΠΙΧΕΙΡΗΣΙΑΚΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΡΑΡΤΗΜΑ ΓΡΕΒΕΝΩΝ ΤΜΗΜΑ ΕΠΙΧΕΙΡΗΣΙΑΚΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Θέμα : ΥΛΟΠΟΙΗΣΗ ΞΕΝΟΓΛΩΣΣΗΣ ΕΚΠΑΙΔΕΥΤΙΚΗΣ ΕΦΑΡΜΟΓΗΣ ΣΕ ΠΛΑΤΦΟΡΜΑ ANDROID Όνοματεπώνυμο : Στέκας Ιγνάτιος Επιβλέπων : Σωτήριος Κοντογιάννης Ημερομηνία

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

Επιμέλεια: Μαργαρίτα Ρουγγέρη Επιβλέπων: Γεώργιος Στυλιαράς Πληροφορική Πολυμέσα ΓΤΠ61 4 η Εργασία 2011

Επιμέλεια: Μαργαρίτα Ρουγγέρη Επιβλέπων: Γεώργιος Στυλιαράς Πληροφορική Πολυμέσα ΓΤΠ61 4 η Εργασία 2011 Επιμέλεια: Μαργαρίτα Ρουγγέρη 71953 Επιβλέπων: Γεώργιος Στυλιαράς Πληροφορική Πολυμέσα ΓΤΠ61 4 η Εργασία 2011 Λειτουργικό σύστημα κινητή τηλεφωνία Google Open source Smart phones, tablets, mp3, τηλεοράσεις

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

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. Ανάπτυξη εφαρμογής Android και IOS σε περιβάλλον Flash. ΟΝΟΜΑΤΕΠΩΝΥΜΑ ΣΠΟΥΔΑΣΤΩΝ

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. Ανάπτυξη εφαρμογής Android και IOS σε περιβάλλον Flash. ΟΝΟΜΑΤΕΠΩΝΥΜΑ ΣΠΟΥΔΑΣΤΩΝ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ Τ.Ε.Ι. ΗΠΕΙΡΟΥ ΤΜΗΜΑ ΜΗΧΑΝΙΚΏΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Τ.Ε. ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Ανάπτυξη εφαρμογής Android και IOS σε περιβάλλον Flash. ΟΝΟΜΑΤΕΠΩΝΥΜΑ ΣΠΟΥΔΑΣΤΩΝ Μπουρσινός Ιωάννης A.M.:

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

64.1% 18.8% 5.9% 5.2% 2.7%

64.1% 18.8% 5.9% 5.2% 2.7% Android (Google) 64.1% ios (Apple) 18.8% Symbian 5.9% BlackBerry (RIM) 5.2% Bada, Windows Phone 2.7% droid va lipse IDE σκευές που υποστηρίζουν droid, HTC handsets, msung, LG, Motorola, tables ww.android.com

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

Εφαρμογές Υπολογιστών. Κεφάλαιο 4 Λογισμικό Συστήματος

Εφαρμογές Υπολογιστών. Κεφάλαιο 4 Λογισμικό Συστήματος Λογισμικό Συστήματος Λογισμικό 2 Λογισμικό Συστήματος Τα ειδικά εργαλεία χρησιμοποιούνται για την ανάπτυξη λογισμικού εφαρμογών και την εκτέλεση βοηθητικών εργασιών. Το λειτουργικό σύστημα (operating system)

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

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

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

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

Python και Android. Νίκος Νοδαράκης. 17 Μαΐου 2010

Python και Android. Νίκος Νοδαράκης. 17 Μαΐου 2010 Python και Python και Νίκος Νοδαράκης 17 Μαΐου 2010 Python και Τι είναι το ; Περιγραφή του Ορισµός Το είναι µια στοίβα λογισµικού για ϕορητές συσκευές που περιλαµβάνει ένα λειτουργικό σύστηµα, middleware

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

Κεφάλαιο 3.1: Λειτουργικά Συστήματα. Επιστήμη ΗΥ Κεφ. 3.1 Καραμαούνας Πολύκαρπος

Κεφάλαιο 3.1: Λειτουργικά Συστήματα. Επιστήμη ΗΥ Κεφ. 3.1 Καραμαούνας Πολύκαρπος Κεφάλαιο 3.1: Λειτουργικά Συστήματα 1 3.1.1 Λογισμικό και Υπολογιστικό Σύστημα Ένα σύγχρονο υπολογιστικό σύστημα αποτελείται από: το υλικό: τα ηλεκτρονικά μέρη του υπολογιστή και το λογισμικό: το σύνολο

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

Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές

Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές Λαμπαδαρίδης Αντώνιος el04148@mail.ntua.gr Διπλωματική εργασία στο Εργαστήριο Συστημάτων Βάσεων Γνώσεων και Δεδομένων Επιβλέπων: Καθηγητής Τ. Σελλής Περίληψη

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

Ιστορική Αναδρομή Λειτουργικών Συστημάτων (ΛΣ) Εισαγωγή : ο πυρήνας (kernel) / ο φλοιός (shell) Β ΕΠΑΛ

Ιστορική Αναδρομή Λειτουργικών Συστημάτων (ΛΣ) Εισαγωγή : ο πυρήνας (kernel) / ο φλοιός (shell) Β ΕΠΑΛ Ιστορική Αναδρομή Λειτουργικών Συστημάτων (ΛΣ) Εισαγωγή : ο πυρήνας (kernel) / ο φλοιός (shell) Β ΕΠΑΛ http://leitourgika-systhmata-epal-b.ggia.info/ Σύγχρονο Λειτουργικό Σύστημα - ΛΣ Λειτουργικό Σύστημα:

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

Τεχνολογίες & Εφαρμογές Πληροφορικής Ενότητα 10: Κινητή Τηλεφωνία

Τεχνολογίες & Εφαρμογές Πληροφορικής Ενότητα 10: Κινητή Τηλεφωνία ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Τεχνολογίες & Εφαρμογές Πληροφορικής Ενότητα 10: Κινητή Τηλεφωνία Ανδρέας Βέγλης, Αναπληρωτής Καθηγητής Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

12/5/18. συστημάτων. Το λογισµικό συστηµάτων. Κεφάλαιο 5

12/5/18. συστημάτων. Το λογισµικό συστηµάτων. Κεφάλαιο 5 A. EVANS, K. MARTIN, M. A. POATSY Εισαγωγή στην πληροφορική Θεωρία και πράξη 2 η έκδοση Κεφάλαιο 5 Λογισμικό συστημάτων: Το λειτουργικό σύστημα, τα βοηθητικά προγράμματα και η διαχείριση αρχείων Τα βασικά

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

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο FrontPage 2003 Πρακτικός Οδηγός Χρήσης Το FrontPage είναι ένα πρόγραμμα δημιουργίας ιστοσελίδων και δικτυακών τόπων που επιτρέπει το σχεδιασμό ιστοσελίδων μέσα από γραφικό περιβάλλον αλλά και την ταυτόχρονη

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

Ενότητα 1η. Εισαγωγή στην Πληροφορική

Ενότητα 1η. Εισαγωγή στην Πληροφορική Ενότητα 1η Εισαγωγή στην Πληροφορική 1.1 Τι είναι Πληροφορική Ένας σύντομος ορισμός για το τι είναι πληροφορική είναι ο παρακάτω: όλα εκείνα που χρειάζεται κανείς για να παράγει, να οργανώνει και να διαχειρίζεται

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

Ανάπτυξη διαδικτυακής εφαρμογής σε περιβάλλον κινητών συσκευών με λειτουργικό σύστημα Android

Ανάπτυξη διαδικτυακής εφαρμογής σε περιβάλλον κινητών συσκευών με λειτουργικό σύστημα Android Ανάπτυξη διαδικτυακής εφαρμογής σε περιβάλλον κινητών συσκευών με λειτουργικό σύστημα Android Ιωάννης Γιαννόπουλος, ΑΜ: 0430 Γεώργιος Δούρος, ΑΜ: 0686 Επιβλέπων: Γεώργιος Ασημακόπουλος Σεπτέμβριος 2014

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

ΚΕΦΑΛΑΙΟ 10. Υπηρεσίες και εφαρμογές Διαδικτύου. ΚΕΦΑΛΑΙΟ 10 Υπηρεσίες και εφαρμογές Διαδικτύου. Α Γενικού Λυκείου

ΚΕΦΑΛΑΙΟ 10. Υπηρεσίες και εφαρμογές Διαδικτύου. ΚΕΦΑΛΑΙΟ 10 Υπηρεσίες και εφαρμογές Διαδικτύου. Α Γενικού Λυκείου Α Γενικού Λυκείου 87 Διδακτικές ενότητες 10.1 Υπηρεσίες Διαδικτύου 10.2 Ο παγκόσμιος ιστός, υπηρεσίες και εφαρμογές Διαδικτύου Διδακτικοί στόχοι Σκοπός του κεφαλαίου είναι οι μαθητές να μπορούν να διακρίνουν

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

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ηλεκτρονική Υγεία. Εργαστήριο 4 ο : MATLAB

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ηλεκτρονική Υγεία. Εργαστήριο 4 ο : MATLAB Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Ηλεκτρονική Υγεία Εργαστήριο 4 ο : MATLAB Αν. καθηγητής Αγγελίδης Παντελής e-mail: paggelidis@uowm.gr Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες

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

Λειτουργικά Συστήματα Ι. Καθηγήτρια Παπαδάκη Αναστασία

Λειτουργικά Συστήματα Ι. Καθηγήτρια Παπαδάκη Αναστασία Λειτουργικά Συστήματα Ι Καθηγήτρια Παπαδάκη Αναστασία 2013 1 Ηλεκτρονικός Υπολογιστής αποτελείται: 1. Από Υλικό Hardware (CPUs, RAM, Δίσκοι), & 2. Λογισμικό - Software Και μπορεί να εκτελέσει διάφορες

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

Εισαγωγικές έννοιες. Ιωάννης Γ. Τσούλος 2014

Εισαγωγικές έννοιες. Ιωάννης Γ. Τσούλος 2014 Εισαγωγικές έννοιες Ιωάννης Γ. Τσούλος 2014 Διάγραμμα παρουσιάσεως 1. Κατηγορίες κινητών τηλεφώνων 2. Κατηγορίες έξυπνων κινητών τηλεφώνων 3. Προγραμματισμός κινητών συσκευών 4. Ξεκίνημα με το Eclipse

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

Απαντήστε στις παρακάτω ερωτήσεις πολλαπλής επιλογής (μόνο μία ερώτηση είναι σωστή):

Απαντήστε στις παρακάτω ερωτήσεις πολλαπλής επιλογής (μόνο μία ερώτηση είναι σωστή): Απαντήστε στις παρακάτω ερωτήσεις πολλαπλής επιλογής (μόνο μία ερώτηση είναι σωστή): 1. Ο Παγκόσμιος Ιστός (world wide web): a. Ταυτίζεται με το Internet b. Είναι υπηρεσία διαχείρισης και πρόσβασης σε

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

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

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

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

Smartphones και πολυμέσα

Smartphones και πολυμέσα Smartphones και πολυμέσα Λογοθέτης Σωτήρης ΚΑΘΗΓΗΤΗΣ/ΣΥΜΒΟΥΛΟΣ: ΓΕΩΡΓΙΟΣ ΣΤΥΛΙΑΡΑΣ Θεσσαλονίκη, 1 Νοεμβρίου 2009 Περιεχόμενα Ορισμοί Smartphones - Πολυμέσα Ιστορική Αναδρομή Τελευταίας τεχνολογίας Smartphones

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

Android Studio για Windows

Android Studio για Windows Android Studio για Windows 1. Οδηγίες Εγκατάστασης: 1. Κατεβάστε το Android Studio από εδώ (τελευταία έκδοση 0.4.6, 496 MB): http://developer.android.com/sdk/installing/studio.html 2. Εγκαταστήστε το αρχείο

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

Διπλωματική Εργασία. Μουσικές Εφαρμογές σε Περιβάλλον Κινητών Συσκευών Android με Χαρακτηριστικά Εξατομίκευσης

Διπλωματική Εργασία. Μουσικές Εφαρμογές σε Περιβάλλον Κινητών Συσκευών Android με Χαρακτηριστικά Εξατομίκευσης ΠΜΣ Εφαρμοσμένης Πληροφορικής Πανεπιστήμιο Μακεδονίας Διπλωματική Εργασία Μουσικές Εφαρμογές σε Περιβάλλον Κινητών Συσκευών Android με Χαρακτηριστικά Εξατομίκευσης Ονοματεπώνυμο: Βλάχος Αθανάσιος Επιβλέπων

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

Νεογεωγραφία και Χαρτογραφική Διαδικτυακή Απεικόνιση. Η χρήση Ελεύθερων Γεωγραφικών Δεδομένων και Λογισμικού Ανοιχτού Κώδικα σε Φορητές Συσκευές.

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

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

Οδηγός Χρήσης Microsoft Office365 & OneDrive for Business Πανεπιστημίου Κύπρου

Οδηγός Χρήσης Microsoft Office365 & OneDrive for Business Πανεπιστημίου Κύπρου Οδηγός Χρήσης Microsoft Office365 & OneDrive for Business Πανεπιστημίου Κύπρου Υπηρεσία Πληροφορικών Συστημάτων Τομέας Συστημάτων ΥΠΣ-ΕΔ93 22-10-2015 Περιεχόμενα 1. Office 365... 3 2. Τι περιλαμβάνει το

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

Κινητό τηλέφωνο. Κινητό τηλέφωνο

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

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

Κατασκευή δικτυακής εφαρμογής στην αρχιτεκτονική ios iphone που υλοποιεί ένα παιχνίδι ερωτοαπαντήσεων

Κατασκευή δικτυακής εφαρμογής στην αρχιτεκτονική ios iphone που υλοποιεί ένα παιχνίδι ερωτοαπαντήσεων Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Κατασκευή δικτυακής εφαρμογής στην αρχιτεκτονική ios iphone που υλοποιεί ένα παιχνίδι Παρτώνας Αλέξανδρος Επιβλέπων: Δρ.

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

Εφαρμογή Skype Μαθησιακά Αποτελέσματα

Εφαρμογή Skype Μαθησιακά Αποτελέσματα ΕΦΑΡΜΟΓΗ SKYPE Εφαρμογή Skype Μαθησιακά Αποτελέσματα Κατανόηση της εφαρμογής Skype και της χρησιμότητάς του. Εφαρμογή στην καθημερινότητά μας. Να κάνουμε δωρεάν κλήσεις εσωτερικού και εξωτερικού. Να δεχόμαστε

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

Ανάπτυξη Εφαρμογής Ταξίμετρου σε Android

Ανάπτυξη Εφαρμογής Ταξίμετρου σε Android 2014 Ανάπτυξη Εφαρμογής Ταξίμετρου σε Android Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Μεταπτυχιακό Πρόγραμμα Σπουδών: «Ψηφιακές Επικοινωνίες και Δίκτυα» Ανάπτυξη Εφαρμογής Ταξίμετρου σε πλατφόρμα

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

Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα;

Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα; Εισαγωγή Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα; 1. Σελίδα μαθήματος Εγγραφή Ο κάθε φοιτητής πρέπει να κάνει εγγραφή στη σελίδα του μαθήματος στην πλατφόρμα e-class

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

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

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

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

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 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 στην

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

ΚΕΦΑΛΑΙΟ 6. Περιβάλλοντα Ανάπτυξης Εφαρμογών. ΚΕΦΑΛΑΙΟ 6 Περιβάλλοντα Ανάπτυξης Εφαρμογών. Α Γενικού Λυκείου

ΚΕΦΑΛΑΙΟ 6. Περιβάλλοντα Ανάπτυξης Εφαρμογών. ΚΕΦΑΛΑΙΟ 6 Περιβάλλοντα Ανάπτυξης Εφαρμογών. Α Γενικού Λυκείου 49 Διδακτικές ενότητες 6.1 Γλώσσες και εργαλεία προγραμματισμού 6.2 Σύγχρονα προγραμματιστικά περιβάλλοντα Διδακτικοί στόχοι Σκοπός του κεφαλαίου είναι οι μαθητές να κατανοήσουν την ανάγκη ύπαρξης τόσο

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

Λιβανός Γιώργος Εξάμηνο 2017Β

Λιβανός Γιώργος Εξάμηνο 2017Β Λιβανός Γιώργος Εξάμηνο 2017Β Υπολογιστικό σύστημα Υλικό (hardware) Λογισμικό (Software) Ολοκληρωμένα κυκλώματα, δίσκοι, οθόνη, κλπ. Λογισμικό συστήματος Προγράμματα εφαρμογών Χρειάζονται ένα συντονιστή!!!

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

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. Υλοποίηση εφαρμογής information aggregator για πληροφορίες σχετικές με το τμήμα ΤΠΤ σε πλατφόρμα Apple ios.

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. Υλοποίηση εφαρμογής information aggregator για πληροφορίες σχετικές με το τμήμα ΤΠΤ σε πλατφόρμα Apple ios. ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΛΑΡΙΣΑΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Υλοποίηση εφαρμογής information aggregator για πληροφορίες

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

ΠΡΟΛΟΓΟΣ. Σε ποιους απευθύνεται αυτό το βιβλίο... vi Διάρθρωση του βιβλίου... vi

ΠΡΟΛΟΓΟΣ. Σε ποιους απευθύνεται αυτό το βιβλίο... vi Διάρθρωση του βιβλίου... vi Πίνακας Περιεχομένων ΠΡΟΛΟΓΟΣ V Σε ποιους απευθύνεται αυτό το βιβλίο... vi Διάρθρωση του βιβλίου... vi 1η Ενότητα: Κινητός ιστός... vii 2η Ενότητα: Κινητές εφαρμογές στην πλατφόρμα Android... vii 3η Ενότητα:

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

Εισαγωγή στην Ανάπτυξη Εφαρμογών Android

Εισαγωγή στην Ανάπτυξη Εφαρμογών Android Εισαγωγή στην Ανάπτυξη Εφαρμογών Android Σημειώσεις σεμιναρίου Επιμέλεια: Βασίλης Κόλιας Ενότητα 2 Εισαγωγή στις εφαρμογές Graphical User Interfaces Πίνακας Περιεχομένων 4 Εισαγωγή στις εφαρμογές... 2

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

Οδηγός Χρήσης Microsoft Office365 & OneDrive for Business Πανεπιστημίου Κύπρου

Οδηγός Χρήσης Microsoft Office365 & OneDrive for Business Πανεπιστημίου Κύπρου Οδηγός Χρήσης Microsoft Office365 & OneDrive for Business Πανεπιστημίου Κύπρου Τομέας Συστημάτων 16-12-2016 Περιεχόμενα 1. Office 365... 3 2. Τι περιλαμβάνει το Office 365 για το ΠΚ... 3 3. Είσοδος στο

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

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

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

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

ΨΗΦΙΑΚΟΣ ΓΡΑΜΜΑΤΙΣΜΟΣ

ΨΗΦΙΑΚΟΣ ΓΡΑΜΜΑΤΙΣΜΟΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ ΨΗΦΙΑΚΟΣ ΓΡΑΜΜΑΤΙΣΜΟΣ Ενότητα 2: Software ΠΑΝΑΓΙΩΤΗΣ ΠΑΝΑΓΙΩΤΙΔΗΣ ΤΜΗΜΑ ΓΑΛΛΙΚΗΣ ΓΛΩΣΣΑΣ ΚΑΙ ΦΙΛΟΛΟΓΙΑΣ Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΝΑΠΤΥΞΗ ΚΑΙ ΣΧΕΔΙΑΣΗ ΛΟΓΙΣΜΙΚΟΥ Η γλώσσα προγραμματισμού C ΕΡΓΑΣΤΗΡΙΟ 2: Εκφράσεις, πίνακες και βρόχοι 14 Απριλίου 2016 Το σημερινό εργαστήριο

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

2. Αλγόριθμοι, δομές δεδομένων και πολυπλοκότητα

2. Αλγόριθμοι, δομές δεδομένων και πολυπλοκότητα 1. Εισαγωγή 1.1 O Υπολογιστής ως εργαλείο μηχανικού 1.2 Η Επιστήμη των υπολογιστών 1.3 Ιστορικό Σημείωμα 1.4 Ο υπολογιστής μηχανή επεξεργασίας ψηφιακής πληροφορίας 1.5 Ψηφιοποίηση πληροφορίας 1.5.1 ψηφιοποίηση

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

Διαφορές single-processor αρχιτεκτονικών και SoCs

Διαφορές single-processor αρχιτεκτονικών και SoCs 13.1 Τα συστήματα και η επικοινωνία μεταξύ τους γίνονται όλο και περισσότερο πολύπλοκα. Δεν μπορούν να περιγραφούνε επαρκώς στο επίπεδο RTL καθώς αυτή η διαδικασία γίνεται πλέον αρκετά χρονοβόρα. Για αυτό

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

Ερωτήσεις- Απαντήσεις Πολυμέσα Απο το Βιβλίο Εφαρμογές Η/Υ Α,Β,Γ Λυκείου

Ερωτήσεις- Απαντήσεις Πολυμέσα Απο το Βιβλίο Εφαρμογές Η/Υ Α,Β,Γ Λυκείου Ερωτήσεις- Απαντήσεις Πολυμέσα Απο το Βιβλίο Εφαρμογές Η/Υ Α,Β,Γ Λυκείου 1. Τι ονομάζουμε κόμβο και τι σύνδεσμο σε μια μη γραμμικά διαρθρωμένη ύλη; Με την έννοια σύνδεσμος (link) σε μια μη γραμμικά διαρθρωμένη

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

Κοιτάζοντας Πιο Λεπτομερώς. Ανδρεάκης Σωτήρης Καραμολέγκος Χρήστος Καλαματιανός Βασίλης

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

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

APP INVENTOR ΟΔΗΓΟΣ 8 Οκτωβρίου 2018

APP INVENTOR ΟΔΗΓΟΣ 8 Οκτωβρίου 2018 Πώς φτιάχνω Εφαρμογές για Android με το App Inventor Έχετε μια ιδέα για μια mobile εφαρμογή, αλλά δεν ξέρετε πώς να την υλοποιήσετε; Το App Inventor είναι ένα χρήσιμο εργαλείο για κάθε αρχάριο προγραμματιστή

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

"Ανάπτυξη Location Based εφαρμογής με τεχνολογίες GPS, HTML5 και Android"

Ανάπτυξη Location Based εφαρμογής με τεχνολογίες GPS, HTML5 και Android ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΡΗΤΗΣ ΣΧΟΛΗΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΠΟΛΥΜΕΣΩΝ Εργασία στο μάθημα "ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ" με θέμα "Ανάπτυξη Location Based εφαρμογής με τεχνολογίες

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

Αντικειμενοστρεφής Προγραμματισμός

Αντικειμενοστρεφής Προγραμματισμός ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Αντικειμενοστρεφής Προγραμματισμός Ενότητα 1: Εισαγωγή Γρηγόρης Τσουμάκας, Επικ. Καθηγητής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

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

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Δυναμική προσωποποιημένη ενημέρωση προσφορών Super Markets στη Θεσσαλονίκη

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Δυναμική προσωποποιημένη ενημέρωση προσφορών Super Markets στη Θεσσαλονίκη ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Δυναμική προσωποποιημένη ενημέρωση προσφορών Super Markets στη Θεσσαλονίκη Παπαδόπουλου Κυριάκου Αρ. Μητρώου: 093507 Επιβλέπων καθηγητής: Ηλιούδης Χρήστος Εισαγωγή - Σκοπός Εργασίας Καινοτόμες

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

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

Με την ολοκλήρωση της διαδικασίας μπορούμε αν θέλουμε να επιλέξουμε να ανοίξει ή όχι η εφαρμογή που έχει εγκατασταθεί. Πώς φτιάχνω Εφαρμογές για Android με το App Inventor Τι χρειάζεται για να ξεκινήσουμε; Η λειτουργία του App Inventor είναι κυρίως διαδικτυακή. Για να ξεκινήσει κανείς δηλαδή δεν απαιτείται ούτε κάποιο

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

Λογισμικό - Προγράμματα

Λογισμικό - Προγράμματα Λογισμικό - Προγράμματα Πρόγραμμα είναι ένα σύνολο εντολών, βάση των οποίων ο υπολογιστής εκτελεί μια συγκεκριμένη εργασία Λογισμικό (Software) Το σύνολο των προγραμμάτων Προγράμματα Προγράμματα συστήματος

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

Χαράλαμπος Καραγιαννίδης

Χαράλαμπος Καραγιαννίδης Διάλεξη 4 Λειτουργικό Σύστημα & Λογισμικό Εφαρμογών H/Y Εισαγωγή στις Εφαρμογές ΤΠΕ Χαράλαμπος Καραγιαννίδης karagian@uth.gr Διάλεξη 4: Λειτουργικό Σύστημα & Εφαρμογές 1/41 20/10/2015 Σύνοψη Μαθήματος

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

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

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

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

Βιοϊατρική τεχνολογία

Βιοϊατρική τεχνολογία Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Βιοϊατρική τεχνολογία Ενότητα 5: Οξύμετρο (OxyPro Project) Αν. καθηγητής Αγγελίδης Παντελής e-mail: paggelidis@uowm.gr ΕΕΔΙΠ Μπέλλου Σοφία e-mail: sbellou@uowm.gr

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

Το ηλεκτρονικό ταχυδρομείο: Aφορά στην αποστολή και λήψη μηνυμάτων με συγκεκριμένη δομή και με συγκεκριμένα πρωτόκολλα. Ο αποστολέας και ο παραλήπτης

Το ηλεκτρονικό ταχυδρομείο: Aφορά στην αποστολή και λήψη μηνυμάτων με συγκεκριμένη δομή και με συγκεκριμένα πρωτόκολλα. Ο αποστολέας και ο παραλήπτης ΚΕΦΑΛΑΙΟ 10 Το ηλεκτρονικό ταχυδρομείο: Aφορά στην αποστολή και λήψη μηνυμάτων με συγκεκριμένη δομή και με συγκεκριμένα πρωτόκολλα. Ο αποστολέας και ο παραλήπτης αναγνωρίζεται από μία μοναδική διεύθυνση

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

Εργασία Τεχνολογίας Α Γυμνασίου: ΕΠΙΚΟΙΝΩΝΙΑ. Αβανίδης Βασίλης

Εργασία Τεχνολογίας Α Γυμνασίου: ΕΠΙΚΟΙΝΩΝΙΑ. Αβανίδης Βασίλης Εργασία Τεχνολογίας Α Γυμνασίου: ΕΠΙΚΟΙΝΩΝΙΑ Αβανίδης Βασίλης Η ΕΝΝΟΙΑ ΤΗΣ ΕΠΙΚΟΙΝΩΝΙΑΣ Premium ΙΣΤΟΡΙΚΑ ΣΤΟΙΧΕΙΑ Επικοινωνία είναι η διαδικασία της ανταλλαγής πληροφορίας μεταξύ δύο ή περισσοτέρων μερών

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

Η Πράξη συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (ΕΤΠΑ) κατά 80% και από εθνικούς πόρους της Ελλάδας και της Κύπρου κατά 20% Μ Ε Λ Ε Τ Η

Η Πράξη συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (ΕΤΠΑ) κατά 80% και από εθνικούς πόρους της Ελλάδας και της Κύπρου κατά 20% Μ Ε Λ Ε Τ Η ΝΟΜΟΣ ΡΕΘΥΜΝΟΥ ΤΕΧΝΙΚΗ ΥΠΗΡΕΣΙΑ Μ Ε Λ Ε Τ Η ΠΡΟΜΗΘΕΙΑΣ ΗΛΕΚΤΡΟΝΙΚΟΥ ΕΞΟΠΛΙΣΜΟΥ ΓΙΑ ΤΗΝ ΥΠΟΣΤΗΡΙΞΗ ΤΟΥ ΕΡΓΟΥ «ΠΡΟΣΒΑΣΙΜΕΣ ΠΟΛΕΙΣ» ΠΡΟΫΠΟΛΟΓΙΣΜΟΣ : 1.200,00 ΕΥΡΩ ΝΟΜΟΣ ΡΕΘΥΜΝΗΣ Δ/ΝΣΗ ΤΕΧΝΙΚΩΝ ΥΠΗΡΕΣΙΩΝ ΕΡΓΟ

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

Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής

Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής Πρόγραμμα Μεταπτυχιακών Σπουδών «Πληροφορική» Μεταπτυχιακή Διατριβή Τίτλος Διατριβής Ηλεκτρονικός τουριστικός Οδηγός σε έκδοση για έξυπνα κινητά τηλέφωνα Ονοματεπώνυμο

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

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο Το περιβάλλον εργασίας Ανοίγοντας την Ελληνική Έκδοση του FrontPage, για πρώτη φορά, η εικόνα που θα συναντήσουμε είναι αυτή της Εικόνας 1 με τα Μενού Εντολών και τη Γραμμή Εργαλείων, στο πάνω μέρος της

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

Κεφάλαιο 6 ο. Διαχείριση στοιχείων λογισμικού

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

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

DreamSpark. Τώρα λοιπόν που μάθατε περι τίνος πρόκειται, ας δούμε πώς μπορεί κάποιος να κατεβάσει λογισμικό από το site του DreamSpark.

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

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

ΜΑΘΗΜΑ 3 ΛΟΓΙΣΜΙΚΟ (SOFTWARE)

ΜΑΘΗΜΑ 3 ΛΟΓΙΣΜΙΚΟ (SOFTWARE) ΜΑΘΗΜΑ 3 ΛΟΓΙΣΜΙΚΟ (SOFTWARE) ΣΤΟΧΟΙ: 1. Λογισμικό 2. Λογισμικό Λειτουργικού Συστήματος 3. Προσαρμοστικό Γραφικών Χρήστη 4. Λογισμικών Εφαρμογών 5. Διαφορά Μεταξύ Λογισμικού Λειτουργικού Συστήματος Και

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

Δίκτυα κινητής τηλεφωνίας (1G)

Δίκτυα κινητής τηλεφωνίας (1G) Δίκτυα κινητής τηλεφωνίας (1G) *Generation = γενιά Το πρώτο αυτοματοποιημένο δίκτυο κινητής τηλεφωνίας λειτούργησε στις αρχές της δεκαετίας του '80 στη Σκανδιναβία. Μέχρι τα τέλη της δεκαετίας του '80

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

Διαχείριση Επιλογών Διαμόρφωσης

Διαχείριση Επιλογών Διαμόρφωσης 1 Περίληψη Το συγκεκριμένο εγχειρίδιο δημιουργήθηκε για να βοηθήσει την κατανόηση της διαδικασίας διαχείρισης επιλογών διαμόρφωσης εγγραφών Εσόδων Εξόδων & Άρθρων Γενικής Λογιστικής στην εφαρμογή της σειράς

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

1. ΑΡΧΕΣ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

1. ΑΡΧΕΣ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ 12 Σχεδιασμός Ανάπτυξη Λειτουργία Π.Σ. 1. ΑΡΧΕΣ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ 1.1 Δυνατότητες Λειτουργικών Συστημάτων 1.1.1 Εισαγωγή Ο όρος Λειτουργικό Σύστημα (Operating System), εκφράζει το σύνολο των προγραμμάτων

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

ΑΝΑΠΤΥΞΗ ANDROID ΕΦΑΡΜΟΓΗΣ ΓΙΑ ΤΗΝ ΑΞΙΟΠΟΙΗΣΗ ΔΕΔΟΜΕΝΩΝ ΑΠΟ ΕΝΣΩΜΑΤΩΜΕΝΟΥΣ ΑΙΣΘΗΤΗΡΕΣ ΚΙΝΗΤΩΝ ΣΥΣΚΕΥΩΝ. Ευάγγελος Στεφανάκης (ΑΜ: Τ-02341)

ΑΝΑΠΤΥΞΗ ANDROID ΕΦΑΡΜΟΓΗΣ ΓΙΑ ΤΗΝ ΑΞΙΟΠΟΙΗΣΗ ΔΕΔΟΜΕΝΩΝ ΑΠΟ ΕΝΣΩΜΑΤΩΜΕΝΟΥΣ ΑΙΣΘΗΤΗΡΕΣ ΚΙΝΗΤΩΝ ΣΥΣΚΕΥΩΝ. Ευάγγελος Στεφανάκης (ΑΜ: Τ-02341) ΑΤΕΙ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ Τμήμα Μηχανικών Πληροφορικής ΤΕ ΑΝΑΠΤΥΞΗ ANDROID ΕΦΑΡΜΟΓΗΣ ΓΙΑ ΤΗΝ ΑΞΙΟΠΟΙΗΣΗ ΔΕΔΟΜΕΝΩΝ ΑΠΟ ΕΝΣΩΜΑΤΩΜΕΝΟΥΣ ΑΙΣΘΗΤΗΡΕΣ ΚΙΝΗΤΩΝ ΣΥΣΚΕΥΩΝ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Ευάγγελος

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

1. Εισαγωγή στο Sage.

1. Εισαγωγή στο Sage. 1. Εισαγωγή στο Sage. 1.1 Το μαθηματικό λογισμικό Sage Το Sage (System for Algebra and Geometry Experimentation) είναι ένα ελεύθερο (δωρεάν) λογισμικό μαθηματικών ανοιχτού κώδικα που υποστηρίζει αριθμητικούς

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

Πρόγραμμα Πιστοποίησης Γνώσεων και Δεξιοτήτων H/Y ΕΝΟΤΗΤΑ 1: «ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ»

Πρόγραμμα Πιστοποίησης Γνώσεων και Δεξιοτήτων H/Y ΕΝΟΤΗΤΑ 1: «ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ» Πρόγραμμα Πιστοποίησης Γνώσεων και Δεξιοτήτων H/Y ΕΝΟΤΗΤΑ 1: «ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ» Μάθημα 0.2: Το Λογισμικό (Software) Δίκτυα υπολογιστών Αντώνης Χατζηνούσκας 2 ΠΕΡΙΕΧΟΜΕΝΑ Α. Σκοπός του Μαθήματος

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

Κεφάλαιο 2: Λογισμικό (Software) Εφαρμογές Πληροφορικής Κεφ. 2 Καραμαούνας Πολύκαρπος

Κεφάλαιο 2: Λογισμικό (Software) Εφαρμογές Πληροφορικής Κεφ. 2 Καραμαούνας Πολύκαρπος Κεφάλαιο 2: Λογισμικό (Software) 1 2.1 Λογισμικό Συστήματος και Λογισμικό Εφαρμογών Λογισμικό Συστήματος: διαχειρίζεται το υλικό του υπολογιστή και αποτελεί τη βάση πάνω στην οποία αναπτύσσεται και εκτελείται

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

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

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

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

ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ. Ανάλυση, Σχεδιασμός και Υλοποίηση μιας εφαρμογής Movie Quiz πολλαπλών παικτών στο λειτουργικό σύστημα Android

ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ. Ανάλυση, Σχεδιασμός και Υλοποίηση μιας εφαρμογής Movie Quiz πολλαπλών παικτών στο λειτουργικό σύστημα Android ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ Ανάλυση, Σχεδιασμός και Υλοποίηση μιας εφαρμογής Movie Quiz πολλαπλών παικτών στο λειτουργικό σύστημα Android Analysis,Design and Implementation of a Movie Quiz game in Android Θοδωρής

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

ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΧΡΗΣΤΗ. Ηλεκτρονική Υποβολή Α.Π.Δ.

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

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

Κατανεμημένα Συστήματα

Κατανεμημένα Συστήματα Κατανεμημένα Συστήματα Android Grid Application Θωμάς Αντώνιος (3050073) Καραβέλλας Θεμιστοκλής (3050055) 1. Εισαγωγή Το Android αποτελεί ένα λειτουργικό σύστημα για κινητές συσκευές. Το λειτουργικό αυτό

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

Εισαγωγή στην Αριθμητική Ανάλυση

Εισαγωγή στην Αριθμητική Ανάλυση Εισαγωγή στην Αριθμητική Ανάλυση Εισαγωγή στη MATLAB ΔΙΔΑΣΚΩΝ: ΓΕΩΡΓΙΟΣ ΑΚΡΙΒΗΣ ΒΟΗΘΟΙ: ΔΗΜΗΤΡΙΑΔΗΣ ΣΩΚΡΑΤΗΣ, ΣΚΟΡΔΑ ΕΛΕΝΗ E-MAIL: SDIMITRIADIS@CS.UOI.GR, ESKORDA@CS.UOI.GR Τι είναι Matlab Είναι ένα περιβάλλον

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

Χαρακτηριστικά ιστοσελίδας

Χαρακτηριστικά ιστοσελίδας Χαρακτηριστικά ιστοσελίδας COSMOS4U Web Site Pro Χαρακτηριστικά Επιπλέον Δυνατότητες Προφίλ Εταιρίας Παρουσίαση της εταιρίας σας με φωτογραφικό υλικό και κείμενα. Τήρηση προδιαγραφών και χρήση λέξεων κλειδιά

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

Κεφάλαιο 6 Λογισμικό Εφαρμογών. Εφαρμογές Πληροφορικής Κεφ.6 Καραμαούνας Πολύκαρπος 1

Κεφάλαιο 6 Λογισμικό Εφαρμογών. Εφαρμογές Πληροφορικής Κεφ.6 Καραμαούνας Πολύκαρπος 1 Κεφάλαιο 6 Λογισμικό Εφαρμογών Καραμαούνας Πολύκαρπος 1 Λογισμικό Εφαρμογών (application software) Είναι όλα τα προγράμματα που μετατρέπουν τον ΗΥ σε εξειδικευμένο μηχάνημα για συκεκριμένες εργασίες. Περιέχει

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

Σύστημα Διαχείρισης, Ελέγχου και Παρακολούθησης Ασθενοφόρων και Περιστατικών

Σύστημα Διαχείρισης, Ελέγχου και Παρακολούθησης Ασθενοφόρων και Περιστατικών Σύστημα Διαχείρισης, Ελέγχου και Παρακολούθησης Ασθενοφόρων και Περιστατικών Η LINK Technologies Α.Ε. ιδρύθηκε το 2002 με στόχο να καταστεί πυρήνας καινοτομικών λύσεων Τηλεματικής αναβαθμίζοντας καθημερινά

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

Προγραμματισμός Διαχείρισης Συστημάτων Ι

Προγραμματισμός Διαχείρισης Συστημάτων Ι Προγραμματισμός Διαχείρισης Συστημάτων Ι Μάθημα 7ο X Window System Μιχαηλίδης Παναγιώτης Tι είναι παραθυρικό σύστημα; Ένα παραθυρικό σύστημα (window system) είναι μια γραφική διεπαφή χρήστη (Graphical

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

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

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

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

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

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

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

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών 44 Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών Διδακτικοί στόχοι Σκοπός του κεφαλαίου είναι οι μαθητές να κατανοήσουν τα βήματα που ακολουθούνται κατά την ανάπτυξη μιας εφαρμογής.

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

Σύγχρονες τάσεις στα ασύρματα ευρυζωνικά δίκτυα και δυνατότητες αξιοποίησής τους στην ελληνική περιφέρεια

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

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

Προγραμματισμός Διαδικτύου

Προγραμματισμός Διαδικτύου Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Προγραμματισμός Διαδικτύου Δρ. Μηνάς Δασυγένης mdasygenis@uowm.gr Τμήμα της παρουσίασης δημιουργήθηκε από τον κ. Παναγιώτη

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

ΔΙΑΔΙΚΑΣΙA ΜΕΤΑΦΟΡΑΣ ΥΛΙΚΟΥ ΜΑΘΗΜΑΤΟΣ ΑΠΟ BLACKBOARD VISTA ΣΕ OPEN ECLASS

ΔΙΑΔΙΚΑΣΙA ΜΕΤΑΦΟΡΑΣ ΥΛΙΚΟΥ ΜΑΘΗΜΑΤΟΣ ΑΠΟ BLACKBOARD VISTA ΣΕ OPEN ECLASS ΔΙΑΔΙΚΑΣΙA ΜΕΤΑΦΟΡΑΣ ΥΛΙΚΟΥ ΜΑΘΗΜΑΤΟΣ ΑΠΟ BLACKBOARD VISTA ΣΕ OPEN ECLASS Η διαδικασία μεταφοράς του υλικού ενός μαθήματος από την πλατφόρμα Blackboard Vista στην πλατφόρμα Open eclass σε βήματα είναι

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

PRISMA Win POS Sync Merge Replication

PRISMA Win POS Sync Merge Replication ΤΜΗΜΑ ΥΠΟΣΤΗΡΙΞΗΣ Οδηγός Ρυθμίσεων Συγχρονισμού PRISMA Win POS Sync Merge Replication Η διαδικασία του συγχρονισμού γίνεται από τον Η/Υ που έχει το Back Office. Βασική προϋπόθεση για να ενεργοποιηθεί ο

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

Οδηγίες για προσθήκη Web Frames Tools to the Quick Access Bar σε μεταγενέστερη έκδοση του Word

Οδηγίες για προσθήκη Web Frames Tools to the Quick Access Bar σε μεταγενέστερη έκδοση του Word Οδηγίες για προσθήκη Web Frames Tools to the Quick Access Bar σε μεταγενέστερη έκδοση του Word Επειδή οι μεταγενέστερες εκδόσεις του Word δεν περιλαμβάνουν στο μενού τη δυνατότητα δημιουργίας πολλαπλών

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

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

ΚΕΦΑΛΑΙΟ 2 - ΛΟΓΙΣΜΙΚΟ ΚΕΦΑΛΑΙΟ 2 - ΛΟΓΙΣΜΙΚΟ ΕΡΩΤΗΣΗ 1: Σε ποιες μεγάλες κατηγορίες μπορούμε να χωρίσουμε το Λογισμικό. Μπορούμε να χωρίσουμε το Λογισμικό στις παρακάτω μεγάλες κατηγορίες: στο Λογισμικό Συστήματος (System Software),

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

3 Αλληλεπίδραση Αντικειμένων

3 Αλληλεπίδραση Αντικειμένων Αφαίρεση και Αρθρωσιμότητα 3 Αλληλεπίδραση Αντικειμένων Πώς συνεργάζονται τα αντικείμενα που δημιουργούμε Αφαίρεση (abstraction) είναι η δυνατότητα να αγνοούμε τις λεπτομέρειες και να εστιάζουμε την προσοχή

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

Ένα διαδικτυακό εργαλείο δημιουργίας παρουσιάσεων

Ένα διαδικτυακό εργαλείο δημιουργίας παρουσιάσεων Ένα διαδικτυακό εργαλείο δημιουργίας παρουσιάσεων Περιεχόμενα 1. Περιγραφή 2. Οδηγίες χρήσης 2.1 Δημιουργία λογαριασμού 2.2 Περιβάλλον εργασίας 2.3 Βασικές λειτουργίες 2.3.1 Εισαγωγή (Insert) 2.3.2 Πλαίσιο

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

Android Studio για Linux

Android Studio για Linux Android Studio για Linux 1. Οδηγίες Εγκατάστασης: 1. Κατεβάστε το Android Studio από εδώ (τελευταία έκδοση 0.4.6, 496 MB): http://developer.android.com/sdk/installing/studio.html 2. Επιλέξτε το πακέτο

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

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

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

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

Περιεχόμενα. Μέρος 1: Βασικές έννοιες Πληροφορικής και επικοινωνιών Μέρος 2: Χρήση υπολογιστή και διαχείριση αρχείων Πρόλογος...

Περιεχόμενα. Μέρος 1: Βασικές έννοιες Πληροφορικής και επικοινωνιών Μέρος 2: Χρήση υπολογιστή και διαχείριση αρχείων Πρόλογος... Περιεχόμενα Πρόλογος...11 Μέρος 1: Βασικές έννοιες Πληροφορικής και επικοινωνιών... 13 1.1 Εισαγωγή στους υπολογιστές... 15 1.2 Μονάδες μέτρησης... 27 1.3 Οι βασικές λειτουργίες ενός ηλεκτρονικού υπολογιστή...

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

economy Δρ. Πάνος Φιτσιλής, Καθηγητής ΤΕΙ Θεσσαλίας fitsilis@teilar.gr Πρόγραμμα Μεταπτυχιακών Σπουδών Διοίκηση και Διαχείριση Έργων

economy Δρ. Πάνος Φιτσιλής, Καθηγητής ΤΕΙ Θεσσαλίας fitsilis@teilar.gr Πρόγραμμα Μεταπτυχιακών Σπουδών Διοίκηση και Διαχείριση Έργων economy Δρ. Πάνος Φιτσιλής, Καθηγητής ΤΕΙ Θεσσαλίας fitsilis@teilar.gr 1 Διοίκηση και Διαχείριση Έργων Τι είναι τα apps H λέξη app είναι μια λέξη που έχει μπει στο λεξικό όλων μας Λογισμικό εφαρμογή Λειτουργεί

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

Τεχνολογία Ηλεκτρονικού Εμπορίου

Τεχνολογία Ηλεκτρονικού Εμπορίου Τεχνολογία Ηλεκτρονικού Εμπορίου 4η διάλεξη: Mobile e Commerce e & Devices Smartphones 2011 Χρήστος Γεωργιάδης Ένα smartphone είναι ένα κινητό τηλέφωνο που προσφέρει προηγμένη υπολογιστική ικανότητα και

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

Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο

Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο Πρωτόκολλα και Αρχιτεκτονική Δικτύου Για να ανταλλάξουν δεδομένα δύο σταθμοί, εκτός από την ύπαρξη διαδρομής μεταξύ

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