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

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

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

Transcript

1 ΤΕΙ ΚΑΒΑΛΑΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Τίτλος: Σύστηµα κράτησης θέσεων θεάτρου Αγγλικός τίτλος: Theatre booking-seat system ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ των Αντωνούλα Παναγιώτη Α.Μ Αντάρα Λάµπρου Α.Μ Επιβλέπων καθηγητής: ρ. Μωυσιάδης Ελευθέριος.

2 Πίνακας περιεχοµένων Πίνακας Περιεχοµένων Πίνακας Εικόνων Ευχαριστίες Περίληψη Abstract ΕΙΣΑΓΩΓΗ σελ2 σελ6 σελ10 σελ11 σελ12 σελ13 ΚΕΦΑΛΑΙΟ 1 ΘΕΩΡΗΤΙΚΟ ΜΕΡΟΣ ΤΗΣ ΕΦΑΡΜΟΓΗΣ ΤΟΥ ΚΙΝΗΜΑΤΟΓΡΑΦΟ 1.1Τεχνολογίες που χρησιµοποιήθηκαν κατά τη δηµιουργία του site. σελ Η γλώσσα προγραµµατισµού php. σελ Ιστορικά - Πως δηµιουργήθηκε η γλώσσα προγραµµατισµού php και πως λειτουργεί σήµερα; σελ Ορισµός της γλώσσας προγραµµατισµού php και παράδειγµα της; σελ Πλεονεκτήµατα της php; σελ Tι είναι το phpmyadmin; σελ υνατότητες του phpmyadmin. σελ Τι είναι η MySQL; σελ Πλεονεκτήµατα της MySQL. σελ Τι είναι η τεχνολογία html5; σελ Τι προσφέρει η τεχνολογία html5; σελ Ποια είναι τα πλεονεκτήµατα και τα µειονεκτήµατα της τεχνολογίας html5; σελ Τι είναι η τεχνολογία ajax και ποια η χρησιµότητα της; σελ Πως λειτουργεί η τεχνολογία ajax; σελ Πλεονεκτήµατα και µειονεκτήµατα της τεχνολογίας ajax; σελ Τεχνολογίες που χρησιµοποιεί η τεχνολογία ajax; σελ Τι είναι ο Web Host; σελ Τι είναι το Web Hosting Φιλοξενεία ιστοσελίδων; σελ Τι είναι ο Server; σελ Πως πρέπει να διαλέξετε το κατάλληλο πακέτο Web Hosting; σελ Τι είναι ο Server, Web Server και Web Client; σελ Τι είναι ο Τοπικός Server Apache; σελ25 ~ 2 ~

3 ΚΕΦΑΛΑΙΟ 2 ΤΟ ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ ANDROID 2.1 Τι είναι το Android; σελ Εφαρµογές Android σελ Ιστορικό Ενηµερώσεων σελ Android 1.5 Cupcake σελ Android 1.6 Donut σελ Android 2.0/2.1 Éclair σελ Android 2.2 Froyo σελ Android 2.3 Gingerbread σελ Android 3.0 Honeycomb σελ Android 4.0 Ice Cream Sandwich σελ Android 4.1 Jelly Bean σελ Android 4.4 Kitkat σελ Αρχιτεκτονική του Android σελ Πυρήνας Linux (Linux Kernel) σελ Βιβλιοθήκες σελ Η εικονική µηχανή Dalvik σελ Χρόνος Εκτέλεσης Εφαρµογής (Android Runtime) σελ Πλαίσιο Εφαρµογής (Application Framework) σελ Στο εσωτερικό µιας εφαρµογής του Android σελ Το αρχείο AndroidManifest.xml σελ Οι φάκελοι src & res σελ Οι υπόλοιποι φάκελοι του project σελ οµικά Μέρη µιας Εφαρµογής σελ Ασφάλεια στο Android σελ41 ΚΕΦΑΛΑΙΟ 3 ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ 3.1 Βάσεις εδοµένων σελ Τι είναι η βάση δεδοµένων σελ Σύστηµα ιαχείρισης Βάσεων εδοµένων σελ Χαρακτηριστικά της Προσέγγισης Βάσης εδοµένων σελ44 ΚΕΦΑΛΑΙΟ 4 ΠΡΟΓΡΑΜΜΑΤΑ ΠΟΥ ΧΡΗΣΙΜΟΠΟΙΗΘΗΚΑΝ ΓΙΑ ΤΗΝ ΒΑΣΗ Ε ΟΜΕΝΩΝ ΚΑΙ ΤΗΝ ΗΜΙΟΥΡΓΙΑ ΤΗΣ ΕΦΑΡΜΟΓΗΣ ΤΟΥ ΚΙΝΗΜΑΤΟΓΡΑΦΟΥ 4.1 Τι είναι ο XAMPP; σελ Αρχιτεκτονική του XAMPP; σελ Απαιτήσεις και χαρακτηριστικά του XAMPP. σελ46 ~ 3 ~

4 4.1.3 Εγκατάσταση του XAMPP. σελ Εγκατάσταση του NOTEPAD++. σελ52 ΚΕΦΑΛΑΙΟ 5 ΠΡΟΓΡΑΜΜΑΤΑ ΠΟΥ ΧΡΗΣΙΜΟΠΟΙΗΘΗΚΑΝ ΓΙΑ ΤΗΝ ANDROID ΕΦΑΡΜΟΓΗ 5.1 Μια Android application µε την χρήση των SDK και Eclipse σελ Προετοιµασία σελ Εγκατάσταση του Eclipse IDE σελ Εγκατάσταση του ADT plugin για το Eclipse σελ Εγκατάσταση του Android SDK σελ ηµιουργία Android-εφαρµογής5.4 AndroidScreencast Πρόγραµµα για παρουσίαση της πτύχιακης σε υπολογιστή. σελ AndroidScreencast Πρόγραµµα για παρουσίαση της πτύχιακης σε υπολογιστή. σελ63 ΚΕΦΑΛΑΙΟ 6 Η ΒΑΣΗ ΤΗΣ ΕΦΑΡΜΟΓΗΣ 6.1 Η δηµιουργία της βάσης σελ65 ΚΕΦΑΛΑΙΟ 7 Η ΕΦΑΡΜΟΓΗ ΤΗΣ ΙΣΤΟΣΕΛΙ ΑΣ 7.1 Συσχέτιση βάσης δεδοµένων µε την ιστοσελίδα σελ Εισαγωγή στην σελίδα του Admin σελ Οθόνη επιλογής ταινίας-ηµεροµηνίας σελ Οθόνη διαχείρισης θέσεων σελ Γραφικό περιβάλλον σελ Ανανέωση Βάσης στον πίνακα Customer σελ Αποστολή σελ80 ΚΕΦΑΛΑΙΟ 8 TBS SYSTEM ANDROID APP 8.1 Εγκατάσταση του TBS-SYSTEM σελ Εκτέλεση και οθόνη εισαγωγής σελ Κεντρικό µενού-επιλογή ταινίας και ηµεροµηνίας σελ Πανοραµική εικόνα της κινηµατογραφικής αίθουσας-επιλογή θέσης σελ Φόρµα συµπλήρωσης στοιχείων σελ Σελίδα επιβεβαίωσης-confirm σελ97 ΚΕΦΑΛΑΙΟ 9 ΑΝΑΛΥΣΗ ΑΠΑΙΤΗΣΕΩΝ σελ102 ~ 4 ~

5 ΚΕΦΑΛΑΙΟ 10 ΕΠΙΛΥΣΗ ΠΡΟΒΛΗΜΑΤΩΝ 10.1 Μη φόρτωση των Java στοιχείων από την βάση δεδοµένων στην Android εφαρµογη. σελ Σε µεροικές android συσκεύες παρατηρήθηκε απρόσµενος τερµατισµός κρασάρισµα της εφαρµογής. σελ Πρόβληµα κατά την µεταφορά στον server όσο αναφορά την ιστιοσελίδα. σελ Πρόβληµα µε την µεταφορά στον Server όσον αφορά το sendmail σελ104 ΚΕΦΑΛΑΙΟ 11 ΕΠΙΛΟΓΟΣ σελ107 Βιβλιογραφία σελ108 ~ 5 ~

6 Πίνακας εικόνων : Εικόνα 1: Android 1.5 Cupcake Logo Εικόνα 2: Android 1.6 Donut Logo Εικόνα 3: Android 2.0/2.1 Eclair Logo σελ28 σελ29 σελ29 Εικόνα 4: Android 2.2 Froyo Logo σελ 30 Εικόνα 5: Android 2.3 Gingerbread Logo σελ 30 Εικόνα 6: Android 3.0 Honeycomb Logo σελ 31 Εικόνα 7: Android 4.0 Ice Cream Sandwich Logo σελ 32 Εικόνα 8: Android 4.1 Jelly Bean Logo σελ 32 Εικόνα 9: Android 4.4 Kitkat Logo σελ 33 Εικόνα 10: Αρχιτεκτονική Android σελ 34 Εικόνα 11: Android Framework σελ 38 Εικόνα 12: Σύστηµα διαχείρισης βάσεων δεδοµένων σελ 43 Εικόνα 13: Αρχική σελίδα του XAMPP σελ 46 Εικόνα 14: Επιλογή έκδοσης του XAMPP σελ 47 Εικόνα 15: Κατέβασµα του XAMPP σελ 48 Εικόνα 16: XAMPP Control Panel σελ 49 Εικόνα 17: Localhost του XAMPP σελ 50 Εικόνα 18: XAMPP Security σελ 51 Εικόνα 19: Login στο PhpMyAdmin σελ 51 Εικόνα 20: Create Database σελ 52 Εικόνα 21: Notepad ++ Επιλογή Γλώσσας σελ 53 Εικόνα 22: Notepad ++ Welcome σελ 53 ~ 6 ~

7 Εικόνα 23: Notepad ++ License Agreement Εικόνα 24: Notepad ++ Folder Selection Εικόνα 25: Notepad ++ Finish Εικόνα 26: Notepad ++ Τελικό περιβάλλον Εικόνα 27: Εγκατάσταση Java SE Εικόνα 28: Εγκατάσταση του ADT PlugIn Εικόνα 29: Ολοκλήρωση εγκατάστασης ADT PlugIn Εικόνα 30: Android SDK Installation Εικόνα 31: Eclipse Android Preferences Εικόνα 32: ηµιουργία AVD Εικόνα 33: ηµιουργία Android Project Εικόνα 34: Android ScreenCast Εικόνα 35: Το αρχικό µενού του PhpMyAdmin Εικόνα 36: Περιεχόµενα του loginuser Εικόνα 37: Movie Table Εικόνα 38: moviedate Table Εικόνα 39: chair Table Εικόνα 40: customer Table Εικόνα 41: Πίνακας συσχετίσεων βάσης Εικόνα 42: Login Page της ιστοσελίδας του κινηµατογράφου Εικόνα 43: Η οθόνη επιλογής ταινίας Εικόνα 44: Η οθόνη διαχείρισης θέσεων Εικόνα 45: Ενεργοποίηση Apache MySQL Mercury στο XAMPP σελ54 σελ55 σελ55 σελ56 σελ58 σελ59 σελ60 σελ61 σελ62 σελ62 σελ63 σελ64 σελ65 σελ66 σελ67 σελ68 σελ69 σελ70 σελ71 σελ73 σελ75 σελ77 σελ81 ~ 7 ~

8 Εικόνα 46: Επιλογή του TheaterBookingSeatSystem.apk Εικόνα 47: Ο χρήστης επιλέγει το install για την εγκατάσταση του TBS System Εικόνα 48: Εγκατάσταση της εφαρµογής σελ83 σελ83 σελ83 Εικόνα 49: Η εγκατάσταση έχει ολοκληρωθεί και η εφαρµογή TBS System είναι έτοιµη προς χρήση σελ83 Εικόνα 50: Ο χρήστης επιλέγει το TBS System και η εφαρµογή εκτελείται. Εικόνα 51: Το Welcome Screen της εφαρµογής Εικόνα 52: Το κεντρικό Μενού της εφαρµογής Εικόνα 53: Ο χρήστης επιλέγει ταινία Εικόνα 54: Ο χρήστης επιλέγει ώρα προβολής Εικόνα 55: Το υποβοηθητικό µενού της mymenu Εικόνα 56: Η Help_play.java Εικόνα 57: To activity επιλογής θέσεων Εικόνα 58: Το help_seat Εικόνα 59: Αν ο χρήστης δεν επιλέξει κάποια θέση εµφανίζεται λάθος Εικόνα 60: Ο χρήστης επιλέγει τις θέσεις που θέλει Εικόνα 61: Η φόρµα συµπλήρωσης στοιχείων Εικόνα 62: Η βοήθεια του Personal Data Εικόνα 63: Η εφαρµογή προτρέπει τον χρήστη να είσαγει τα στοιχεία του Εικόνα 64: Ο χρήστης έχει εισάγει εσφαλµένο όνοµα Εικόνα 65: Ο χρήστης έχει εισάγει εσφαλµένο Εικόνα 66: Ο χρήστης έχει εισάγει εσφαλµένο τηλεφωνικό αριθµό Εικόνα 67: Η Confirm.java Εικόνα 68: Ολοκλήρωση της κράτησης σελ84 σελ85 σελ87 σελ88 σελ88 σελ89 σελ89 σελ90 σελ92 σελ92 σελ93 σελ94 σελ95 σελ95 σελ96 σελ96 σελ96 σελ97 σελ99 ~ 8 ~

9 Εικόνα 69: Ο χρήστης επιλέγει το yes Εικόνα 70: Μόλις πατήσει το yes η εφαρµογή επιστρέφει στο κεντρικό µενού Εικόνα 71 : Έαν ο χρήστης επιλέξει το Quit η εφαρµογή κλείνει Εικόνα 72: Η εφαρµογή έκλεισε µετά την επιλογή του χρήστη Εικόνα 73: Login στο Μandrill Εικόνα 74: SMTP API στο Mandrill σελ99 σελ100 σελ100 σελ100 σελ104 σελ105 ~ 9 ~

10 Ευχαριστίες Θέλουµε να ευχαριστήσουµε τις οικογένειες µας που µας στήριξαν για όλο αυτό το εξάµηνο, τον καθηγητή µας κύριο Μωυσιάδη που µας εµπιστεύτηκε την εκπόνηση της πτυχιακής αυτής, για όλη την βοήθεια και την καθοδήγηση του και τέλος το τµήµα της βιοµηχανικής πληροφορικής που µας έθεσε τις βάσεις. ~ 10 ~

11 ΠΕΡΙΛΗΨΗ Σκοπός της πτυχιακής εργασίας είναι η δηµιουργία µιας android εφαρµογής που θα επιτρέπει στον χρήστη την κράτηση θέσεων σε κινηµατογράφο. Η εφαρµογή αποτελείται από δυο λογισµικά συστήµατα : Στο πρώτο λογισµικό σύστηµα είναι η android εφαρµογή όπου ο πελάτης µπορεί να κάνει κράτιση θέσεων.αρχικά επιλέγει παράσταση και ώρα προβολής.στην συνέχεια επιλέγει θέση από µια πανοραµοική εικόνα της αίθουσας προβολής µέσω της οθόνης αφής του κινητού του.έπειτα ο χρήστης καλείται να συµπληρώσει µια φόρµα η οποία θα περιεχεί τα στοιχεία του, όπως ονοµατεπώνυµο και τον αριθµό τηλεφώνου.και τέλος η εφαρµογή ζητάει µια επιβεβαίωση από τον χρήστη πριν την τελική κράτηση. Το δεύτερο λογισµικό σύστηµα είναι µια ιντερνετική εφαρµογή η οποία δίνει το δικαίωµα στον υπεύθυνο του συστήµατος να διαχειρίζεται τις κρατήσεις του κινηµατογράφου.αρχικά θα του ζητηθεί να κάνει login χρησιµοποιώντας το username του και το password του.στην συνέχεια επιλέγει παράσταση και ώρα προβολής.ύστερα εµφανίζεται µια πανοραµοική εικόνα της αίθουσας προβολής και έχει την δυνατότητα να κάνει κράτηση ή να την ακυρώνει υπάρχουσες κρατήσεις, ενώ µπορεί να στέλνει ενηµερωτίκα µαζικά και ατοµικά. Τα δυο λογισµικά συστήµατα επικοινωνούν µε τον server του συστήµατος στον οποίο βρίσκονται τα δεδοµένα των ταίνιων, ηµεροµηνιών καθώς και η κατάσταση των θέσεων.ενώ µετά απο κάθε κράτηση τα στοιχεία του πέλατη αποθηκεύονται στην βάση δεδοµένων του server. ~ 11 ~

12 ABSTRACT This dissertation describes the creation of an android application that would allow a customer to book seats in a cinema. The application is comprised of two software systems: The first software system is an android application where customers can book seats. Initially, customers pick a movie and preferred time of that movie. Next, they can select seats from a panoramic view of the theater using their mobile phone touchscreen. Then, the customer fills in a form with his or her personal information, such as last name, and phone number. Lastly, the application requests confirmation from the user before finalizing the booking. The second software system is an internet application used by the system administrator in order to manage the cinema bookings. Initially the user will be asked to log in using their assigned username and password. Then the user selects the movie and time of the movie. A panoramic view of the theater appears and the user has the ability to make a booking, cancel existing bookings, while he a also has the ability to send mass or personalized informational s. These two software systems communicate with the system server where the movie data, dates and booking statuses reside. While after each booking, the customer information is retained at server level. ~ 12 ~

13 ΕΙΣΑΓΩΓΗ Στην παρούσα πτυχιακή εργασία γίνεται χρήση διαφόρων τεχνολογιών του διαδικτύου για την δηµιουργία µίας δυναµικής ιστοσελίδας στην οποία οι εισερχόµενοι χρήστες θα µπορούν να ανασύρουν στατιστικά στοιχεία από την βάση δεδοµένων και να κάνουν συγκρίσεις αυτών. Επίσης οι ίδιοι χρήστες θα µπορούν να καταχωρούν στην βάση δεδοµένων διάφορα στοιχεία που αφορούν την πρακτική τους άσκηση. Για την δηµιουργία της ιστοσελίδας θα χρησιµοποιηθεί η γλώσσα διαδικτυακού προγραµµατισµού PHP η οποία διατίθεται δωρεάν. Για την υποστήριξη και δηµιουργία της βάσης δεδοµένων θα χρησιµοποιηθεί η γλώσσα MySQL η οποία είναι παράλληλα και προϊόν που διατίθεται δωρεάν ως πακέτο λογισµικού. Η ιστοσελίδα χρησιµοποιεί ακόµη την HTML γλώσσα για την δηµιουργία υποστήριξη των ιστοσελίδων καθώς και JavaScript σε κάποια σηµεία της. Για την υποστήριξη της PHP και όλου του περιβάλλοντος της εφαρµογής θα χρησιµοποιηθεί ο APACHE web server, που διατίθεται δωρεάν µέσω της σχετικής άδειας. Για την δηµιουργία της ANDROID application θα χρησιµοποιηθεί η γλώσσα JAVA XML. ~ 13 ~

14 ΚΕΦΑΛΑΙΟ 1 ΘΕΩΡΗΤΙΚΟ ΜΕΡΟΣ ΤΗΣ ΕΦΑΡΜΟΓΗΣ ΤΟΥ ΚΙΝΗΜΑΤΟΓΡΑΦΟΥ 1.1 Τεχνολογίες που χρησιµοποιήθηκαν κατά τη δηµιουργία του site. Παρακάτω θα επισηµάνουµε λίγα πράγµατα για τις διάφορες τεχνολογίες που χρησιµοποιήσαµε κατά τη δηµιουργία του site µας και διάφορες από τις έννοιες και σηµασίες τους, όπως τη γλώσσα προγραµµατισµού php, τη βάση δεδοµένων σε SQL (phpmyadmin), για την MySQL βάση, για τον Server και WebServer, για την τεχνολογία html5 και ajax, για το Web Host και Web Hosting κ.α. 1.2 Η γλώσσα προγραµµατισµού php. Η PHP είναι µια γλώσσα προγραµµατισµού για web servers, χρήσιµη για δυναµικές ιστοσελίδες, οι οποίες µπορούν να διασυνδέσουν µε µια βάση δεδοµένων. Η PHP είναι δωρεάν για χρήση, και είναι η δηµοφιλέστερη για τους hosts Unix και Linux, αν και υπάρχουν εκδόσεις διαθέσιµες για τα Windows Ιστορικά - Πως δηµιουργήθηκε η γλώσσα προγραµµατισµού php και πως λειτουργεί σήµερα; Γλώσσα προγραµµατισµού για τη δηµιουργία σελίδων web µε δυναµικό περιεχόµενο. Μια σελίδα PHP περνά από επεξεργασία από συµβατό web server (π.χ. Apache ), ώστε να παραχθεί σε πραγµατικό χρόνο το τελικό περιεχόµενο, που θα σταλεί στο πρόγραµµα περιήγησης των επισκεπτών σε µορφή κώδικα HTML. Ένα αρχείο µε κώδικα PHP θα πρέπει να έχει την κατάλληλη επέκταση (π.χ. *.php, *.php4, *.phtml κ.ά.). Η ενσωµάτωση κώδικα σε ένα αρχείο επέκτασης.html δεν θα λειτουργήσει και θα εµφανίσει στον browser τον κώδικα χωρίς καµία επεξεργασία, εκτός αν έχει γίνει η κατάλληλη ρύθµιση στα MIME types του server. Επίσης ακόµη κι όταν ένα αρχείο έχει την επέκταση.php, θα πρέπει ο server να είναι ρυθµισµένος για να επεξεργάζεται κώδικα PHP. Η ιστορία της PHP ξεκινά από το 1995, όταν ένας φοιτητής, ο Rasmus Lerdorf δηµιούργησε χρησιµοποιώντας τη γλώσσα προγραµµατισµού Perl ένα απλό script µε όνοµα php.cgi, για προσωπική χρήση. Το script αυτό είχε σαν σκοπό να διατηρεί µια λίστα στατιστικών για τα άτοµα που έβλεπαν το online βιογραφικό του σηµείωµα. Αργότερα αυτό το script το διέθεσε και σε φίλους του, οι οποίοι άρχισαν να του ζητούν να προσθέσει περισσότερες δυνατότητες. Η γλώσσα τότε ονοµαζόταν PHP/FI από τα αρχικά Personal Home Page/Form Interpreter. Το 1997 η PHP/FI έφθασε στην έκδοση 2.0, βασιζόµενη αυτή τη φορά στη γλώσσα C και αριθµώντας περισσότερα από web sites που τη χρησιµοποιούσαν, ενώ αργότερα την ίδια χρονιά οι Andi Gutmans και Zeev Suraski ξαναέγραψαν τη γλώσσα από την αρχή, βασιζόµενοι όµως αρκετά στην PHP/FI 2.0. Έτσι η PHP έφθασε στην έκδοση 3.0 η οποία θύµιζε περισσότερο τη σηµερινή µορφή της. Στη συνέχεια, οι Zeev και Andi δηµιούργησαν την εταιρεία Zend (από τα αρχικά των ονοµάτων τους), η οποία συνεχίζει µέχρι και σήµερα την ανάπτυξη ~ 14 ~

15 και εξέλιξη της γλώσσας PHP. Ακολούθησε το 1998 η έκδοση 4 της PHP, τον Ιούλιο του 2004 διατέθηκε η έκδοση 5, ενώ αυτή τη στιγµή έχουν ήδη διατεθεί και τα πρώτα snapshots της επερχόµενης PHP 6, για οποιονδήποτε προγραµµατιστή θέλει να τη χρησιµοποιήσει. Σήµερα περισσότερα από web sites, ποσοστό µεγαλύτερο από το 35% των ιστοσελίδων του ιαδικτύου, χρησιµοποιούν scripts γραµµένα µε τη γλώσσα PHP, ενώ το υπόλοιπο 65% το µοιράζονται στατικές σελίδες HTML και όλες οι άλλες γλώσσες προγραµµατισµού. Πρόκειται για µια εξέλιξη που ο ίδιος ο Rasmus Lerdorf σε πρόσφατη συνέντευξή του δήλωσε ότι δεν περίµενε όταν, πριν από 15 χρόνια, δηµιουργούσε τις πρώτες γραµµές κώδικα PHP. Τόνισε όµως ότι η PHP δεν θα είχε γίνει τόσο δηµοφιλής αν η εξέλιξή της είχε παραµείνει προσωπική του προσπάθεια και δεν είχε βοηθηθεί από τους Andi Gutmans, Zeev Suraski και την εθελοντική συµµετοχή προγραµµατιστών από ολόκληρο τον κόσµο. Τα περισσότερα web sites επί του παρόντος χρησιµοποιούν κυρίως τις εκδόσεις 4 και 5 της PHP. Με τις γλώσσες Perl και C/C++ στις οποίες έχει τις ρίζες της, η PHP έχει εξαιρετική οµοιότητα ως προς τον τρόπο σύνταξης, αλλά και πολλές εντολές της Ορισµός της γλώσσας προγραµµατισµού php και παράδειγµα της; Η γλώσσα προγραµµατισµού Php (Hypertext PreProcessor) έχει το ιδιαίτερο χαρακτηριστικό ότι ο κώδικάς της πρώτα µεταγλωττίζεται στον server και µετά φορτώνεται σαν ένα κανονικό html έγγραφο, χωρίς ο χρήστης να είναι σε θέση να δει τον αρχικό κώδικα. Με την τεχνολογία της Php µπορούµε να δηµιουργήσουµε δυναµικές ιστοσελίδες (dynamic web pages). Ανταγωνιστικές της τεχνολογίας Php είναι η τεχνολογία ASP (Active Server Pages) της εταιρείας Microsoft καθώς και η τεχνολογία CFML (ColdFusion Markup Language). Θα δούµε ένα πολύ απλό αρχικό παράδειγµα. Π.χ. Το παράδειγµα εκτυπώνει την αγγλική λέξη «Hello». <?php echo ""; echo "Hello"; echo "";?> Πλεονεκτήµατα της php; Κάποιοι από τους ανταγωνιστές της PHP είναι η Perl, Microsoft ASP.NET, Java Server Pages(JSP), ColdFusion. Σε σύγκριση µε αυτά τα προϊόντα τα πλεονεκτήµατα της PHP είναι : 5. Υψηλή απόδοση 6. ιασυνδέσεις µε πολλά διαφορετικά συστήµατα βάσεων δεδοµένων ~ 15 ~

16 7. Ενσωµατωµένες βιβλιοθήκες για πολλές συνηθισµένες Web διαδικασίες 8. Χαµηλό κόστος 9. Ευκολία µάθησης και χρήσης 10. υνατή αντικειµενοστραφή υποστήριξη Μεταφερσιµότητα 10. ιαθεσιµότητα του κώδικα προέλευσης 11. ιαθεσιµότητα υποστήριξης 1.3 Tι είναι το phpmyadmin; Το phpmyadmin είναι µια εφαρµογή LAMP γραµµένη ειδικά για τη διαχείριση εξυπηρετητών MySQL. Γραµµένο σε PHP και προσβάσιµο µέσω ενός περιηγητή ιστοσελίδων, το phpmyadmin προσφέρει ένα γραφικό περιβάλλον για εργασίες διαχείρισης βάσεων δεδοµένων. Το phpmyadmin είναι ένα σύνολο από php scripts µε το οποίο διαχειριζόµαστε τις βάσεις δεδοµένων που έχουµε µέσω web. To phpmyadmin µπορεί να διαχειριστεί ένα ολόκληρο mysql server ή ακόµα και απλές βάσεις δεδοµένων όπου ο κάθε χρήστης έχει ένα λογαριασµό και µπορεί να δηµιουργήσει και να διαχειριστεί τις δικές του βάσεις δεδοµένων. Παρακάτω θα δούµε την διαδικασία εγκατάστασης της εφαρµογής υνατότητες του phpmyadmin. Το PhpMyAdmin µπορεί να : ηµιουργεί και να διαγράφει βάσεις δεδοµένων ηµιουργεί, τροποποιεί, διαγράφει, αντιγράφει και µετονοµάζει πίνακες Κάνει συντήρηση της βάσης Προσθέτει, διαγράφει και τροποποιεί πεδία πινάκων Εκτελεί ερωτήµατα SQL ακόµα και οµαδικά (batch) ιαχειρίζεται κλειδιά σε πεδία Φορτώνει αρχεία κειµένου σε πίνακες ηµιουργεί και διαβάζει πίνακες(που προέρχονται από dump βάσης) Εξάγει δεδοµένα σε µορφή CVS, XML και LATEX ιαχειρίζεται πολλούς διακοµιστές ιαχειρίζεται τους χρήστες MySQL και τα δικαιώµατα τους Ελέγχει την αναφορική δραστηριότητα των δεδοµένων των MyISAM πινάκων ηµιουργεί PDF γραφικών του layout της βάσης δεδοµένων Εκτελεί αναζητήσεις σε όλη τη βάση δεδοµένων ή µέρος αυτής Υποστηρίζει πίνακες InnoDB και ξένα κλειδιά Υποστηρίζει MySQLi, µια βελτιωµένη επέκταση του MySQLPhpMyAdmin ~ 16 ~

17 1.4 Τι είναι η MySQL; Η MySQL είναι ένα δυνατό, γρήγορο σύστηµα διαχείρισης σχεσιακής βάσης ανοικτού κώδικα όπως λέγεται (relational database management system - RDBMS) που χρησιµοποιεί την Structured Query Language (SQL), την πιο γνωστή γλώσσα για την προσθήκη, την πρόσβαση και την επεξεργασία δεδοµένων σε µία Βάση εδοµένων. Μία βάση δεδοµένων σας επιτρέπει να αποθηκεύετε, να αναζητάτε, να ταξινοµείτε και ν ανακαλείτε τα δεδοµένα σας αποτελεσµατικά. Ένας MySQL server αποτελείται από ένα σύνολο βάσεων δεδοµένων (databases). Κάθε βάση δεδοµένων είναι ένα σύνολο πινάκων (tables) παρόµοιων µε αυτών που µπορείτε να φτιάξετε σε ένα πρόγραµµα spreadsheet όπως το Excel. Οι γραµµές του πίνακα ονοµάζονται εγγραφές (records) και οι στήλες του πίνακα ονοµάζονται πεδία (fields). εν υπάρχει ουσιαστικό όριο στην ποσότητα βάσεων που περιέχονται στον server, στην ποσότητα πινάκων που περιέχονται στις βάσεις µα ούτε και στην ποσότητα πεδίων και εγγραφών που περιέχονται στους πίνακες. Τα πεδία των πινάκων µπορούν να περιέχουν µόνο ένα συγκεκριµένο τύπο πληροφορίας ο οποίος ορίζεται κατά την δηµιουργία του πίνακα. Για παράδειγµα ένα πεδίο που είναι ορισµένο ως ακέραιος αριθµός δεν είναι κατάλληλο για αποθήκευση δεκαδικού αριθµού ή κειµένου. Η δοµή αυτή χρησιµοποιείται από όλα τα σύγχρονα συστήµατα βάσεων δεδοµένων και έχει αποδειχτεί πολύ πρακτική για την αποθήκευση τεράστιων όγκων δοµηµένης πληροφορίας. Σε κάθε πίνακα βάσης δεδοµένων είναι σηµαντικό να υπάρχει µια στήλη (πεδίο) σε κάθε σειρά της οποίας να υπάρχει διαφορετική τιµή έτσι ώστε κάθε εγγραφή να αποκτήσει ένα µοναδικό χαρακτηριστικό, έναν «αριθµό ταυτότητας» µε τον οποίο να µπορούµε να αναφερόµαστε σε αυτήν. Το ιδιαίτερο αυτό πεδίο το ορίζουµε κατά την κατασκευή του πίνακα δίνοντάς του την ιδιότητα του πρωτεύοντος κλειδιού (primary key) Πλεονεκτήµατα της MySQL. Μερικοί από τους κύριους ανταγωνιστές της Mysql είναι οι PostgreSQL, Microsoft SQL Server, Oracle. Η Mysql όµως διαφέρει γιατί έχει τα εξής πλεονεκτήµατα : Υψηλή απόδοση Χαµηλό κόστος Εύκολη διαµόρφωση και εκµάθηση Μεταφερσιµότητα ιαθεσιµότητα του κώδικα προέλευσης ιαθεσιµότητα υποστήριξης ~ 17 ~

18 1.5 Τι είναι η τεχνολογία html5; Το HTML5 (Hyper-Text Markup Language 5), είναι µια καινούρια τεχνολογία στην κατασκευή ιστοσελίδων και είναι η τελευταία έκδοση του HTML, το οποίο είναι η βασική γλώσσα προγραµµατισµού ιστοσελίδων Τι προσφέρει η τεχνολογία html5; Το HTML5 προσφέρει πολύ περισσότερες δυνατότητες στις ιστοσελίδες, για παράδειγµα πιο πολλές επιλογές στην κατασκευή φορµών, όπως πεδία για , τηλέφωνα κλπ. Ακόµη, υποστηρίζεται η άµεση ενσωµάτωση βίντεο ή ήχου σε ιστοσελίδες, χωρίς την ανάγκη πρόσθετων. Περισσότερες πληροφορίες θα βρείτε παρακάτω Ποια είναι τα πλεονεκτήµατα και τα µειονεκτήµατα της τεχνολογίας html5; Πλεονεκτήµατα Επιτρέπει σε αυτούς που διαχειρίζονται ιστοσελίδες, να µπορούν να προσθέσουν περισσότερη λειτουργικότητα στην ιστοσελίδα τους, όταν µάλιστα συνδυάσουν και την επίσης καινούρια έκδοση του CSS, το CSS3. Μειονεκτήµατα Παρ' όλα αυτά, το HTML5 και το CSS3, δεν υποστηρίζεται από όλους τους browsers. Επίσης οι περισσότεροι από αυτούς κατά µεγάλο µέρος υποστηρίζουν το HTML5 µόνο µε τα δικά τους προθέµατα, για παράδειγµα, ο Firefox, χρησιµοποιεί (στο CSS3) το πρόθεµα -moz-, το Chrome και το WebKit το -webkit-, ενώ το Opera το πρόθεµα -o-. O Internet Explorer υποστηρίζει µόνο κατά 30% περίπου το HTML5, παρόλο που δεν χρειάζεται πρόθεµα. Παρ' όλα αυτά όµως, µέχρι το 2012 πιθανότατα όλοι οι browser θα υποστηρίζουν το HTML5, το CSS3 και κάποιες επιπλέον λειτουργίες που προστέθηκαν στο JavaScript. 1.6 Τι είναι η τεχνολογία ajax και ποια η χρησιµότητα της; Τα αρχικά προέρχονται από τις λέξεις Asynchronous JavaScript And XML και είναι ένας από τους κύριους αντιπροσώπους του επονοµαζόµενου web 2.0 [ µια νέα εποχή για το Internet µε κύρια στοιχεία τα wikis,τα blogs,τα Podcasts και γενικά την άµεση επικοινωνία του community των χρηστών του Internet ]. Η δηµιουργία µιας web εφαρµογής η οποία χρησιµοποιεί την AJAX τεχνολογία µπορεί καµιά φορά να αποδειχτεί πιο δύσκολη από το κλασσικό τρόπο. Αυτή η τεχνολογία βοηθά γενικώς στην ευχρηστία και στο να γίνουν οι εφαρµογές πιο εύχρηστες, φιλικές και πιο λειτουργικές. Μπορεί ο AJAX να είναι ένα εργαλείο από το οποίο µπορούν να προκύψουν πολλά οφέλη, ωστόσο πολλές φορές δεν είναι αναγκαίο να το χρησιµοποιούµε σε κάθε εφαρµογή. Ίσως είναι και διασκεδαστικό πολλές φορές να χρησιµοποιούµε αυτό το εργαλείο, αλλά δεν σηµαίνει ότι είναι η καλύτερη λύση για όλες τις εφαρµογές που αναπτύσσουµε. Το αν µια εφαρµογή θα επωφεληθεί από την AJAX ~ 18 ~

19 τεχνολογία δεν είναι κάτι σίγουρο και δεδοµένο. Πρέπει να δούµε τα πλεονεκτήµατα και τα µειονεκτήµατα αυτής της τεχνολογίας και από κει και πέρα η απόφαση είναι δική µας Πως λειτουργεί η τεχνολογία ajax; Σύµφωνα µε την wikipedia το A.J.A.X είναι µια προγραµµατιστική τεχνική του web που συνδυάζει υπάρχουσες τεχνολογίες [ JavaScript και XML κατά κόρον ] ώστε να καταστήσει την επικοινωνία client server πιο άµεση και τις σελίδες που το χρησιµοποιούν πιο ζωντανές. Το κύριο χαρακτηριστικό µιας web σελίδας που χρησιµοποιεί A.J.A.X. είναι η άµεση ενηµέρωση της µε νέο περιεχόµενο χωρίς να χρειάζεται να ξαναφορτωθεί εξ ολοκλήρου Πλεονεκτήµατα και µειονεκτήµατα της τεχνολογίας ajax; Πλεονεκτήµατα σε σχέση µε κλασσικές web εφαρµογές : 1. Το interface είναι πολύ πιο διαδραστικό, διότι δεν χρειάζεται να ξαναφορτώσει ολόκληρη η σελίδα. Απλά µεταφέρεται µικρότερη και η απαραίτητη πληροφορία που ζητήθηκε. Επίσης ο χρήστης έχει την αίσθηση ότι οι ενέργειες του έχουν άµεσο αποτέλεσµα. 2. Σε µια κλασσική web εφαρµογή, όταν ο web server στέλνει την σελίδα στον browser, µπορούν να χρησιµοποιηθούν πολλαπλά connection threads για να επιταχυνθεί η µεταφορά. Αυτό αξιοποιεί η καινούρια τεχνολογία. Οπότε σε µια σελίδα φορτώνουµε τα βασικά scripts και CSS αρχεία µία φορά και έπειτα αξιοποιούµε τις πολλαπλές συνδέσεις για να µεταφέρουµε στη σελίδα µας το περιεχόµενο που επιθυµούµε. 3. Ο χρόνος αναµονής µειώνεται. Στην περίπτωση που ο χρήστης υποβάλει µια φόρµα δεν χρειάζεται να περιµένει όλη την σελίδα να ξαναφορτώσει ώστε να αποσταλούν τα δεδοµένα της φόρµας. Αντί αυτού µπορεί να συνεχίσει να δουλεύει στην σελίδα, ενώ τα δεδοµένα αποστέλλονται. 4. Σε περίπτωση που παρουσιαστεί σφάλµα τότε επηρεάζεται µόνο το συγκεκριµένο τµήµα χωρίς να επηρεάζει το υπόλοιπα και να χαθούν κρίσιµα ίσως δεδοµένα. 5. Η κίνηση από και προς το server µειώνεται σηµαντικά, οπότε µειώνεται και η χρήση του bandwidth. Μειονεκτήµατα του AJAX : 1. Η ανάπτυξη µιας AJAX εφαρµογής µπορεί να απαιτεί περισσότερο χρόνο και κόστος. Θεωρείται πιο δύσκολη η ανάπτυξη λόγω των πολλών εµπλεκόµενων τεχνολογιών. 2. Ακόµα δεν έχουν δοθεί πλήρεις απαντήσεις σε διάφορα ζητήµατα ασφαλείας. Πολλοί είναι οι επικριτές αυτής της τεχνολογίας εξαιτίας των αναπάντητων ερωτηµάτων που αφήνει αυτή η τεχνολογία σε θέµατα ασφαλείας. 3. Με τον AJAX δεδοµένα φορτώνονται ασύγχρονα σε µια σελίδα αλλάζοντας τη µορφή της χωρίς να επαναφορτωθεί. Οι browsers ωστόσο δεν µπορούν να δηµιουργήσουν bookmarks τέτοιων στιγµιότυπων. Οπότε δεν είναι δυνατή η αποθήκευση σελίδων πέραν της αρχικής. Επίσης αν θέλουµε να πάµε σε κάποια προηγούµενη κατάσταση της σελίδας ~ 19 ~

20 δεν έχει νόηµα να πατήσουµε το BACK button αφού το URL δεν έχει αλλάξει καθόλου. Για να ξεπεράσουµε αυτά τα προβλήµατα πρέπει να γίνει επιπλέον προγραµµατισµός κάτι που αυξάνει το κόστος και το χρόνο ανάπτυξης. 4. Το ότι ο AJAX δεν χρησιµοποιείται στο µεγαλύτερο ποσοστό των σελίδων που βλέπουµε στο διαδίκτυο δεν είναι τυχαίο. Ένας από τους κύριους λόγους είναι γιατί δεν µπορούν να γίνουν indexed από τις µηχανές αναζήτησης. Για παράδειγµα τα e-commerce sites βασίζονται σε µεγάλο βαθµό στο indexing που γίνεται από τις µηχανές αναζήτησης διότι χωρίς αυτό δεν θα µπορούσαν να προωθήσουν και να πουλήσουν προϊόντα. Μια καλή ιδέα για να αντιµετωπίσουµε αυτό το πρόβληµα θα ήταν να µην αναπτύσσουµε µια σελίδα που να βασίζεται εξολοκλήρου στον AJAX αλλά µόνο ορισµένα µέρη. 5. Επίσης ένα σχετικά σηµαντικό πρόβληµα είναι ότι ο AJAX υποστηρίζεται µόνο από browsers οι οποίοι υποστηρίζουν πλήρως JavaScript µε έµφαση στο XMLHttpRequest αντικείµενο. Οπότε µπορεί να υπάρχουν επισκέπτες που να έχουν παλιότερους browsers και έτσι να µην µπορούν να δουν αυτές τις εφαρµογές. Επίσης από τους browsers που έχουν πλήρη υποστήριξη της JAVASCRIPT, µπορεί να χρειαστεί να γράψουµε πρόσθετο και σύνθετο κώδικα για τις AJAX εφαρµογές εξαιτίας του διαφορετικού τρόπου µε τον οποίο χειρίζονται το XMLHttpRequest αντικείµενο. 6. Ένα τελευταίο µειονέκτηµα έχει να κάνει µε το XMLHttpRequest αντικείµενο. Εξαιτίας περιορισµών ασφαλείας µπορούµε να έχουµε πρόσβαση µόνο στον server που εξυπηρέτησε την αρχική σελίδα. Αν θέλουµε να συλλέξουµε στο ενδιάµεσο πληροφορίες από άλλο server αυτό δε γίνεται Τεχνολογίες που χρησιµοποιεί η τεχνολογία ajax; Το XHTML και CSS για σχεδιαστικούς λόγους ( Αντί XHTML µπορεί να χρησιµοποιεί και XML ανάλογα µε την υλοποίηση ). Το DOM ( Document Object Model ) µέσω της JavaScript για την δυναµική αναπαράσταση των πληροφοριών. Το αντικείµενο XMLHttpRequest που απαιτείται για την ασύγχρονη επικοινωνία του client µε τον server. 1.7 Τι είναι ο Web Host; Για να µπορεί κάποιος να έχει πρόσβαση στο website σας, όλα τα αρχεία του website πρέπει να είναι αποθηκευµένα σε έναν web server. Ο web server µε τη σειρά του δηµοσιοποιεί τις σελίδες αυτές στο διαδίκτυο µέσω της διαδικτυακής ονοµασίας (domain name). Ο Web Ηost είναι η εταιρεία η οποία παρέχει χώρο σε ένα web server. Χρειάζεται σε άτοµα και εταιρείες που δεν έχουν τη δυνατότητα να έχουν δικό τους web-server. Υπάρχει πληθώρα δωρεάν και επί πληρωµή Web Hosts. Εκτός του χώρου στο server, οι Web Hosts προσφέρουν και πολλές άλλες συµπληρωµατικές υπηρεσίες. Παράδειγµα είναι οι mail servers και οι κατοχυρώσεις ονοµάτων. Ο συνδυασµός χώρου στο server και προστιθέµενων υπηρεσιών ονοµάζεται πρόγραµµα φιλοξενίας. ~ 20 ~

21 1.7.1 Τι είναι το Web Hosting Φιλοξενεία ιστοσελίδων; Για να είναι µία ιστοσελίδα διαθέσιµη online στο internet, θα πρέπει αυτή να φιλοξενείται σε έναν κατάλληλο υπολογιστή, δηλαδή έναν web server (εξυπηρετητή ιστοσελίδων). Ο web server, δέχεται και επεξεργάζεται τις αιτήσεις των επισκεπτών και τους παρουσιάζει την ιστοσελίδα που φιλοξενεί. Υπηρεσίες φιλοξενίας ιστοσελίδων (web hosting) υπάρχουν διαθέσιµες τόσο στην Ελλάδα, όσο και στο εξωτερικό και συνήθως προσφέρονται ως "πακέτα" κάθε ένα από το οποίο έχει κάποια συγκεκριµένα τεχνικά χαρακτηριστικά, τα οποία συνήθως αναφέρονται πολύ αναλυτικά σε λίστες ή πίνακες, ενώ η κάθε εταιρία συχνά παρουσιάζει και συγκριτικούς πίνακες µεταξύ των πακέτων που προσφέρει. Κριτήριο για την επιλογή της κατάλληλης υπηρεσίας, είναι φυσικά οι ανάγκες της κάθε ιστοσελίδας αλλά και η τιµή του πακέτου φιλοξενίας. ύο από τα πιο βασικά χαρακτηριστικά ενός πακέτου φιλοξενίας ιστοσελίδων είναι : Το Disk Space, δηλαδή ο διαθέσιµος χώρος για τα δεδοµένα της ιστοσελίδας Το Bandwidth, δηλαδή ο µέγιστος αριθµός της µηνιαίας διακίνησης δεδοµένων της ιστοσελίδας. Για να τοποθετήσετε την δική σας ιστοσελίδα στο ίντερνετ, χρειάζονται τα παρακάτω : Πρώτα απ' όλα, να έχετε την δική σας ιστοσελίδα. Θα πρέπει να έχετε ένα αντίγραφο του site στον τοπικό υπολογιστή (σε html-αρχεία), ή έτοιµο υλικό + πρόγραµµα, το οποίο θα επέτρεπε να δηµιουργηθεί το site άµεσα στο server. Όνοµα χώρου. Θα πρέπει να διαλέξετε και να αποκτήσετε το όνοµα τοµέα (domain name) για το site σας. Είναι προτιµότερο, εάν το όνοµα θα είναι σχετικό µε το θέµα της ιστοσελίδας, και να µπορεί να αποµνηµονεύεται εύκολα. Το όνοµα χώρου µπορεί να είναι σε οποιαδήποτε, της επιλογή σας, domain περιοχή, για παράδειγµα:.com.net.org.gr κ.τ.λ. Κατά την επιλογή της ζώνης παίρνετε υπόψη τα δεδοµένα για τις αντιστοιχίες των domain ζωνών. Παραδείγµατος χάρη, τα ονόµατα στη ζώνη.com προορίζονται για ιστοσελίδες εµπορικού χαρακτήρα,.org για κρατικούς και κοινωνικούς οργανισµούς. Τα domain names τύπου.gr,.us,.uk κ.τ.λ. δείχνουν στην τοποθεσία (χώρα) του φορέα. ~ 21 ~

22 Να παραγγείλετε ένα από τα πακέτα φιλοξενίας στην εταιρεία, η οποία παρέχει τις αντίστοιχες υπηρεσίες. Η επιλογή του πακέτου φιλοξενίας αποτελεί ξεχωριστό θέµα για συζήτηση και για αυτό δεν θα το συζητήσουµε στο παρόν άρθρο. 1.8 Τι είναι ο Server; Είναι ένας υπολογιστής που διαθέτει κατάλληλο υλικό και λογισµικό, είναι συνδεδεµένος στο ιαδίκτυο και στον οποίο αποθηκεύεται ένα αντίγραφο της ιστοσελίδας. Ως συνήθως, σε ένα server τοποθετούνται πολλές ιστοσελίδες, σε ξεχωριστό φάκελο η κάθε µια. Με την βοήθεια οποιουδήποτε web-browser (προγράµµατος για την προβολή των ιστοσελίδων στο ίντερνετ) µπορείτε να έχετε πρόσβαση στην ιστοσελίδα σας, πληκτρολογώντας στην γραµµή διεύθυνσης το όνοµα χώρου που έχετε αποκτήσει και το οποίο έχετε συνδέσει µε το χώρο στον οποίο βρίσκεται η ιστοσελίδα αυτή. Το web-hosting µπορεί να συγκριθεί µε την ενοικίαση ακινήτου, γιατί ουσιαστικά αυτό γίνεται νοικιάζετε χώρο στον σκληρό δίσκο ενός server σε κάποια εταιρεία. Πολλές εταιρείες προτείνουν την φιλοξενία της ιστοσελίδας σε χαµηλές τιµές, όµως όχι όλες µπορούν να εξασφαλίσουν την απαιτούµενη ποιότητα των υπηρεσιών. Μιλώντας για την τιµή της φιλοξενίας, πρέπει να σηµειωθεί, ότι για τις περισσότερες ιστοσελίδες το ποσό της µηνιαίας πληρωµής µπορεί να µην ξεπερνάει τα 10 δολάρια ΗΠΑ. Περίπου µε τέτοιο κόστος µπορεί να βρεθεί η εταιρεία, η οποία θα προσφέρει 300 ΜΒ χώρου στον server και διάφορες δυνατότητες, όπως: εγκατάσταση και εκτέλεση των scripts (προγράµµατα), υποστήριξη βάσεων δεδοµένων, πίνακας διαχείρισης (administration panel) της ιστοσελίδας σας, όπου γίνονται οι ρυθµίσεις που αφορούν όχι µόνο την ιστοσελίδα σας, αλλά γενικώς το χώρο που έχετε ενοικιάσει καθώς και τις παρεχόµενες υπηρεσίες (π.χ. το ηλεκτρονικό ταχυδροµείο). Εάν σκοπεύετε να αποκτήσετε µια παρουσία στο ιαδίκτυο, θα πρέπει όχι µόνο να αποφασίσετε το τι επιπέδου θα είναι το site σας, αλλά και να κάνετε την σωστή επιλογή του παροχέα της φιλοξενίας. Στατιστικά, πάνω από 70% των ιδιοκτητών ιστοσελίδων είχαν αλλάξει το hosting τουλάχιστον µια φορά. Η αλλαγή του παροχέα προκαλείται από την µη ικανοποίηση από την ποιότητα των παρερχοµένων υπηρεσιών. Πράγµατι, οποιοσδήποτε παροχέας λέει ότι είναι ο καλύτερος και ότι έχει τις χαµηλότερες τιµές κ.τ.λ. κ.τ.λ. Μετά αποκαλύπτεται, ότι η υπηρεσία της υποστήριξης δεν απαντάει ή απαντάει, αλλά µε καθυστέρηση, τα server τους ώρες-ώρες "κολλάνε" εξαιτίας µεγάλου φόρτου. Τέτοια απροσεξία κατά την επιλογή του παροχέα µπορεί να φέρει µεγάλες απώλειες. Φανταστείτε, τι σηµαίνει η αδυναµία πρόσβασης στην ιστοσελίδα µιας εταιρείας, όπου κάθε µισή ώρα ανανεώνονται οι σηµαντικές πληροφορίες για τους υπαλλήλους και τους συνεργάτες, οι οποίοι βρίσκονται σε αποµακρυσµένα υποκαταστήµατα της εταιρείας. Φανταστείτε, ότι οι δυνητικοί πελάτες της εταιρείας δεν µπορούν να µάθουν τα στοιχεία επικοινωνίας της εταιρείας, γιατί δεν µπορούν να ανοίξουν το site. Πιθανόν, σε µισή ώρα, αυτοί οι άνθρωποι δεν θα κάνουν δεύτερη προσπάθεια να ξαναµπούν στο site. Πιθανόν, σε µισή ώρα αυτοί θα βρουν µια άλλη ανταγωνιστική ιστοσελίδα. Η ζηµιά από τα servers που κολλάνε µπορεί να είναι πολύ µεγάλη. Για να µη κάνετε λάθη στην επιλογή του hosting, θα πρέπει οπωσδήποτε να επισκεφτείτε διάφορα φόρουµ, όπου σχολιάζονται οι εταιρείες που παρέχουν φιλοξενία. ιαβάστε ~ 22 ~

23 προσεκτικά τις γνώµες των πελατών για διάφορους παροχείς του hosting. Ο χρόνος που θα ξοδέψετε στην έρευνα των φόρουµ και η ανάγνωση των σχολίων, θα σας αποζηµιώσει µε την σταθερότητα λειτουργίας του site σας. 1.9 Πως πρέπει να διαλέξετε το κατάλληλο πακέτο Web Hosting; Τα πακέτα φιλοξενίας, ως συνήθως, διαφοροποιούνται µε το µέγεθος του παρεχόµενου χώρου στο δίσκο του server, µε τον αριθµό των επιτρεπόµενων subdomains, µε περιορισµό στην κίνηση που θα υπάρχει στο site (traffic). Φυσικά, αφού διαλέξετε µερικές εταιρείες φιλοξενίας µε το περισσότερο κύρος, θα πρέπει να συγκρίνετε τα πακέτα φιλοξενίας που προσφέρουν. Κατά την σύγκριση, πρέπει να έχετε υπόψη σας, τι απαιτήσεις πρέπει να πληρεί το πακέτο φιλοξενίας. Θα πρέπει να προσέξετε : Το µέγεθος του παρεχόµενου χώρου Την δυνατότητα να έχετε πολλές διευθύνσεις Εγκατάσταση και εκτέλεση εφαρµογών (cgi, php, MySQL) Πρόσβαση στην ιστοσελίδα µε FTP Το εργαλείο διαχείρισης, µε το οποίο µπορείτε να ελέγχετε την ιστοσελίδα σας (πολύ σηµαντικό: ένα ποιοτικό administration panel, όπου όλες οι δυνατότητες και λειτουργίες είναι "τακτοποιηµένες" θα σας εξοικονοµήσει πολύ χρόνο) Την εξερχόµενη κίνηση από το site σας Ας τα δούµε ένα-ένα λοιπόν. Εάν η πρώτη σας ιστοσελίδα θα αποτελείται από µερικές σελίδες και ένα λογότυπο, τότε θα σας καλύψει άνετα ένα πακέτο φιλοξενίας, όπου το µέγεθος στο δίσκο θα είναι από 100 έως 300 Megabyte. Αυτό είναι παραπάνω από αρκετό. Λιγότερο από 100 ΜΒ χώρου ήδη δεν παρέχει σχεδόν καµία εταιρεία φιλοξενίας. Με τις διευθύνσεις ηλεκτρονικού ταχυδροµείου είναι πιο απλά πρακτικά όλοι οι παροχείς δίνουν απεριόριστο αριθµό των διευθύνσεων. Περιορισµός µπορεί να υπάρχει µόνο στον αριθµό των ξεχωριστών POP3 και SMTP λογαριασµών. Αυτό σηµαίνει, ότι παρόλο που οι διευθύνσεις είναι διαφορετικές, έχετε περιορισµένο αριθµό των ξεχωριστών συνδέσεων µε την βοήθεια κάποιου προγράµµατος (mail-client). Η εγκατάσταση και η εκτέλεση των scripts είναι απαραίτητη, εάν το site θα έχει δυναµικές σελίδες, ή εάν θα είναι απαραίτητο να υλοποιηθεί η λειτουργία της αναζήτησης µέσα στο site. Στην περίπτωση που η ιστοσελίδα θα είναι εξολοκλήρου στατική (html-σελίδες), τότε η δυνατότητα εκτέλεσης των προγραµµάτων έχει δευτερεύουσα σηµασία. Η πρόσβαση στο site µέσω FTP είναι απαραίτητη. Χωρίς αυτή δεν µπορείτε να κάνετε τίποτα. Η FTP πρόσβαση παρέχεται από όλους τους παροχείς, και πιστεύω πως αυτό το θέµα είναι απλό και κατανοητό. Το administration panel, µε την πρώτη µατιά, δεν έχει ιδιαίτερη σηµασία. Αλλά όταν φτάνετε στο σηµείο να διαχειρίζεστε πρακτικά την ιστοσελίδα σας, τότε ένα ποιοτικό εργαλείο διαχείρισης είναι απαραίτητο. ~ 23 ~

24 Με το administration panel µπορείτε όχι µόνο να ρυθµίζετε τις δυνατότητες του site, αλλά και να παίρνετε και τις στατιστικές αναφορές για αυτό, για παράδειγµα: πόσος χώρος στο δίσκο χρησιµοποιείται και πόσος είναι ακόµη ελεύθερος, ποιος είναι ο δείκτης του εξερχόµενου traffic για τον τρέχοντα µήνα (ως συνήθως, όλα τα πακέτα έχουν κάποιο περιορισµό στο επίπεδο της κίνησης). Εάν στο πακέτο φιλοξενίας αναφέρεται "απεριόριστο" traffic µην το πιστέψετε. Το πιο πιθανό αυτός να µην είναι και πολύ καλός hoster, ο οποίος µε οποιονδήποτε τρόπο προσπαθεί να προσελκύσει τους πελάτες. Με την βοήθεια του administration panel µπορεί να γίνεται εύκολη ρύθµιση του site και του να δηµιουργούνται νέες διευθύνσεις, να ρυθµίζεται η ανακατεύθυνση της αλληλογραφίας, να γίνεται εύκολα η διαχείριση των αρχείων και των φακέλων (να ρυθµίζονται τα δικαιώµατα πρόσβασης στα αρχεία, κωδικοί για τους φακέλους). Το πληρωµένο εξερχόµενο traffic έχει µεγάλη σηµασία. Εάν δεν υπολογίσετε καλά το πόση πληροφορία θα στέλνεται κάθε µήνα από το site σας στους υπολογιστές των επισκεπτών, τότε πιθανόν, η ιστοσελίδα σας θα σταµατήσει να είναι διαθέσιµη (δεν θα είναι προσβάσιµη online), αφού θα ξεπεραστεί το όριο που είχατε πληρώσει. Μπορείτε να υπολογίσετε στο περίπου το εξερχόµενο traffic, χωρίς ιδιαίτερη δυσκολία. Μάθετε το µέσο µέγεθος της κάθε σελίδας του site, συµπεριλαµβάνοντας και γραφικά στοιχεία που περιέχει (κουµπάκια, banners, φωτογραφίες κ.τ.λ.). Να έχετε υπόψη, ότι κατά την φόρτωση άλλων σελίδων, στις οποίες υπάρχουν τα ίδια γραφικά, που είχαν φορτωθεί από πριν, τότε αυτά δεν παίρνονται από την σελίδα σας, αλλά από τον φάκελο προσωρινών αρχείων ίντερνετ (cache) του χρήστη. Τώρα προβλέψτε πόσες, κατά µέσο όρο, σελίδες µπορεί να επισκεφτεί ο κάθε χρήστης, και περίπου πόσοι χρήστες πιστεύετε ότι θα επισκέπτονται την ιστοσελίδα σας. Τώρα πολλαπλασιάστε το µέγεθος της σελίδας επί τον αριθµό των σελίδων και επί τον αριθµό των επισκεπτών σε ένα 24-ωρο. Θα πάρετε την κατά προσέγγιση εξερχόµενη κίνηση το 24-ωρο. Πολλαπλασιάζουµε επί 30 µέρες και παίρνετε, στο περίπου, τον όγκο των εξερχόµενων πληροφοριών το µήνα. Εάν ο αριθµός είναι αρκετά µεγάλος, µην απογοητεύεστε, αφού είναι µόνο οι υποθέσεις που κάνετε. Μπορεί να έχετε πολύ λιγότερους επισκέπτες, από ότι νοµίζετε, και ο καθένας τους θα επισκέπτεται πολύ λιγότερες σελίδες, και το εν τρίτο από αυτούς θα έχουν απενεργοποιήσει στο browser τους την εµφάνιση εικόνων (όλα αυτά δεν σας τα εύχοµαι!) Τι είναι ο Server, Web Server και Web Client; Ο Server (εξυπηρετητής) είναι ένας υπολογιστής που έχει τον κεντρικό έλεγχο ενός δικτύου, παρέχοντας βασικές υπηρεσίες στους χρήστες του. Σε ένα δίκτυο ο server ελέγχει την όλη λειτουργεία και για λόγους ασφαλείας επιτρέπει την πρόσβαση µόνο σε εξουσιοδοτηµένους χρήστες, παραχωρώντας τους λειτουργείες ανάλογα µε τα δικαιώµατα που έχουν. Μια κατηγορία server είναι οι web servers οι οποίοι προσφέρουν τις ζητούµενες ιστοσελίδες (web pages). Οι πιο γνωστοί servers είναι ο Apache και ο IIS. Web Server ονοµάζουµε το λογισµικό που τρέχει σε ένα κόµβο Internet και επιτρέπει σε άλλους υπολογιστές να αποκτούν αντίγραφα των Web σελίδων που είναι αποθηκευµένες σε αυτόν. Με τον όρο Web Server αναφερόµαστε είτε σε έναν ηλεκτρονικό υπολογιστή (hardware), είτε σε ένα λογισµικό (software) που µας επιτρέπει µέσω του Internet και µε την βοήθεια ~ 24 ~

25 του HTTP (Hyper Text Transfer Protocol - Πρωτόκολλο Μεταφοράς Υπερκειµένου) να αποκτούµε πρόσβαση σε ιστοσελίδες που είναι αποθηκευµένες σε αυτόν. Κάθε Web Server έχει έναν βασικό διαχειριστή ο οποίος ελέγχει τον διακοµιστή. Έτσι όταν ο χρήστης ζητάει άδεια από τον Web Server να "ανοίξει" µια συγκεκριµένη ιστοσελίδα το αίτηµά του ελέγχεται πρώτα από τον διαχειριστή της ιστοσελίδας ή του διακοµιστή και στην συνέχεια αφού παραχωρηθεί η άδεια ο χρήστης βλέπει την ιστοσελίδα. Η διαδικασία αυτή φαντάζει να είναι πολύπλοκη και χρονοβόρα, όµως, όπως πολύ σωστά αναφέρεται σε σχετικό άρθρο στο "Oι Web Servers είναιικανοί να χειριστούν εκατοντάδες χιλιάδες αιτήµατα το δευτερόλεπτο και µπορούν να ανατρέξουν σε πληροφορίες γρήγορα, παρέχοντας στον επισκέπτη της σελίδας την πληροφορία που αναζητεί σε µηδενικό χρόνο.". Υπάρχουν διάφορα είδη Web Server όπως οι dedicated servers, οι load balancing servers, οι database servers. Επίσης, καθένας µπορεί να µετατρέψει τον ηλεκτρονικό υπολογιστή του σε έναν Web Server εγκαθιστώντας κατάλληλο λογισµικό που να συνδέει τον υπολογιστή του µε το Internet. Web Client ονοµάζουµε το λογισµικό που τρέχει ένας Η/Υ και του επιτρέπει να "διαβάζει" Web σελίδες (από το σκληρό του δίσκο ή από το Internet αν είναι συνδεδεµένος µε αυτό) Τι είναι ο Τοπικός Server Apache; Ο Apache HTTP γνωστός και απλά σαν Apache είναι ένας εξυπηρετητής του παγκόσµιου ιστού (web). Όποτε επισκέπτεστε έναν ιστότοπο ο πλοηγός σας επικοινωνεί µε έναν διακοµιστή HTTP. O Apache είναι ένας από τους δηµοφιλέστερους, εν µέρει γιατί λειτουργεί σε διάφορες πλατφόρµες σαν τα Windows, το Linux, το Unix, και το Mac OS X. ιατηρείται τώρα από µια κοινότητα ανοιχτού κώδικα µε επιτήρηση από το Ίδρυµα Λογισµικού Apache (Apache Software Foundation). Η πρώτη του έκδοση, γνωστή ως NCSA HTTPd, δηµιουργήθηκε από τον Robert McCool και κυκλοφόρησε το Θεωρείται ότι έπαιξε σηµαντικό ρόλο στην αρχική επέκταση του ιστού. Ήταν η πρώτη βιώσιµη εναλλακτική επιλογή που παρουσιάστηκε απέναντι στον εξυπηρετητή http της εταιρείας Netscape και από τότε έχει εξελιχθεί στο σηµείο να ανταγωνίζεται άλλους εξυπηρετητές βασισµένους στο Unix σε λειτουργικότητα και απόδοση. Από το 1996 ήταν από τους πιο δηµοφιλείς όµως από τον Μάρτιο του 2006 έχει µειωθεί το ποσοστό της εγκατάστασής του κυρίως από τον Microsoft Internet Information Services και τη πλατφόρµα.net. Τον Οκτώβριο του 2007 το µερίδιο του ήταν 47,73 % από όλους τους ιστοτόπους. Ο Apache είναι ένα ελεύθερο ανοικτού κώδικα λογισµικό. Εκτός του κόστους, είναι ιδιαίτερα διαµορφώσιµο και είναι πλήρες των προηγµένων χαρακτηριστικών γνωρισµάτων, όπου αυτός είναι και ο κύριος λόγος για τον οποίο οι περισσότεροι πάροχοι web hosting το χρησιµοποιούν. ~ 25 ~

26 ΚΕΦΑΛΑΙΟ 2 ΤΟ ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ ANDROID 2.1 Τι είναι το Android; Το Android είναι ένα λειτουργικό σύστηµα ανοιχτού κώδικα, βασισµένο στο Linux, για φορητές συσκευές όπως smartphones και tablets. Αναπτύχθηκε από την Google και αργότερα από την Open Handset Alliance η οποία είναι µια κοινοπραξία εταιριών λογισµικού, κατασκευής hardware και τηλεπικοινωνιών, οι οποίες είναι αφιερωµένες στην ανάπτυξη και εξέλιξη ανοιχτών προτύπων στις φορητές συσκευές. Η πρώτη παρουσίαση της πλατφόρµας Android έγινε στις 5 Νοεµβρίου 2007, παράλληλα µε την ανακοίνωση της ίδρυσης του οργανισµού Open Handset Alliance. Η Google δηµοσίευσε το µεγαλύτερο µέρος του κώδικα του Android υπό τους όρους της Apache License, µιας ελεύθερης άδειας λογισµικού. Τον Ιούλιο του 2005, η Google εξαγόρασε την Android Inc, µια µικρή εταιρεία µε έδρα το Palo Alto στην California των ΗΠΑ. Εκείνη την εποχή ελάχιστα ήταν γνωστά για τις λειτουργίες της Android Inc, εκτός του ότι ανέπτυσσαν λογισµικό για κινητά τηλέφωνα. Αυτή ήταν η αρχή της φηµολογίας περί σχεδίων της Google για να διεισδύσει στην αγορά κινητής τηλεφωνίας. Στην Google, η οµάδα µε επικεφαλής τον Andy Rubin ανέπτυξε µια κινητή πλατφόρµα που στηρίζεται στον πυρήνα του Linux, την οποία προώθησαν µε την παροχή ενός ευέλικτου, αναβαθµίσιµου συστήµατος. Έχει αναφερθεί ότι η Google είχε ήδη συγκεντρώσει µια σειρά από εταίρους hardware και software και επισήµανε στους παρόχους ότι ήταν ανοικτή σε διάφορους βαθµούς συνεργασίας εκ µέρους της. Έντυπα και ηλεκτρονικά µέσα ενηµέρωσης σύντοµα ανέφεραν φήµες ότι η Google ανέπτυσσε µια Google-branded συσκευή. Περισσότερες φήµες ακολούθησαν, αναφέροντας ότι η Google καθόριζε τις τεχνικές προδιαγραφές και έδειχνε πρωτότυπα στους κατασκευαστές κινητών τηλεφώνων και τους φορείς δικτύων. Τελικά η Google παρουσίασε το smartphone της Nexus One που χρησιµοποιεί το open source λειτουργικό σύστηµα Android. Η συσκευή κατασκευάστηκε από την HTC, και έγινε διαθέσιµη στις 5 Ιανουαρίου Εφαρµογές Android Το Android έχει µια µεγάλη κοινότητα προγραµµατιστών που γράφουν εφαρµογές, οι οποίες επεκτείνουν τη λειτουργικότητα των συσκευών. Οι εφαρµογές γράφονται σε µια προσαρµοσµένη έκδοση της JAVA και µπορεί κάνεις να κατεβάσει από το online κατάστηµα Google Play (πρώην Android Market) της Google όπως και από άλλα sites. Μέχρι τον Ιούλιο του 2013 περισσότερες από εφαρµογές ήταν διαθέσιµες στο Google Play ενώ τα downloads ειναι περισσότερα απο 50 δισεκατοµµύρια. Το Android είναι η πρώτη σε πωλήσεις παγκοσµίως πλατφόρµα για smartphones καθώς µέχρι το Σεπτέµβριο του 2013 µετρούσε περισσότερες από 1 δισεκατοµµύριο ενεργοποιηµένες συσκεύες. ~ 26 ~

27 2.3 Ιστορικό Ενηµερώσεων Παρόλο που το Android είναι ένα προϊόν ελεύθερου λογισµικού, ένα κοµµάτι της ανάπτυξης του λογισµικού συνεχίζεται σε ιδιωτικό παρακλάδι. Για να έρθει αυτό το λογισµικό σε κοινή θέαση δηµιουργήθηκε ένα παρακλάδι του µόνο ανάγνωσης, εν ονόµατι "Cupcake". To Cupcake συνήθως συγχέεται µε τον τίτλο µιας ενηµέρωσης, σε αντίθεση µε όσα δηλώνει η ίδια η Google στην ιστοσελίδα ανάπτυξης του Android: "το Cupcake αποτελεί ακόµη ένα έργο σε εξέλιξη, όχι µια επίσηµη έκδοση. Αξιοσηµείωτες αλλαγές στο λειτουργικό Android θα παρουσιαστούν στο cupcake και περιλαµβάνουν αλλαγές στο σύστηµα διαχείρισης των µεταφορτώσεων (download manager), το framework, Bluetooth, το λογισµικό συστήµατος, το ραδιόφωνο και το σύστηµα τηλεφωνίας, εργαλεία προγραµµατισµού, το κυρίως σύστηµα και διάφορες εφαρµογές, καθώς και πληθώρες διορθώσεις σφαλµάτων. Στις 30 Απριλίου 2009, κυκλοφόρησε η επίσηµη ενηµέρωση έκδοσης 1.5 για το Android.Αποτελείται από πολλά νέα χαρακτηριστικά και βελτιώσεις στο γραφικό περιβάλλον: υνατότητα καταγραφής κινούµενης εικόνας µε την χρήση της αντίστοιχης λειτουργίας του τηλεφώνου Μεταφόρτωση αρχείων βίντεο στο YouTube και εικόνων στο Picasa κατευθείαν από το τηλέφωνο Επανασχεδιασµένο λογισµικό πληκτρολογίου µε λειτουργία αυτόµατης συµπλήρωσης κειµένου υνατότητα αυτόµατης σύνδεσης ασύρµατης συσκευής ακουστικού Bluetooth εφόσον εντοπιστεί σε µια συγκεκριµένη απόσταση Νέα widgets και φάκελοι που µπορούν να τοποθετηθούν στην επιφάνεια εργασίας Εφέ αλλαγής οθονών και µενού ιευρυµένη λειτουργία αντιγραφής/επικόλλησης για να περιλαµβάνει δικτυακές διευθύνσεις ~ 27 ~

28 Ακολουθεί ο αναλυτικός πίνακας των εκδόσεων android: Android 1.5 Cupcake Εικόνα 1: Android 1.5 Cupcake Logo Η έκδοση Cupcake, βασισµένη στο Linux Kernel , παρουσιάστηκε στις 30 Απριλίου του 2009.Υποστηρίζει νέες λειτουργίες για την κάµερα τις συσκευής, όπως η καταγραφή και παρακολούθηση βίντεο από την λειτουργία της κάµερας και η άµεση µεταφόρτωση του βίντεο αλλά και των φωτογραφιών στο Youtube και το Picasa αντίστοιχα απευθείας από το τηλέφωνο. Έχει νέο έξυπνο πληκτρολόγιο µε πρόβλεψη κειµένου. Υποστηρίζει πρότυπο Bluetooth A2DP και AVRCP ενώ έχει και την ικανότητα να συνδέεται αυτόµατα σε µικροσυσκευές Bluetooth από µια συγκεκριµένη απόσταση. Ακόµα στην έκδοση αυτή έχει νέο γραφικό περιβάλλον µε κινούµενες µεταβάσεις οθόνης. ~ 28 ~

29 2.3.2 Android 1.6 Donut Εικόνα 2: Android 1.6 Donut Logo Η έκδοση Donut, βασισµένη στο Linux Kernel , παρουσιάστηκε στις 15 Σεπτεµβρίου του 2009.Έχει ταχύτερη απόκριση σε σχέση µε την προηγούµενη έκδοση. Υποστηρίζεται πλέον η επιλογή πολλαπλών αρχείων ταυτόχρονα, έχει ανανεωµένο γκάλερι και φωτογραφική µηχανή, καθώς και βελτιωµένο Android Market. Έχει ανανεωµένη φωνητική αναζήτηση, µε ταχύτερη απόκριση και βαθύτερη ολοκλήρωση µε εγγενείς (native) εφαρµογές, συµπεριλαµβανοµένης της δυνατότητας κλήσης επαφών. υνατότητα αναζήτησης σελιδοδεικτών, ιστορικού, επαφών αλλά και στο διαδίκτυο από την αρχική οθόνη. Υποστήριξη για ανάλυση οθονών WVGA. Ανανεωµένη υποστήριξη τεχνολογιών για CDMA/EVDO, 802.1x, VPNs και µε µηχανή µετατροπής κειµένου σε οµιλία (text-tospeech) Android 2.0/2.1 Éclair Εικόνα 3: Android 2.0/2.1 Eclair Logo Η έκδοση Eclair, βασισµένη και αυτή στον Linux Kernel , παρουσιάστηκε στις 26 Οκτωβρίου του 2009, ενώ τον Ιανουάριο του 2010 επανεκδόθηκε σε Αndroid 2.1 Eclair (MR1).Σε αυτή την έκδοση υπάρχει ακόµα ταχύτερη απόκριση του υλικού σε σχέση µε τις δυο προηγούµενες και πλέον υποστηρίζονται περισσότερες οθόνες και αναλύσεις. Υπάρχει νέος browser ο οποίος υποστηρίζει το πρότυπο HTML5, νέο User Interface, και βελτιωµένοι χάρτες Google (Google Maps 3.1.2). Έχει ενσωµατωθεί η υποστήριξη φλας για την κάµερα η οποία έχει πλέον και ψηφιακό zoom. Επίσης έχει βελτιωθεί η κλάση MotionEvent ώστε να υπάρχει η δυνατότητα για γεγονότα ~ 29 ~

30 πολλαπλής αφής (multitouch events). Υποστηρίζεται Bluetooth 2.1 και έχει βελτιωθεί και το πληκτρολόγιο Android 2.2 Froyo Εικόνα 4: Android 2.2 Froyo Logo Η έκδοση Froyo, βασισµένη στο Linux Kernel , παρουσιάστηκε στις 20 Μαΐου του Υπάρχουν βελτιστοποιήσεις στην ταχύτητα γενικά του λειτουργικού συστήµατος, στην µνήµη και στην απόδοση. Έχει ενσωµατωθεί ο µηχανισµός JavaScript του Chrome V8 στον browser, υπάρχει πλέον Adobe Flash 10.1, ενώ υποστηρίζεται καλύτερα πλέον το Microsoft Exchange. Έχει γίνει ανανέωση του Android Market. Ο χρήστης µπορεί πλέον να ελέγχει αν θα γίνεται ή όχι κίνηση πακέτων δεδοµένων από το δίκτυο κινητής τηλεφωνίας. Υπάρχει η δυνατότητα εγκατάστασης εφαρµογών στην κάρτα µνήµης και η µεταφορά τους εκεί από τη µνήµη του τηλεφώνου. Επίσης το τηλέφωνο πλέον µπορεί να µετατραπεί σε WiFi hotspot Android 2.3 Gingerbread Εικόνα 5: Android 2.3 Gingerbread Logo Η έκδοση Gingerbread, βασισµένη στο Linux Kernel , παρουσιάστηκε στις 6 εκεµβρίου του 2010, ενώ τον Φεβρουάριο του 2011 επανεκδόθηκε σε Android ~ 30 ~

31 Στην έκδοση αυτή υπάρχουν αλλαγές στο User Interface το οποίο έχει γίνει πιο απλό και ταχύ, ενώ υποστηρίζονται πλέον οθόνες µεγάλων µεγεθών και αναλύσεων. Υπάρχει πλέον το πρωτόκολλο SIP για κλήσεις µέσω VoIP, υποστηρίζεται ο τύπος βίντεο WebM/VP8 και ο κωδικοποιητής AAC, έχει βελτιωθεί ο ήχος καθώς και οι λειτουργίες απεικόνισης για την ανάπτυξη παιχνιδιών. Υπάρχει η δυνατότητα για Copy- Paste σε όλο το σύστηµα και όχι µόνο στην ίδια εφαρµογή. Υποστηρίζεται το NFC (Near Field Communication) και η ύπαρξη πολλαπλών καµερών. Επίσης, έχει βελτιωθεί η ενεργειακή υποστήριξη και έχει γίνει µετάβαση από το σύστηµα αρχείων YAFFS στο ext4 στις νέες συσκευές Android 3.0 Honeycomb Εικόνα 6: Android 3.0 Honeycomb Logo Η έκδοση Honeycomb, βασισµένη στο Linux Kernel , παρουσιάστηκε στις 9 Μαΐου του 2011,µε την ιδιαιτερότητα ότι προοριζόταν αποκλειστικά για tablets. Οι αλλαγές που έγιναν στην έκδοση αυτή έχουν να κάνουν κυρίως µε τη βελτίωση της υποστήριξης των tablets. Υπάρχει ένα νέο, εντελώς διαφορετικό, User Interface και υποστηρίζονται διπύρηνοι και τετραπύρηνοι επεξεργαστές. Ακόµα, εχει απλοποιηθεί το multitasking έτσι ώστε ο χρήστης να µπορεί µε τη χρήση ενός πλήκτρου (recent apps) να περνάει από µια εφαρµογή σε άλλη. Υπάρχει η δυνατότητα για Video Chat µέσω της εφαρµογής Google Talk καθώς η ανάγνωση βιβλίων µέσω του Google ebooks. Επιπλέον, µπορούν να κρυπτογραφηθούν όλα τα δεδοµένα χρήστη. ~ 31 ~

32 2.3.7 Android 4.0 Ice Cream Sandwich Εικόνα 7: Android 4.0 Ice Cream Sandwich Logo Η έκδοση Ice Cream Sandwich, βασισµένη στο Linux Kernel 3.0.1, παρουσιάστηκε στις 19 Οκτωβρίου του Για άλλη µια φορά έχει βελτιωθεί η ταχύτητα και η απόδοση του συστήµατος. Πλέον στο User Interface, το οποίο είναι και παλι διαφορετικό, υπάρχουν εικονικά πλήκτρα τα οποία παίρνουν τη θέση των φυσικών ή αφής που υπήρχαν στις συσκευές. Βελτίωση της ασφάλεια του συστήµατος µε την προσθήκη αναγνώρισης προσώπου για να ξεκλειδώσει η συσκευή. Ο browser µπορεί να ανοίξει ταυτόχρονα µέχρι και 16 καρτέλες. Υπάρχει η δυνατότητα ο χρήστης να τερµατίσει εφαρµογές οι οποίες τρέχουν στο background, ενώ µπορεί να θέσει και όρια στην κίνηση πακέτων δεδοµένων. Η εφαρµογή Android Beam αξιοποιεί πλέον το NFC αφού επιτρέπει την αποστολή δεδοµένων από τη συσκευή σε όσες βρίσκονται εντός µιας µικρής ακτίνας εµβέλειας. Ακόµα µε την ύπαρξη του Wi-Fi Direct συσκευές µπορούν να συνδεθούν µεταξύ τους ασύρµατα χωρίς την µεσολάβηση κάποιου access point. Τέλος, υποστηρίζεται η εγγραφή βίντεο σε 1080p Android 4.1 Jelly Bean Εικόνα 8: Android 4.1 Jelly Bean Logo ~ 32 ~

33 Στο συνέδριο Google I/O στις 27/06/2012 η Google ανακοίνωσε το Android 4.1 Jelly Bean το οποίο ήταν βασισµένο στο Linux kernel Πρωταρχικός στόχος ήταν η βελτίωση της λειτουργικότητας και της απόδοσης του user interface. Σε αύτο περιελάµβανε το "Project Butter" το οποίο χρησιµοποιούσε touch anticipation, triple buffering, extended vsync timing and a fixed frame rate of 60 fps ώστε να δηµιουργήσει ένα "buttery-smooth" user interface. Το Jelly Bean έγινε open source στις 9/7/2012 ενώ η πρώτη συσκευή που κυκλοφόρησε µε το Jelly Bean ήταν το Nexus 7 tablet στις 13/07/ Android 4.4 Kitkat Εικόνα 9: Android 4.4 Kitkat Στις 3 Σεπτεµβρίου 2013 η Google ανακοίνωσε το Android 4.4 Kitkat επίσης γνώστο και ως Project Svelte. Το project αναµενόταν από αρκέτους bloggers ως android 5.0 Key Lime Pie αλλά ουσιαστίκα λόγω εµπορίκης συµφωνίας της Google µε την Nestle το συγκεκριµένο όνοµα εγκαταλείφτηκε. Το KitKat έκανε το ντεµπούτο στο Nexus 5 της Google, και έχει βελτιστοποιηθεί για να τρέχει σε ένα µεγαλύτερο εύρος συσκευών από τις προηγούµενες εκδόσεις Android, κάθως έχει 512 MB µνήµης RAM, ως ελάχιστες απαιτήσεις. 2.4 Αρχιτεκτονική του Android Το Android δεν είναι µόνο ένα λειτουργικό σύστηµα. Είναι µια στοίβα λογισµικού η οποία αποτελείτε από το λειτουργικό σύστηµα, τις υπηρεσίες διασύνδεσης µε τις εφαρµογές (middleware) και τέλος από τις κύριες (core) εφαρµογές, µεταξύ αυτών, ενός cient, µιας εφαρµογής διαχείρισης SMS, ενός ηµερολογίου, ενός browser, εφαρµογή διαχείρισης επαφών, και άλλες οι οποίες έρχονται δεµένες µε την υπόλοιπη στοιβάδα λογισµικού του Android. Στο επίσηµο σχεδιάγραµµα που ακολουθεί (Εικόνα 1.11) θα δούµε οπτικά την αρχιτεκτονική αυτή. Από ότι βλέπουµε λοιπόν η αρχιτεκτονική του λειτουργικού συστήµατος αποτελείτε από 5 βασικά επίπεδα. Τον πυρήνα Linux (Linux Kernel) ~ 33 ~

34 Τις εγγενείς και τις προηγµένες βιβλιοθήκες (Libraries) Την εικονική µηχανή Dalvik (Dalvik VM) Τον χρόνο εκτέλεσης (Android Runtime) Το πλαίσιο εφαρµογής (Application Framework) Εικόνα 10: Αρχιτεκτονική Android Πυρήνας Linux (Linux Kernel) Η βάση της στοίβας λογισµικού του Android είναι ο πυρήνας Linux. Ο τροποποιηµένος πυρήνας του συστήµατος βασίζεται στην έκδοση 2.6 (και στην έκδοση για το Android 4.0) του Linux Kernel, η οποία υποστηρίζει όλες τις κύριες λειτουργίες του λειτουργικού συστήµατος. Οι λειτουργίες αυτές αφορούν διαχείριση µνήµης, διαχείριση διεργασιών, λειτουργίες δικτύου, ασφάλεια του λειτουργικού, και ένα σύνολο οδηγών υλικού (hardware drivers). Οι οδηγοί αυτοί είναι υπεύθυνοι για την επικοινωνία του software µε το hardware της συσκευής. Ενδεικτικά ο πυρήνας του Android περιέχει: Οδηγό προβολής οθόνης Οδηγό Wifi και Bluetooth Οδηγό κάµερας κλπ Ο πυρήνας του Android µπορεί να βασίζεται στον πυρήνα του Linux, αλλά διαφέρει ~ 34 ~

35 αρκετά από αυτόν. Ο λόγος είναι οι αλλαγές στην αρχιτεκτονική που έχει κάνει η Google για να είναι ελαφρύτερος και βελτιστοποιηµένος για χρήση σε κινητές συσκευές. Αυτό σηµαίνει ότι παρότι το Android είναι κατά βάση Linux, επί της ουσίας είναι αρκετά δύσκολο να τρέξουν εφαρµογές ή να χρησιµοποιηθούν βιβλιοθήκες από τη µία πλατφόρµα στην άλλη. Ο Linus Torvalds έχει αναφέρει ότι τελικά στο µέλλον το Android και το Linux θα µοιράζονται έναν κοινό πυρήνα, αλλά αυτό θα αργήσει 4-5 χρόνια ακόµα Βιβλιοθήκες Στο δεύτερο επίπεδο της στοίβας έχουµε τις βιβλιοθήκες του Android. Αυτές ουσιαστικά αποτελούν τα APIs που είναι διαθέσιµα στους προγραµµατιστές για την ανάπτυξη των εφαρµογών. Οι βιβλιοθήκες από µόνες τους δεν αποτελούν εφαρµογές αλλά ενσωµατώνονται και χρησιµοποιούνται από τις εφαρµογές για τις διάφορες λειτουργίες που παρέχει η καθεµία από αυτές. Ουσιαστικά αποτελούν ένα από τα δοµικά υλικά των εφαρµογών, και άρα είναι αναπόσπαστο κοµµάτι τους. Οι δυνατότητες των βιβλιοθηκών του Android γίνονται εµφανείς στους προγραµµατιστές στην στοίβα του πλαισίου εφαρµογής. Το σύνολο σχεδόν των βιβλιοθηκών είναι γραµµένο σε C και C++, οι οποίες έχουν µεταγλωττιστεί για τη χρήση τους από το λειτουργικό. Μερικές από τις κύριες βιβλιοθήκες του Android είναι: System C library µια ενσωµάτωση της standard βιβλιοθήκης συστήµατος της C (libc) τροποποιηµένη για κινητές συσκευές βασισµένες στο Linux. Βιβλιοθήκες Πολυµέσων Υποστηρίζει αναπαραγωγή και εγγραφή πολλών δηµοφιλών µέσων ήχου και εικόνας,όπως: MPEG4, H.264, MP3, AAC, AMR, JPG, και PNG Surface Manager διαχειρίζεται την πρόσβαση στο υποσύστηµα προβολής, και συνθέτει απρόσκοπτα δισδιάστατα και τρισδιάστατα επίπεδα γραφικών τα οποία προέρχονται από πολλαπλές εφαρµογές. LibWebCore µια µοντέρνα µηχανή υποστήριξης πλοήγηση στο διαδίκτυο (browser engine) η οποία χρησιµοποιείτε και από τον ενσωµατωµένο browser του Android αλλά και από τις WebViews που ενσωµατώνονται στις εφαρµογές. SGL η γνωστή µηχανή δισδιάστατων γραφικών Βιβλιοθήκες 3D µια υλοποίηση βασισµένη στα APIs του OpenGL ES 1. Οι βιβλιοθήκες χρησιµοποιούν είτε τρισδιάστατη επιτάχυνση υλικού, όπου αυτή είναι διαθέσιµη, είτε µια υψηλά βελτιωµένη τρισδιάστατη επιτάχυνση λογισµικού σε περίπτωση που η πρώτη δεν είναι διαθέσιµη. FreeType παρέχει ευκρίνεια γραφικών στα bitmaps και τις γραµµατοσειρές των εφαρµογών του συστήµατος. SQLite µια πανίσχυρη και συνάµα πολύ ελαφριά σχεσιακή βάση δεδοµένων ~ 35 ~

36 2.4.3 Η εικονική µηχανή Dalvik Σχεδόν το σύνολο των APIs του Android βασίζονται στη γλώσσα προγραµµατισµού Java. Στην Java ως γνωστόν υπάρχει η λεγόµενη Java Virtual Machine στην οποία εκτελείτε ο κώδικας bytecode των εφαρµογών. Στο Android υπάρχει κάτι παρόµοιο και δεν είναι άλλο από την εικονική µηχανή Dalvik. Η Dalvik λοιπόν είναι η εικονική µηχανή µέσω της οποίας τρέχουν οι εφαρµογές του Android. H κάθε εφαρµογή τρέχει µέσω τις δικής της εικονικής µηχανής στη δικιά της διεργασία και για αυτό το λόγο καµία εφαρµογή δεν έχει επαφή µε την άλλη, ενώ εκτελούνται ταυτόχρονα. Η Dalvik δεν υποστηρίζει τον κώδικα bytecode, αντί αυτού οι κλάσεις της Java γίνονται compile σε αρχεία.dex ώστε να τρέξουν στην VM. Τα αρχεία dex ουσιαστικά αποτελούν συµπιεσµένα δεδοµένα για εξοικονόµηση χώρου κατά την εκτέλεση. Το Android είναι από τη φύση του multitasking λειτουργικό σύστηµα και για αυτό επιτρέπει στις εφαρµογές του να τρέχουν σε πολλά νήµατα ταυτόχρονα και να απασχολούν πολλές διαδικασίες εάν αυτό είναι αναγκαίο. Για να γίνει αυτό εφικτό η µηχανή Dalvik είναι σχεδιασµένη για να έχει ελάχιστο αντίκτυπο στη χρήση της µνήµης. Χάρη στον λιτό της σχεδιασµό, το σύστηµα είναι σε θέση να τρέχει πολλές εικονικές µηχανές ταυτόχρονα Χρόνος Εκτέλεσης Εφαρµογής (Android Runtime) Ο χρόνος εκτέλεσης των εφαρµογών του Android, βρίσκεται στο ίδιο επίπεδο µε τις κύριες βιβλιοθήκες και την µηχανή Dalvik. Εδώ βρίσκουµε το κοινό σηµείο επαφής µεταξύ των δυνατοτήτων που παρέχουν οι βιβλιοθήκες και του χρόνου εκτέλεσης της εικονικής µηχανής Dalvik τις λειτουργίες τις οποίας, περιγράψαµε παραπάνω Πλαίσιο Εφαρµογής (Application Framework) Το Android παρέχει στους developers µια ανοιχτού κώδικα πλατφόρµα ανάπτυξης και τη δυνατότητα να αναπτύξουν µε αυτή ιδιαίτερα καινοτόµες και πλούσιες σε υλικό, εφαρµογές. Οι developers έχουν στην διάθεση τους τη δυνατότητα ελέγχου του υλικού της συσκευής και µέσω αυτής µπορούν να αποκτήσουν πρόσβαση σε υπηρεσίες εντοπισµού, εκτέλεση διεργασιών παρασκηνίου, και πάρα πολλές ακόµη δυνατότητες οι οποίες βασίζονται στα APIs που είναι διαθέσιµα. Στο επόµενο επίπεδο της αρχιτεκτονικής του Android λοιπόν, συναντάµε το πλαίσιο των εφαρµογών. Οι developers έχουν πρόσβαση σε όλα τα APIs µεταξύ αυτών και στα κύρια APIs που χρησιµοποιούν οι ενσωµατωµένες εφαρµογές. Η δοµή των εφαρµογών είναι τέτοια που ευνοείται η επαναχρησιµοποίηση δοµικών συστατικών, και επίσης επιτρέπεται η χρήση των δυνατοτήτων τις µίας εφαρµογής από άλλες εφαρµογές, βέβαια κάτω από τις προδιαγραφές ασφάλειας του Android. Τα σηµαντικότερα δοµικά στοιχεία του πλαισίου εφαρµογών είναι: Σύστηµα προβολών (View System) αποτελεί ένα εκτενές σύνολο από αντικείµενα GUI τα οποία µπορούν να χρησιµοποιηθούν κατά το σχεδιασµό µιας εφαρµογής. Παραδείγµατα προβολών είναι οι λίστες (listview), το πλέγµα (GridView), πεδία εισαγωγής κειµένου, κουµπιά, κλπ Πάροχος Περιεχοµένου (Content Provider) δίνει τη δυνατότητα στις εφαρµογές να ~ 36 ~

37 µοιράζονται ή να ανταλλάσσουν δεδοµένα µιας συγκεκριµένης µορφής η οποία ορίζεται από τον πάροχο. Παραδείγµατα δεδοµένων, είναι οι επαφές χρήστη και οι βάσεις δεδοµένων των εφαρµογών. ιαχειριστής Πόρων (Resource Manager) παρέχει πρόσβαση σε υλικό το οποίο δεν είναι σε µορφή κώδικα όπως πχ, εικόνες, αρχεία xml, πίνακες χαρακτήρων, κλπ ιαχειριστής Ειδοποιήσεων (Notification Manager) δίνει στις εφαρµογές πρόσβαση στις υπηρεσίες ειδοποιήσεων χρήστη. Τέτοιες είναι οι ειδοποιήσεις στη notification bar, τα toast µηνύµατα στο κάτω µέρος της οθόνης, η δόνηση του κινητού και η ενεργοποίηση της οθόνης, κλπ ιαχειριστής ραστηριοτήτων (Activity Manager) διαχειρίζεται τον κύκλο ζωής των δραστηριοτήτων και παρέχει δυνατότητα πλοήγησης από δραστηριότητα σε δραστηριότητα κρατώντας αποθηκευµένη στη µνήµη τη σειρά εκτέλεσης αυτών. Στο σχεδιάγραµµα φαίνεται λεπτοµερώς ο κύκλος ζωής κάθε δραστηριότητας. ~ 37 ~

38 Εικόνα 11: Android Framework 2.5 Στο εσωτερικό µιας εφαρµογής του Android Κάθε εφαρµογή αποτελείτε από ένα σύνολο αρχείων και φακέλων δοµηµένα σε µορφή project, τα οποία αφού γίνουν compiled µέσω του Android SDK µας δίνουν το αρχείο.apk. Το αρχείο αυτό αποτελεί την εφαρµογή και µπορούµε να εγκαταστήσουµε στις συσκευές µας. Ξεκινώντας, η κάθε εφαρµογή αποτελείτε όπως είπαµε από πολλά αρχεία δοµηµένα ~ 38 ~

39 σε φακέλους. Όλες οι εφαρµογές πρέπει να έχουν ένα µοναδικό όνοµα πακέτου (package name) το οποίο χρησιµοποιείτε από το λειτουργικό σύστηµα για αναγνώριση της εφαρµογής. Μια εφαρµογή µπορεί να αποτελείτε από πολλά υποπακέτα, εφόσον αυτό είναι απαραίτητο λόγω της πολυπλοκότητας τις εφαρµογής, αλλά µόνο από ένα κύριο Το αρχείο AndroidManifest.xml Κάθε project εφαρµογής περιέχει ένα αρχείο στο οποίο βρίσκονται καταχωρηµένες οι σηµαντικότερες πληροφορίες της εφαρµογής, και το αρχείο αυτό ονοµάζεται AndroidManifest.xml. Πρόκειται όπως λέει και το όνοµα του για ένα αρχείο xml µέσα στο οποίο ο προγραµµατιστής καταχωρεί τις σηµαντικότερες πληροφορίες της εφαρµογής για χρήση από το λειτουργικό σύστηµα. Κάποιες από αυτές τις πληροφορίες είναι: Το όνοµα του πακέτου της εφαρµογής Το κανονικό της όνοµα που φαίνεται στον χρήστη Η έκδοση των APIs που χρησιµοποιούνται Ο αριθµός έκδοσης της εφαρµογής Οι άδειες χρήσης που ζητάει η εφαρµογή Όλες οι δραστηριότητες, πάροχοι περιεχοµένου, υπηρεσίες, κλπ, που περιέχει και χρησιµοποιεί η εφαρµογή. Όπως αντιλαµβανόµαστε πρόκειται για πολύ σηµαντικό αρχείο και αποτελεί κύριο συστατικό κάθε εφαρµογής Οι φάκελοι src & res Στον φάκελο src (εκ του source) περιέχονται τα αρχεία κλάσης τις Java όλων των Activities, Services, Content Providers, βοηθητικά αρχεία, κλπ. Ο φάκελος περιέχει το πακέτο ή τα πακέτα της εφαρµογής τα οποία περιέχουν τα αρχεία Java, και αποτελεί τον µοναδικό φάκελο στο project στον οποίο αποθηκεύονται τα αρχεία του κώδικα µας. Ο φάκελος res (εκ του resources) περιέχει όλα τα αρχεία εικόνας, κειµένου, xml layout, κλπ τα οποία χρησιµοποιούνται από τις Activities που βρίσκονται στον φάκελο src. Φυσικά δεν βρίσκονται όλα τα αρχεία πόρων, σε έναν φάκελο, αλλά είναι χωρισµένα και ταξινοµηµένα σε υποφακέλους ανάλογα µε το είδος τους. Συνηθισµένοι υποφάκελοι του κύριου φακέλου res, είναι ο φάκελος drawable ο οποίος περιέχει τα αρχεία εικόνας (.png,.jpg,.gif) τα οποία χρησιµοποιεί η εφαρµογή µας, ο φάκελος layout ο οποίος περιέχει όλα τα αρχεία xml τα οποία ορίζουν τα διάφορα layouts που υπάρχουν στην εφαρµογή, και τέλος ο φάκελος values στον οποίο αποθηκεύονται όλοι οι πόροι κειµένου που χρησιµοποιούνται στην εφαρµογή Οι υπόλοιποι φάκελοι του project Ένα project αποτελείτε από περισσότερους από τους 3 βασικούς φακέλους, κάποιοι από τους οποίους µπορεί να θεωρηθούν και περιττοί αναλόγως την περίπτωση. Στο project λοιπόν περιλαµβάνονται και ο φάκελος µε τα διαθέσιµα APIs αναλόγως την ~ 39 ~

40 έκδοση που έχουµε επιλέξει να δουλέψουµε, ο φάκελος µε τις διαθέσιµες βιβλιοθήκες που έχουµε εισάγει στο build path του project µας, και επίσης περιλαµβάνει και τις διαβαθµίσεις του φακέλου res, όπως είναι οι φάκελοι drawable-hdpi, drawable-mdpi, layout-port, menu, κλπ. Σε αυτούς περιλαµβάνονται τα ειδικά διαµορφωµένα αρχεία πόρων που έχουµε τοποθετήσει ώστε να είναι διαθέσιµα από το λειτουργικό σύστηµα, αναλόγως την περίσταση οµικά Μέρη µιας Εφαρµογής Παραπάνω αναφέραµε ότι όλα τα δοµικά µέρη της εφαρµογής πρέπει να αναφέρονται αναλυτικά στο αρχείο AndroidManifest.xml, πια είναι όµως αυτά τα δοµικά µέρη και πια η λειτουργία του καθενός; ραστηριότητες (Activities) Πρόκειται ίσως για το κύριο δοµικό στοιχείο µιας εφαρµογής. ραστηριότητα είναι µια οθόνη διεπαφής χρήστη (GUI) και προβολής πληροφοριών. Κάθε εφαρµογή έχει τόσες Activities όσες και οι διαφορετικές οθόνες οι οποίες εµφανίζονται στον χρήστη. Όλες οι δραστηριότητες συνεργάζονται µεταξύ τους για να δώσουν στον χρήστη µια συνολική εµπειρία χρήσης της εφαρµογής. Προθέσεις (Intents) Οι δραστηριότητες επικοινωνούν και εναλάσουν την λειτουργία τους µέσω των Intents. Ουσιαστικά τα Intents εξασφαλίζουν την µετάβαση από την µία δραστηριότητα σε µια άλλη και επίσης χρησιµοποιούνται για ανταλλαγή δεδοµένων. Η ανταλλαγή δεδοµένων, µπορεί να γίνει είτε µεταξύ των Activities µιας εφαρµογής, είτε από τη µία εφαρµογή στην άλλη. Παραδείγµατος χάρη µπορούµε µέσω ενός Intent να εκκινήσουµε έναν browser ώστε να µας ανοίξει απευθείας ένα url το οποίο έχουµε παρέχει εµείς µέσω ενός Intent. Υπηρεσίες (Services) Πρόκειται για λειτουργίες της εφαρµογής οι οποίες είναι σχεδιασµένες να τρέχουν στο παρασκήνιο και να επιστρέφουν αποτελέσµατά ακόµη και όταν η εφαρµογή δεν είναι στο προσκήνιο. Πχ µια εφαρµογή media player µπορεί µέσω µιας υπηρεσίας να συνεχίσει να παίζει µουσική ακόµη και όταν το κύριο παράθυρο της εφαρµογής δεν βρίσκεται στο προσκήνιο. Πάροχος Περιεχόµενου (Content Providers) - Η ανταλλαγή δεδοµένων από µια εφαρµογή στην άλλη όπως είπαµε παραπάνω µπορεί να γίνει µέσω ενός Intent, ένας πάροχος περιεχοµένου όµως έχει πιο σύνθετη λειτουργία. Οι content providers µιας εφαρµογής διαχειρίζονται συγκεκριµένα δεδοµένα της εφαρµογής τα οποία έχει ορίσει ο προγραµµατιστής κατά την κατασκευή του. Συνηθισµένα δεδοµένα τα οποία µοιράζονται µέσω Content Providers, είναι οι βάσεις δεδοµένων SQLite µιας εφαρµογής, και οι επαφές του χρήστη. έκτες Μετάδοσης (Broadcast Receivers) Πρόκειται για ένα είδους υπηρεσία η οποία αντιλαµβάνεται κάποια γεγονότα του συστήµατος και αναλαµβάνει να ενηµερώσει το σύστηµα η τις υπόλοιπες εφαρµογές. Ο σκοπός τους είναι διπλός καθότι µπορούν και να ενηµερωθούν για κάποιο συµβάν από άλλες εφαρµογές, αλλά και να ειδοποιήσουν τις υπόλοιπες εφαρµογές και το σύστηµα για κάποιο συµβάν που τις ενεργοποίησε. εν έχουν γραφικό περιβάλλον αλλά µπορούν να προβάλουν ειδοποίηση στον χρήστη µέσω της µπάρας ειδοποιήσεων. Συνήθως χρησιµοποιούνται ως διαµεσολαβητές µεταξύ των Activities και των Servιces µιας εφαρµογής. ~ 40 ~

41 2.6 Ασφάλεια στο Android Τη στιγµή που µια εφαρµογή εγκαθίσταται στη συσκευή, λειτουργεί αποκλειστικά στο δικό της εικονική µηχανή η οποία αποτελεί και το πλαίσιο ασφαλείας (sandbox) της εφαρµογής. Το Android είναι ένα λειτουργικό σύστηµα πολλών χρηστών στο οποίο: Η κάθε εφαρµογή αντιµετωπίζεται σαν διαφορετικός χρήστης Από προεπιλογή το σύστηµα δίνει έναν µοναδικό αριθµό ID ο οποίος είναι άγνωστος στην εφαρµογή. Το σύστηµα αναθέτει συγκεκριµένες άδειες χρήσης στα αρχεία της εφαρµογής, και µόνο η εφαρµογή µε το σωστό ID µπορεί να έχει πρόσβαση σε αυτά. Κάθε εφαρµογή τρέχει στην δική της εικονική µηχανή (VM) αποµονωµένη από τις υπόλοιπες εφαρµογές. Η κάθε VM εκκινείτε µόλις ζητηθεί από το σύστηµα και κλείνει είτε επειδή δεν χρησιµοποιείτε πλέον, είτε επειδή το σύστηµα θέλει να ελευθερώσει τους πόρους της µνήµης για χρήση από άλλη εφαρµογή. Με αυτό τον τρόπο το Android χρησιµοποιεί την αρχή των ελαχίστων δικαιωµάτων. Η κάθε εφαρµογή έχει πρόσβαση µέσω του AndroidManifest µόνο σε όσους πόρους συστήµατος χρειάζεται και κανέναν περισσότερο. Οι πόροι και τα δικαιώµατα που απαιτούνται από µία εφαρµογή γίνονται γνωστά στον χρήστη τη στιγµή της εγκατάστασης της, και ο χρήστης µπορεί να επιλέξει να µην εγκαταστήσει µια εφαρµογή εφόσον δεν συµφωνεί να τις παρέχει πρόσβαση στους πόρους που ζητάει. ~ 41 ~

42 ΚΕΦΑΛΑΙΟ 3 ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ 3.1 Βάσεις εδοµένων Οι βάσεις δεδοµένων και τα συστήµατα βάσεων δεδοµένων αποτελούν ένα σηµαντικό στοιχείο της καθηµερινής ζωής στην σύγχρονη κοινωνία. Η αγορά αντικειµένων από ένα σούπερ µάρκετ, η ανάληψη χρηµάτων, η κράτηση ταξιδιωτικών εισιτηρίων, η αναζήτηση στοιχείων σε µία βιβλιοθήκη, είναι ενέργειες αντιπροσωπευτικές αυτού που ονοµάζεται παραδοσιακές εφαρµογές βάσεων δεδοµένων, όπου οι περισσότερες πληροφορίες είναι σε µορφή text ή σε µορφή αριθµού. Οι βάσεις δεδοµένων και η τεχνολογία βάσεων δεδοµένων εξασκούν σηµαντική επίδραση στην αυξανόµενη χρήση των υπολογιστών. Μπορεί µε ασφάλεια να ειπωθεί ότι οι βάσεις δεδοµένων θα παίξουν κρίσιµο ρόλο σε όλες τις περιοχές που χρησιµοποιούνται υπολογιστές, όπως παραδειγµατικά µπορούµε να αναφέρουµε, η µηχανική, η ιατρική, τα νοµικά, η εκπαίδευση, η οικονοµία κ.ά. 3.2 Τι είναι η βάση δεδοµένων Βάση δεδοµένων είναι µία συλλογή από σχετιζόµενα δεδοµένα. Με τον όρο δεδοµένα, εννοούµε γνωστά γεγονότα που µπορούν να καταγραφούν και έχουν κάποια υπονοούµενη σηµασία. Ο όρος αυτός είναι αρκετά γενικός, γι αυτό συνήθως η χρήση του όρου βάση δεδοµένων έχει τις ακολουθούµενες υπονοούµενες ιδιότητες: * Μία βάση δεδοµένων αναπαριστά κάποια άποψη του πραγµατικού κόσµου η οποία µερικές φορές λέγεται µικρόκοσµος ή πεδίο αναφοράς. Οι αλλαγές στον µικρόκοσµο αντανακλώνται στην βάση δεδοµένων. * Μία βάση δεδοµένων είναι µία λογικά συνεκτική συλλογή δεδοµένων που έχει κάποια εγγενή σηµασία. Μία τυχαία διευθέτηση δεδοµένων δεν είναι σωστό να αναφέρεται ως βάση δεδοµένων. * Μία βάση δεδοµένων σχεδιάζεται, χτίζεται και γεµίζει µε δεδοµένα για κάποιο συγκεκριµένο σκοπό. Προορίζεται για µία συγκεκριµένη οµάδα χρηστών και για κάποιες προκαθορισµένες εφαρµογές για τις οποίες οι χρήστες αυτοί ενδιαφέρονται. 3.3 Σύστηµα ιαχείρισης Βάσεων εδοµένων Σύστηµα ιαχείρισης Βάσεων εδοµένων (Σ Β database management system DBMS) είναι µία συλλογή από προγράµµατα που επιτρέπουν στους χρήστες να δηµιουργήσουν και να συντηρήσουν µία βάση δεδοµένων. ~ 42 ~

43 Το Σ Β είναι ένα γενικής χρήσης (general-purpose) σύστηµα λογισµικού που διευκολύνει τις διαδικασίες ορισµού, κατασκευής και χειρισµού βάσεων δεδοµένων για διάφορες εφαρµογές. Ο ορισµός µίας βάσης δεδοµένων περιλαµβάνει την προδιαγραφή των τύπων, των δοµών και των περιορισµών των δεδοµένων που θα αποθηκευθούν στην βάση. Κατασκευή µίας βάσης δεδοµένων είναι η διαδικασία αποθήκευσης των ίδιων των δεδοµένων σε ένα µέσο αποθήκευσης που ελέγχεται από το Σ Β. Ο χειρισµός µίας βάσης δεδοµένων περιλαµβάνει ορισµούς, όπως υποβολή επερωτήσεων προς την βάση για ανάκτηση συγκεκριµένων δεδοµένων, ενηµέρωση της βάσης ώστε να αντανακλά αλλαγές στον µικρόκοσµο και παραγωγή αναφορών για τα δεδοµένα. Εικόνα 12: Σύστηµα διαχείρισης βάσεων δεδοµένων ~ 43 ~

44 3.3.1 Χαρακτηριστικά της Προσέγγισης Βάσης εδοµένων Ένα σύνολο διαφορετικών χαρακτηριστικών ξεχωρίζουν την προσέγγιση βάσεων δεδοµένων από την παραδοσιακή προσέγγιση του προγραµµατισµού µε χρήση αρχείων. Στην κλασσική επεξεργασία αρχείων κάθε χρήστης ορίζει και δηµιουργεί αρχεία που χρειάζεται για µία συγκεκριµένη εφαρµογή. Ένας χρήστης στην Γραµµατεία, για παράδειγµα, µπορεί να τηρεί ένα αρχείο για τους φοιτητές και τους βαθµούς τους και να έχει κατασκευάσει προγράµµατα για να τυπώνει αναλυτικές βαθµολογίες και να εισάγει νέους βαθµούς στο αρχείο. Ένας δεύτερος χρήστης στο λογιστήριο µπορεί να παρακολουθεί τα δίδακτρα και τις πληρωµές των φοιτητών. Ενώ και οι δύο χρήστες ενδιαφέρονται για τα δεδοµένα των φοιτητών, κάθε χρήστης τηρεί ξεχωριστά αρχεία και προγράµµατα για τον χειρισµό τους διότι ο καθένας απαιτεί κάποια δεδοµένα που δεν είναι διαθέσιµα στα αρχεία του άλλου. Αυτός ο πλεονασµός στον ορισµό και την αποθήκευση των δεδοµένων έχει ως αποτέλεσµα να σπαταλάται αποθηκευτικός χώρος και να καταβάλεεται πρόσθετος κόπος για την διατήρηση των κοινών δεδοµένων σε ενηµερωµένη µοφρή. Στην προσέγγιση των βάσεων δεδοµένων, διατηρείται ένας και µοναδικός ταµιευτήρας δεδοµένων που ορίζεται µία φορά και στην συνέχεια προσπελάζεται από τους διάφορους χρήστες. Οι κύριες διαφορές της προσέγγισης βάσεων δεδοµένων από την προσέγγιση επεξεργασίας αρχείων είναι οι επόµενες [9]: * Η αυτοπεριγραφική φάση ενός συστήµατος βάσης δεδοµένων * Αποµόνωση µεταξύ προγραµµάτων και δεδοµένων και αφαίρεση δεδοµένων * Υποστήριξη πολλών όψεων των δεδοµένων * Μοίρασµα των δεδοµένων και επεξεργασία δοσοληψιών από πολλούς χρήστες ~ 44 ~

45 ΚΕΦΑΛΑΙΟ 4 ΠΡΟΓΡΑΜΜΑΤΑ ΠΟΥ ΧΡΗΣΙΜΟΠΟΙΗΘΗΚΑΝ ΓΙΑ ΤΗΝ ΒΑΣΗ Ε ΟΜΕΝΩΝ ΚΑΙ ΤΗΝ ΗΜΙΟΥΡΓΙΑ ΤΗΣ ΕΦΑΡΜΟΓΗΣ ΤΟΥ ΚΙΝΗΜΑΤΟΓΡΑΦΟΥ 4.1 Τι είναι ο XAMPP; Το XAMPP είναι ένα πρόγραµµα ελεύθερου λογισµικού µε µηδενικό κόστος. To XAMPP αποτελεί στην ουσία ένα πακέτο, το οποίο περιλαµβάνει τις τελευταίες εκδόσεις του Apache HTTP Server, της PHP και της MySQL βάσης δεδοµένων, µεταγλωτιστές σεναρίων γραµµένους στις γλώσσες προγραµµατισµού PHP και Perl, ενώ περιλαµβάνει επίσης και αλλα τρία χρήσιµα εργαλεία, που θα χρειαστούµε στην συνέχεια (PhpMyAdmin, Filezilla Server, Mercury Mail). To XAMPP διατίθεται και αυτό δωρεάν από την σελίδα για διάφορα λειτουργικά συστήµατα (Linux, Windows, Solaris, Mac). Το Control Panel του Xampp. Το όνοµα XAMPP είναι αρκτικόλεξο(ακρωνύµιο) και σηµαίνει : 1 Χ (σηµαίνει πως είναι χιαστή πλατφόρµα) 2 Apache HTTP Server 3 MySQL 4 PHP 5 Perl Το πρόγραµµα έχει δηµιουργηθεί κάτω από την άδεια χρήσης GNU (General Public License) και συµπεριφέρεται σαν ένας web server χωρίς κόστος ικανός να φιλοξενεί πολλές δυναµικές ιστοσελίδες. Το XAMPP είναι διαθέσιµο στα Microsoft Windows, Linux, Solaris, και Mac OS X, και είναι κυρίως χρήσιµο για ανάπτυξη web projects Αρχιτεκτονική του XAMPP; Η εφαρµογή που αναπτύχθηκε έχει σχεδιαστεί έχοντας ως βάση την µέγιστη δυνατή λειτουργικότητα. Έτσι έχει προσεχθεί ώστε να είναι : ανεξάρτητη λειτουργικού συστήµατος (δηλαδή µπορεί να εγκατασταθεί σε οποιοδήποτε λειτουργικό σύστηµα) προσπελάσιµη µέσω οποιουδήποτε φυλλοµετρητή (browser) πλήρως σπονδυλωτή στη δοµή της, δηλαδή να χρησιµοποιεί αρθρώµατα (modules) για τις διάφορες λειτουργίες που εκτελεί προσιτή στη διαχείριση από τον διδάσκοντα. Οι παραπάνω ιδιότητες-στόχοι οδηγούν σε ένα σύστηµα υλικού (H/W) και λογισµικού (S/W) το οποίο αποτελείται από : τη βάση δεδοµένων που περιέχει όλες τις απαραίτητες πληροφορίες για τη λειτουργία του συστήµατος ~ 45 ~

46 τα αποθηκευτικά µέσα, δηλαδή τους υπολογιστές που φιλοξενούν το υλικό του µαθήµατος το περιβάλλον εργασίας, δηλαδή το λογισµικό διεπαφής που επεξεργάζεται τις πληροφορίες και κάνει δυνατή την αλληλεπίδραση των χρηστών µε το εκπαιδευτικό υλικό. Η εφαρµογή είναι βασισµένη στο πρότυπο τύπου «πελάτη-εξυπηρετητή» (clientserver). Εγκαθίσταται σε οποιοδήποτε λειτουργικό σύστηµα, υποστηρίζει web server τύπου Apache ή Microsoft IIS, ενώ στηρίζεται εξ ολοκλήρου σε περιβάλλοντα «ανοιχτού κώδικα» (open source) για την λειτουργία της. Για την ανάπτυξη του ιστογενούς περιβάλλοντος της εφαρµογής και των αλγορίθµων της χρησιµοποιήθηκε η γλώσσα PHP (Pre Hypertext Processor). Εικόνα 13: Αρχική σελίδα του XAMPP Απαιτήσεις και χαρακτηριστικά του XAMPP. Tο XAMPP απαιτεί µόνο ένα zip, πίσσα ή exe αρχείο που θα κατεβάσει και να τρέξει, και µικρή ή δεν διάρθρωση των επιµέρους στοιχείων που συνθέτουν τον web server απαιτείται. XAMPP ενηµερώνεται τακτικά να συµπεριλάβει τις τελευταίες εκδόσεις του Apache / MySQL / PHP και Perl. Επίσης, έρχεται µε µια σειρά από άλλες µονάδες, συµπεριλαµβανοµένων OpenSSL και phpmyadmin. Η Εγκατάσταση XAMPP απαιτεί λιγότερο χρόνο από την εγκατάσταση κάθε στοιχείου του ξεχωριστά. Αυτοτελές, πολλαπλές παρουσίες του XAMPP µπορεί να υπάρχει σε έναν υπολογιστή, καθώς και κάθε δεδοµένη περίσταση µπορούν να αντιγραφούν από έναν υπολογιστή στον άλλο. Προσφέρεται σε δύο πλήρη εκδόσεις, κανονική έκδοση και µια µικρότερη έκδοση. ~ 46 ~

47 4.1.3 Εγκατάσταση του XAMPP. Για να ξεκινήσουµε τη δηµιουργία της ιστοσελίδας που πρόκειται να δηµιουργήσουµε θα πρέπει να κατεβάσουµε αρχικά ένα τοπικό server για τους πειραµατισµούς µας, όπως είναι ο XAMPP. Το συγκεκριµένο πρόγραµµα µπορούµε να το κατεβάσουµε από τη διεύθυνση : Ανοίγωντας ένα καινούργιο παράθυρο µε τον browser, τον οποίο χρησιµοποιούµε, πληκτρολογούµε την παραπάνω διεύθυνση. Στη συνέχεια, επιλέγουµε τη δεύτερη επιλογή «XAMPP for Windows», όπως βλέπουµε και στην παραπάνω εικόνα (PrintScreen). Αµέσως µας ανοίγει µία σελίδα που µας επιτρέπει να κατεβάσουµε το πρόγραµµα, πατώντας «Installer». Εικόνα 14: Επιλογή έκδοσης του XAMPP Αφού το κάνουµε αυτό, µας εµφανίζει ένα παράθυρο όπου µπορούµε να κατεβάσουµε το αρχείο.exe του συγκεκριµένου προγράµµατος, στον υπολογιστή µας ώστε αργότερα να προχωρήσουµε στην εγκατάσταση του. ~ 47 ~

48 Εικόνα 15: Κατέβασµα του XAMPP ~ 48 ~

49 Ακολούθως, πατάµε «Αποθήκευση Αρχείου» και το εκτελέσιµο πρόγραµµα ( Xampp.exe )αποθηκεύεται στον προεπιλεγµένο φάκελο του υπολογιστή µας (π.χ. Downloads ). Εκεί, αφού το βρούµε, κάνουµε διπλό κλικ ώστε να ξεκινήσει η εγκατάσταση. Αφού έχει εγκατασταθεί ο xampp, πάµε στην επιφάνεια εργασίας και κάνουµε διπλό κλικ στο εικονίδιο XAMPP Control Panel. Αυτό θα µας εµφανίσει την παρακάτω εικόνα. Εικόνα 16: XAMPP Control Panel Άρα, ο τοπικός µας server βρίσκεται σε λειτουργία. Μετά κάτω από το µενού Έναρξη (Start) του υπολογιστή µας, δηµιουργήθηκε ένας νέος κατάλογος εφαρµογών µε το το όνοµα apachefriends, που περιέχει όλες τις εντολές που χρειαζόµαστε για να λειτουργήσουµε την εφαρµογή. Έτσι κάνοντας κλικ στο «xampp basic start» ξεκινάµε την εφαρµογή, κάνοντας κλικ στο «xampp basic stop» σταµατάµε την εφαρµογή. Κάνοντας κλικ στο «xampp httpdoc folder» βλέπουµε σε ποιο κατάλογο αποθηκεύονται τα αρχεία που δηµιουργούν τις σελίδες µας. Σηµαντικό στοιχείο είναι ότι µαζί µε το xampp εγκαθίσταται αυτόµατα και η εφαρµογή phpmyadmin για τη διαχείριση βάσεων δεδοµένων MySQL. Πρέπει να σηµειώσουµε ότι, επειδή τρέξαµε υπηρεσίες, χρειάστηκε να έχουµε δικαιώµατα διαχειριστή και όχι του απλού χρήστη. Επιπλέον, δεν θέλαµε να γίνεται αυτόµατη εκκίνηση και δεν έπρεπε ποτέ να πατήσουµε την επιλογή Svc, διότι θα είχαν εγκατασταθεί ως υπηρεσίες (services.exe). Εφόσον είχε τελειώσει η παραπάνω ~ 49 ~

50 διαδικασία (close this wizard) από το Start Control Panel πατήσαµε το κουµπί Start και περιµέναµε να γίνει πράσινο στον Apache και στην MySql. Επόµενο βήµα ήταν να ανοίξουµε τον φυλλοµετρητή web browser και να µεταβούµε στην ιστοσελίδα µας : ή στο διαχειριστικό κοµµάτι του προγράµµατος : Εικόνα 17: Localhost του XAMPP Στην επιλογή Status µπορούµε να δούµε ποιες υπηρεσίες είναι ACTIVATED. Παρατηρούµε ότι όσες θέλουµε είναι ενεργές. Αυτό που πρέπει να κάνουµε αρχικά είναι να πάµε στην επιλογή Security και να κάνουµε τις αλλαγές που µας προτείνει το xampp για να αυξήσουµε την ασφάλεια του τοπικού µας server. Τελικά θα έχουµε το παρακάτω αποτέλεσµα και είµαστε έτοιµοι να ξεκινήσουµε να διαχειριζόµαστε τον τοπικό µας server. ~ 50 ~

51 Εικόνα 18: XAMPP Security θα κάνουµε login µε τα στοιχεία που ορίσαµε προηγουµένως όπως στην εικόνα παρακάτω. Εικόνα 19: Login στο PhpMyAdmin ~ 51 ~

52 Μετά πάµε στην καρτέλα databases και στο σηµείο create new database βάζουµε το όνοµα που θέλουµε να έχει η βάση µας και πατάµε create. Εικόνα 20: Create Database Ετσι λοιπόν δηµιουργήσαµε την βάση δεδοµένων µας. 4.2 Εγκατάσταση του NOTEPAD++. Το πρόγραµµα αυτό είναι διαθέσιµο για κατέβασµα από την ιστοσελίδα Αφού µπούµε στην σελίδα πατάµε Download και κατεβάζουµε το εκτελέσιµο αρχείο (.exe) και είµαστε έτοιµοι να ξεκινήσουµε την εγκατάσταση. ~ 52 ~

53 Αφού πατήσουµε διπλό κλικ στο εκτελέσιµο αρχείο µας εµφανίζεται η παρακάτω οθόνη στην οποία επιλέγουµε γλώσσα. Εικόνα 21: Notepad ++ Επιλογή Γλώσσας Σε αυτή την οθόνη η εγκατάσταση µας καλωσορίζει στο πρόγραµµα και εµείς απλώς πατάµε επόµενο. Εικόνα 22: Notepad ++ Welcome ~ 53 ~

54 Εδώ εµφανίζεται η άδεια χρήσης του προγράµµατος και το µόνο που έχουµε να κάνουµε είναι να συµφωνήσουµε για να προχωρήσει η εγκατάσταση. Εικόνα 23: Notepad ++ License Agreement Στην επόµενη οθόνη πρέπει να επιλέξουµε το µέρος που θέλουµε να εγκαταστήσουµε το πρόγραµµα και µετά πατάµε Επόµενο. ~ 54 ~

55 Εικόνα 24: Notepad ++ Folder Selection Σε αυτή την οθόνη ενηµερωνόµαστε ότι η εγκατάσταση ολοκληρώθηκε µε επιτυχία και πατάµε Τέλος. Εικόνα 25: Notepad ++ Finish ~ 55 ~

56 Αυτό είναι το τελικό περιβάλλον που πρέπει να έχουµε αφού ολοκληρωθεί η εγκατάσταση. Εικόνα 26: Notepad ++ Τελικό περιβάλλον ~ 56 ~

57 ΚΕΦΑΛΑΙΟ 5 ΠΡΟΓΡΑΜΜΑΤΑ ΠΟΥ ΧΡΗΣΙΜΟΠΟΙΗΘΗΚΑΝ ΓΙΑ ΤΗΝ ANDROID ΕΦΑΡΜΟΓΗ 5.1 Μια Android application µε την χρήση των SDK και Eclipse Ο σκοπός αυτής της εφαρµογής είναι να βοηθήσει όσους ενδιαφέρονται να γράψουν apps για Android. Σε αυτήν την εφαρµογή θα εξετάσουµε ολόκληρο τον κύκλο της ανάπτυξης εφαρµογής, ξεκινώντας µε ένα καθαρό υπολογιστή µέχρι το τελικό.apk αρχείο. 5.2 Προετοιµασία Για την προετοιµασία της εφαρµογής απαιτείται η εγκατάσταση µερικών λειτουργικών προγραµµάτων που αναφέρονται λεπτοµερώς πιο κάτω. εν θα υπάρξουν δραµατικές αλλαγές αν χρησιµοποιείτε άλλη έκδοση των Windows ή Linux. Εγκατάσταση του Eclipse IDE Εγκατάσταση ADT plugin για το Eclipse Εγκατάσταση JDK και JRE Εγκατάσταση του Android SDK Εγκατάσταση του Eclipse IDE Επιλέγουµε την ενότητα Downloads στο επίσηµο site και εγκαθιστούµε την έκδοση Classic. Στη συνέχεια αποσυµπιέζουµε το αρχείο οπουδήποτε θέλουµε (εν προκειµένω, στο φάκελο C:\Eclipse Εγκατάσταση του περιβάλλοντος Java JDK και JRE). Αν δεν έχουµε ήδη εγκαταστήσει το Java Development Kit (JDK) και Java Runtime Environment (JRE), τότε θα πρέπει να το κάνουµε. Αυτό είναι κάτι που γίνεται στο site της Oracle (www.oracle.com/technetwork/java/javase/downloads/index.html), επιλέγοντας «Λήψη και εγκατάσταση του JDK και JRE». ~ 57 ~

58 Εικόνα 27: Εγκατάσταση Java SE Εγκατάσταση του ADT plugin για το Eclipse Τρέχουµε το Eclipse. Αρχικά θα µας ζητηθεί να επιλέξουµε τον φάκελο που θα αποθηκεύονται τα projects µας. Για την παρούσα εργασία επιλέχθηκε το C:\Eclipse\Projects. Τώρα πρέπει να εγκαταστήσουµε το plugin, επιλέγοντας στο Help->Install New Software. Στο πεδίο Work With γράφουµε https://dlssl.google.com/android/eclipse/ και πατάµε add. Στο παράθυρο που θα ανοίξει γράφουµε ένα όνοµα ώστε αργότερα να µπορούµε να τα διαχωρίζουµε. ~ 58 ~

59 Εικόνα 28: Εγκατάσταση του ADT PlugIn Επιλέγουµε το Developer tools και πατάµε next. ~ 59 ~

60 Εικόνα 29: Ολοκλήρωση εγκατάστασης ADT PlugIn Αφού ολοκληρωθεί η εγκατάσταση κάνουµε επανεκκίνηση του Eclipse Εγκατάσταση του Android SDK Κατεβάζουµε το SDK από το επίσηµο site του Αndroid. Για τις ανάγκες της εργασίας, επιλέχθηκε το.zip αρχείο και έγινε unzip στο C:\Android. Τρέχουµε το αρχείο SDK Manager.exe που βρίσκεται στον φάκελο Android και στο παράθυρο που θα ανοίξει, επιλέγουµε τις εκδόσεις του Android και διάφορα άλλα στοιχεία που θέλουµε να χρησιµοποιήσουµε και πατάµε το install. ~ 60 ~

61 Εικόνα 30: Android SDK Installation Όταν ολοκληρωθεί η εγκατάσταση, πατάµε Restart και κλείνουµε τα παράθυρα. 5.3 ηµιουργία Android-εφαρµογής Μια καλή συµβουλή πριν από τη δηµιουργία της πρώτης εφαρµογής, είναι η δηµιουργία µιας εικονικής Android συσκευής για τον ταχύτερο έλεγχο του λογισµικού. Το Android Virtual Device (AVD) είναι ένα τέτοιο εικονικό smartphone που τρέχει Android, στο οποίο µπορούµε εύκολα να εκτελέσουµε οποιοδήποτε πρόγραµµα έχουµε δηµιουργήσει. Το προφανές πλεονέκτηµα του AVD είναι ότι µπορούµε να δούµε πώς το λογισµικό µας θα προβάλλεται σε διαφορετικά smartphones τα οποία υποστηρίζουν Android, αντί να τα αγοράσουµε (κάτι που είναι πρακτικά και κυρίως, οικονοµικά αδύνατον) και να κάνουµε τις απαραίτητες δοκιµές στο καθένα ξεχωριστά. Πριν φτιάξουµε το AVD, πρώτα θα συνδέσουµε το Android SDK, επιλέγοντας στο Window->Preferences. Στο παράθυρο που ανοίγει, πάµε στο Android και εκεί επιλέγουµε το φάκελο που έχουµε κάνει Unzip το SDK, πατάµε Apply και τέλος ΟΚ. ~ 61 ~

62 Εικόνα 31: Eclipse Android Preferences Τώρα πάµε στο Window -> Android SDK and AVD Manager, πατάµε New και διαλέγουµε τα χαρακτηριστικά που θέλουµε να έχει το εικονικό smartphone µας. Εικόνα 32: ηµιουργία AVD ~ 62 ~

63 Κλείνουµε το παράθυρο και πάµε στο File -> New -> Other, όπου επιλέγουµε το Android -> Android Project. Εικόνα 33: ηµιουργία Android Project Πατάµε Finish και το project έχει δηµιουργηθεί και είναι έτοιµο για αλλαγές. 5.4 AndroidScreencast Πρόγραµµα για παρουσίαση της πτύχιακης σε υπολογιστή. Για την παρσουσίαση της πτυχιακής χρησιµοποιήθηκε το androidscreencast για Ubuntu Αρχικά κατεβαίνει το androidscreencast απο την σελίδα (https://code.google.com/p/androidscreencast/). Στην συνέχεια γίνεται έλεγχος εάν η συσκευή έχει ανιχνευτεί εκτελώντας το παρακάτω στο terminal: adb devices Τέλος εκτελείται το androidscreencast εκτελώντας το παρακάτω στο terminal: ~ 63 ~

64 $ wget eencast.jnlp $ javaws androidscreencast.jnlp Και το πρόγραµµα είναι έτοιµο για χρήση. Εικόνα 34: Android ScreenCast ~ 64 ~

65 ΚΕΦΑΛΑΙΟ 6 Η ΒΑΣΗ ΤΗΣ ΕΦΑΡΜΟΓΗΣ 6.1 Η δηµιουργία της βάσης Αφού ανοίξουµε το XAMPP και κάνουµε login στο µπορούµε να στήσουµε την βάση δεδοµένων µας.η δικιά µας βάση αποτελείται από τους εξής πίνακες : * loginuser * movie * moviedate * chair * customer Εικόνα 35: Το αρχικό µενού του PhpMyAdmin ~ 65 ~

66 Στην παρακάτω εικόνα µπορούµε να δούµε απο τι αποτελείται ο πίνακας loginuser ο οποίος έχει τις εγγραφές των διαχειριστών: Εικόνα 36: Περιεχόµενα του loginuser ~ 66 ~

67 Ύστερα βλέπουµε τον πίνακα movie πους µας δίνει πληροφορίες για τις ταινίες: Εικόνα 37: Movie Table Ύστερα βλέπουµε τον πίνακα moviedate πους µας δίνει πληροφορίες για ώρεςηµεροµηνίες προβολών: ~ 67 ~

68 Εικόνα 38: moviedate Table Ύστερα βλέπουµε τον πίνακα chair πους µας δίνει πληροφορίες για τις θέσεις στην εκάστοτε προβολή : ~ 68 ~

69 Εικόνα 39: chair Table ~ 69 ~

70 Και στον τέλος βλέπουµε τον πίνακα customer πους µας δίνει πληροφορίες για τον εκάστοτε πελάτη : Εικόνα 40: customer Table Στην επόµενη εικόνα βλέπουµε τον πίνακα συσχετίσεων και την σχέση µεταξύ πινάκων µε την βοήθεια foreign keys : ~ 70 ~

71 Εικόνα 41: Πίνακας συσχετίσεων βάσης Αφού σώσουµε την βάση µας στον φάκελο htdocs του XAMPP πλέον µε την βοήθεια του notepad++ µπορούµε να αρχίσουµε το στήσιµο τις webpage µας. ~ 71 ~

72 ΚΕΦΑΛΑΙΟ 7 Η ΕΦΑΡΜΟΓΗ ΤΗΣ ΙΣΤΟΣΕΛΙ ΑΣ 7.1 Συσχέτιση βάσης δεδοµένων µε την ιστοσελίδα Για να µπορέσουµε να έχουµε εύκολη πρόσβαση στην βάση δεδοµένων αρχικά δηµιουργήσαµε την credentials.php που χρησιµοποιείτε συχνά <?php $db_hostname = 'localhost'; $db_database = 'booking_seats'; $db_username = 'root'; $db_password = 'tbs'; $db_server = mysql_connect($db_hostname, $db_username, $db_password); if (!$db_server) die("unable to connect to MySQL: ". mysql_error()); mysql_select_db($db_database) or die("unable to select database: ". mysql_error());?> ~ 72 ~

73 7.2 Εισαγωγή στην σελίδα του Admin Αρχικά για να µπορέσει να ο διαχειριστής να εισέλθει στην σελίδα επιλογής ταινίας και ηµεροµηνίας θα πρέπει να δώσει το όνοµα-χρηστη(username) και τον κωδικό(password). Εικόνα 42: Login Page της ιστοσελίδας του κινηµατογράφου Στην συγκεκριµένη οθόνη χρησιµοποιήθηκε ο κώδικας: <html> <head> <title>login Page</title> </head> <body> <img src="http:// /kaanton/ptuxiaki//images/login.png"> <h1>please login</h1> <label for="username">username: </label><input id="username" name="username" type="text" /><br/><br/> <label for="password">password: </label><input id="password" name="password" type="password" /><br/><br/> <button id="submitbtn">submit</button> ~ 73 ~

74 <button id="resetbtn">reset</button> <script type="text/javascript" src="http:// /kaanton/ptuxiaki/js/jquery min.js"></script> <script type="text/javascript" src="http:// /kaanton/ptuxiaki/js/jquery.loginuser.js"></script> </body> </html> Βεβαια χρησιµοποιήσαµε και τα js και για να µην µπορεί να αποκρυπτογραφηθεί εύκολα ο κωδικός χρησιµοποιήθηκε και το πρωτόκολλο MD5 όπως φαίνεται στον παρακάτω κώδικα: $inputusername = $_POST["username"]; $inputpassword = $_POST["password"]; $salt = "secret"; $token = md5("$salt$inputpassword$salt"); $query = "SELECT username, password FROM loginuser WHERE username = '$inputusername' AND password = '$token'"; $result = mysql_query($query); 7.3 Οθόνη επιλογής ταινίας-ηµεροµηνίας Αρχικά ζητείται από τον χρηστη-admin να επιλέξει ταινία στο dropdown menu και ύστερα εµφανίζεται ένα δεύτερο dropdown menu µε τις ηµεροµηνίες-ώρες τις συγκεκριµένης ταινίας. ~ 74 ~

75 Εικόνα 43: Η οθόνη επιλογής ταινίας Η σελίδα και το γραφικό τις περιβάλλον φαίνεται στον εξής κώδικα cinemas.php: img src="http:// /kaanton/ptuxiaki/images/welcome_screen.png"> <p>here, you can get info about the available movies..</p> <form id="form1" name="form1" method="post" action="http:// /kaanton/ptuxiaki/cinemas_chairs.php"> movie List : <select id="movietitle" name="movietitle"> ~ 75 ~

76 <option value="">--- Select ---</option> </option> </select> <option value="1"> RAMBO <option value="5"> HANGOVER <option value="9"> SILENT HILL <option value="13"> GANGSTER SQUAD </option> </option> </option> Αφού γίνει η επιλογή ταινίας το δεύτερο dropdown menu εµφανίζεται όπως φαίνεται στον έξης κώδικα: <div id="selectboxdatecontainer"></div> <input type="submit" id="submitformbtn" name="submitformbtn" value="select" /> και η αντιστοίχιση ταινίας ηµεροµηνίας-ώρας έγινε µε την βοήθεια του κώδικα: "movie Dates: <select id='moviedate' name='moviedate'><option value=''>no available dates<\/option><\/select>" 7.4 Οθόνη διαχείρισης θέσεων Αφού κλικάρουµε το κουµπί select περνάµε στην οθόνη που µας δίνει τις πληροφορίες για τις κρατήσεις θέσεων και τα στοιχεία του κάθε πελάτη ~ 76 ~

77 Εικόνα 44: Η οθόνη διαχείρισης θέσεων 7.5 Γραφικό περιβάλλον Στον κώδικα που ακολουθεί βλέπουµε τις διαθέσιµες ή κρατηµένες ήδη και της πληροφορίες για τον πελάτη: <?php ~ 77 ~

78 moviedate.date_id $query = "SELECT chair.number, chair.booked, chair.chair_id, FROM moviedate INNER JOIN chair ON moviedate.date_id = chair.date_id WHERE chair.date_id = '". $_POST["movieDate"]. "'"; $result = mysql_query($query); $moviedate = ""; $i = 0; $number = 0; while($row_chair=mysql_fetch_assoc($result)) { $moviedate = $row_chair['date_id']; $chairimage = "http:// /kaanton/ptuxiaki/images/chair_empty.png"; if ($row_chair['booked'] == 'yes') { $chairimage = "http:// /kaanton/ptuxiaki/images/chair.png"; } if($i % 10 == 0){ if ($i == 0){ echo ""; } else{ echo $number. "<br/>"; } $number++; } echo "<a href='#' class='chair' data-chairid='". $row_chair['chair_id']. "'><img src='". $chairimage. "' width='90' height='60' border='0' /></a>"; $i++; } echo $number;?> </div> <div style="float:right;"> <label for="name">name: </label><input type="text" name="name" id="name" value="" /><br/> <label for="phone">phone: </label><input type="text" name="phone" id="phone" value="" /><br/> <label for=" "> </label><input type="text" name=" " id=" " value="" /><br/> <input id="thechairid" type="hidden" value="" /> ~ 78 ~

79 <input id="movietitle" type="hidden" value="<?php echo $_POST["movieTitle"];?>" /> <input id="moviedate" type="hidden" value="<?php echo $_POST["movieDate"];?>" /> <button id="submitcustomerchange">change</button> <button id="resetcustomerform">reset</button><br/> <span id='successdeletednotif'></span> </div> 7.6 Ανανέωση Βάσης στον πίνακα Customer Ο διαχείρισης έχει την δυνατότητα κράτησης θέσεων (update query) και ακύρωσης ήδη κρατηµένων θέσεων(delete query) στον κώδικα που ακολουθεί: if(isset($_post["remove"]) && isset($_post["thechairid"])) { $query = "DELETE FROM customer WHERE customer.chair_id = '$thechairid'"; $result = mysql_query($query); $query = "UPDATE chair SET booked = 'no' WHERE Chair_id = '$thechairid'"; $result = mysql_query($query); $output = array( "status" => true, "message" => "Existing customer deleted." ); } else if(isset($_post["name"]) && isset($_post["phone"]) && isset($_post[" "]) && isset($_post["thechairid"])){ $query = "SELECT * FROM customer WHERE customer.chair_id = '$thechairid'"; $result = mysql_query($query); // for update existing customer if ( mysql_num_rows($result) ) { $query = "UPDATE customer SET chair_id='$thechairid', name='$name', phone='$phone', ='$ ' WHERE customer.chair_id = '$thechairid'"; $result = mysql_query($query); $output = array( "status" => true, ~ 79 ~

80 "message" => "Existing customer updated." ); } // new customer else { $query = "INSERT INTO customer (chair_id, name, phone, ) VALUES ('$thechairid', '$name', '$phone', '$ ')"; $result = mysql_query($query); $query1 = "UPDATE chair SET booked='yes' WHERE chair_id='$thechairid'"; $result1 = mysql_query($query1); } } $output = array( "status" => true, "message" => "New customer inserted." );?> echo json_encode($output); 7.7 Αποστολή Ο διαχειριστής έχει την δυνατότητα να αποστείλει µαζικά η ατοµικά όπως φαίνεται στον κώδικα : <?php $ array = $_POST[" Array"]; $ messagebody = $_POST[" MessageBody"]; $to = implode(',', $ array); $subject = "Test mail"; $message = $ messagebody; $from = $headers = "From:". $from; mail($to,$subject,$message,$headers); $output = array( ); "message" => "The s were sent successfully!" ~ 80 ~

81 echo json_encode($output);?> Βέβαια για να σταλθεί το πρέπει να γίνουν και οι κατάλληλες ρυθµίσεις στο XAMPP, αφού ανοίξουµε στο XAMPP ενεργοποιούµε Apache MySQL και Mercury όπως φαίνεται παρακάτω : Εικόνα 45: Ενεργοποίηση Apache MySQL Mercury στο XAMPP Ύστερα βρίσκουµε το php.ini και sendmail.ini τα οποια βρίσκονται στον φάκελο του XAMPP και κάνουµε τις εξής αλλαγές βάζοντας το smtp του παρόχου µας όπως φαίνεται: php.ini: [mail function] ; XAMPP: Comment out this if you want to work with an SMTP Server like Mercury SMTP = smtp.hol.gr smtp_port = 25 ; For Win32 only. ; ~ 81 ~

82 sendmail_from = sendmail.ini: smtp_server=smtp.hol.gr ; smtp port (normally 25) smtp_port=25 ~ 82 ~

83 ΚΕΦΑΛΑΙΟ 8 TBS SYSTEM ANDROID APP 8.1 Εγκατάσταση του TBS-SYSTEM Αρχικά για να µπορέσει να χρησιµοποιηθεί το TBS System από το smartphone του χρήστη πρέπει να γίνει η εγκατάσταση της εφαρµογής. Αφού αντιγραφτεί το apk της εφαρµογής στην κάρτα sd του κινητού η εγκατάσταση µπορεί να γίνει απλώς επιλέγοντας το <Theater Booking Seat System.apk>. Στην συνέχεια ζητείται από τον χρήστη αν θέλει να γίνει η εγκατάσταση του <TBS System>, επιλέγοντας το <Install> ο χρήστης επιτρέπει την εγκατάσταση της εφαρµογής στο κινητό του. Μετά από λίγα δευτερόλεπτα η εγκατάσταση της εφαρµογής έχει ολοκληρωθεί και είναι έτοιµη για χρήση. Το TBS System πλέον µπορεί να βρεθεί στο µενού των εφαρµογών του χρήστη. Εικόνα 46: Επιλογή του TheaterBookingSeatSystem.apk Εικόνα 47: Ο χρήστης επιλέγει το install για την εγκατάσταση του TBS System Εικόνα 48: Εγκατάσταση της εφαρµογής Εικόνα 49: Η εγκατάσταση έχει ολοκληρωθεί και η εφαρµογή TBS System είναι έτοιµη προς χρήση ~ 83 ~

84 8.2 Εκτέλεση και οθόνη εισαγωγής Αµέσως µετά την εγκατάσταση του TBS System µπορεί πλεον να γίνει η εκτέλεση Εικόνα 50: Ο χρήστης επιλέγει το TBS System και η εφαρµογή εκτελείται. της εφαρµογής από τον χρήστη. Από την στιγµή που ο χρήστης επιλέξει την εφαρµογή, το AndroidManifest.xml αναζητάει και εκτελεί το activity που είναι στο category.launcher. Συγκεκριµένα εδω: <activity android:name=".welcome_screen" android:configchanges="orientation" android:label="tbs System" > <intent-filter> <action android:name="com.theatre.booking.seat.system.welcome_screen" /> <category android:name="android.intent.category.default" /> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> </activity> ~ 84 ~

85 Με το συγκεκριµένο activity θα εκτελεστεί η java που βρίσκεται στο android:name συγκεκριµένα εδώ θα εκτελεστεί το welcome_screen.java και ουσιαστικά πλέον η εφαρµογή αρχίζει να εµφανίζει το γραφικό περιβάλλον της εφαρµογής στον χρήστη. Το welcome_screen.java για να εµφανίσει το εισαγωγικό µήνυµα χρείαζεται να φορτώσει το αντίστοιχο layout. Αυτό γίνεται από το setcontentview. Συγκεκριµένα εδώ: setcontentview(r.layout.welcome_screen); Στο R.layout βρίσκονται όλα τα layout της εφαρµογής, ουσιαστικά δηλαδή το γραφικό περιβάλλον της εφαρµογής. Συγκεκριµένα εδώ η welcome_screen.java εµφανίζει το layout welcome_screen.xml το οποίο εµφανίζει στον χρήστη το εξής: Εικόνα 51: Το Welcome Screen της εφαρµογής Η συγκεκριµένη εικόνα εµφανίζεται µέσα απο την welcome_screen.xml µέσω της συγκεκριµένης εντολής: > Εδώ συγκεκριµένα η εικόνα welcome_screen.png που βρίσκεται στον φάκελο drawable µέσα στο res(resources) ανακαλείται και εµφανίζεται, ενώ συγχρόνως ακούγεται µία µελωδία η οποία εκτελείται µέσω της συγκεκριµένης εντολής στην welcome_screen.java: mplogo_snd = MediaPlayer.create(this, R.raw.logo_sound); if(mplogo_snd!= null) mplogo_snd.start(); Τέλος η εφαρµογή ελέγχει αν υπάρχει διαθέσιµη σύνδεση ώστε να τραβήξει τα δεδοµένα απο τον webserver. ~ 85 ~

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

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

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

Τεχνικός Εφαρμογών Πληροφορικής

Τεχνικός Εφαρμογών Πληροφορικής Τεχνικός Εφαρμογών Πληροφορικής ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΕΙΣΑΓΩΓΗ Εξάμηνο: 2014Β Διδάσκουσα: Ηλεκτρονική Τάξη: Κανελλοπούλου Χριστίνα_ΠΕ19 Πληροφορικής Περιεχόμενα 1.Τι είναι η Php; 2.Πως γίνετε η γραφή

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

Ανάπτυξη εφαρμογής ηλεκτρονικού πίνακα ανακοινώσεων για φορητή συσκευή

Ανάπτυξη εφαρμογής ηλεκτρονικού πίνακα ανακοινώσεων για φορητή συσκευή Διατμηματικό Πρόγραμμα Μεταπτυχιακών Σπουδών στα Πληροφοριακά Συστήματα (Master in Information Systems MIS) Διπλωματική εργασία με θέμα: Ανάπτυξη εφαρμογής ηλεκτρονικού πίνακα ανακοινώσεων για φορητή συσκευή

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

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

ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ 1 ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΥΛΟΠΟΙΗΣΗ ΑNDROID ΕΦΑΡΜΟΓΗΣ ΑΠΟΣΤΟΛΗΣ ΣΥΝΤΟΜΩΝ ΜΗΝΥΜΑΤΩΝ ΜΕΣΩ ΤΗΣ OMNIVOICE ΤΣΙΑΛΟΣ ΔΗΜΗΤΡΙΟΣ Α.Μ.: 9883 ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ: Ράπτης Βασίλειος 2 ΕΥΧΑΡΙΣΤΙΕΣ

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

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

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

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

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

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

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΜΕ ΧΡΗΣΗ PHP

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΜΕ ΧΡΗΣΗ PHP Αντώνης Χρυσόπουλος Κατερίνα Κυπριώτη Στέλιος Μόσχογλου Θεοδόσης Σουργκούνης ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΜΕ ΧΡΗΣΗ PHP Για να γίνουμε όλοι καλύτεροι άνθρωποι Τι έχει το μενού σήμερα??? 1. Τι είναι η PHP??? Τι είναι

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

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Ηλεκτρονικό Εμπόριο

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Ηλεκτρονικό Εμπόριο ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ Ηλεκτρονικό Εμπόριο Αναπτύσσοντας ένα Ηλεκτρονικό Κατάστημα Ηλεκτρονικό Εμπόριο Λειτουργικότητα Εφαρμογής Κατάλογος προϊόντων Καλάθι

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

Μια καλή επιλογή θα ήταν www.epipla-onomasas.gr (χωρίζοντας τις λέξεις με παύλα -) ή

Μια καλή επιλογή θα ήταν www.epipla-onomasas.gr (χωρίζοντας τις λέξεις με παύλα -) ή Τι είναι ένα CMS CMS ή Σύστημα Διαχείρισης Περιεχομένου (Content Management System) ονομάζουμε ένα λογισμικό που μας βοηθά να ελέγχουμε και να διαχειριζόμαστε έναν ιστότοπο δημόσιας ή περιορισμένης πρόσβασης.

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

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

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

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

XAMPP Apache MySQL PHP javascript xampp

XAMPP Apache MySQL PHP javascript xampp XAMPP Το xampp είναι ένα δωρεάν πρόγραμμα με το οποίο μπορούμε να κάνουμε εγκατάσταση τον Apache, τη MySQL και την PHP. Apache. Ο Apache είναι ένας Web Server. Είναι δηλαδή πρόγραμμα το οποίο τρέχει μόνιμα

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

Πρωτόκολλα Επικοινωνίας και Τείχος Προστασίας

Πρωτόκολλα Επικοινωνίας και Τείχος Προστασίας Β5.1.2 Πρωτόκολλα Επικοινωνίας και Τείχος Προστασίας Τι θα μάθουμε σήμερα: Να ορίζουμε τι είναι πρωτόκολλο επικοινωνίας Να εξηγούμε τη χρησιμότητα των πρωτοκόλλων επικοινωνίας Να ονομάζουμε τα σημαντικότερα

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

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

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

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

Ως Διαδίκτυο (Internet) ορίζεται το παγκόσμιο (διεθνές) δίκτυο ηλεκτρονικών υπολογιστών (international network).

Ως Διαδίκτυο (Internet) ορίζεται το παγκόσμιο (διεθνές) δίκτυο ηλεκτρονικών υπολογιστών (international network). ΙΔΡΥΜΑ ΝΕΟΛΑΙΑΣ ΚΑΙ ΔΙΑ ΒΙΟΥ ΜΑΘΗΣΗΣ ΥΠΗΡΕΣΙΕΣ ΔΙΑΔΙΚΤΥΟΥ Καλαμάτα, 2015 Το Διαδίκτυο Ως Διαδίκτυο (Internet) ορίζεται το παγκόσμιο (διεθνές) δίκτυο ηλεκτρονικών υπολογιστών (international network). Πρόκειται

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

Λιόλιου Γεωργία. ιατµηµατικό Πρόγραµµα Μεταπτυχιακών Σπουδών στα Πληροφοριακά Συστήµατα

Λιόλιου Γεωργία. ιατµηµατικό Πρόγραµµα Μεταπτυχιακών Σπουδών στα Πληροφοριακά Συστήµατα ιατµηµατικό Πρόγραµµα Μεταπτυχιακών Σπουδών στα Πληροφοριακά Συστήµατα Λιόλιου Γεωργία ΕπιβλέπουσαΚαθηγήτρια: ΣατρατζέµηΜάγια, καθηγήτρια, τµ. ΕφαρµοσµένηςΠληροφορικής, ΠΑΜΑΚ Εισαγωγή Γενικά στοιχεία εφαρµογή

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

Τίτλος Πλατφόρµα Ασύγχρονης Τηλεκπαίδευσης. Συντάκτης. Ακαδηµαϊκό ιαδίκτυο GUnet Οµάδα Ασύγχρονης Τηλεκπαίδευσης

Τίτλος Πλατφόρµα Ασύγχρονης Τηλεκπαίδευσης. Συντάκτης. Ακαδηµαϊκό ιαδίκτυο GUnet Οµάδα Ασύγχρονης Τηλεκπαίδευσης Τίτλος Πλατφόρµα Ασύγχρονης Τηλεκπαίδευσης Συντάκτης Ακαδηµαϊκό ιαδίκτυο GUnet Οµάδα Ασύγχρονης Τηλεκπαίδευσης Ηµεροµηνία Μάιος 2004 Πίνακας Περιεχοµένων ΕΙΣΑΓΩΓΗ 3 ΦΙΛΟΣΟΦΙΑ ΠΛΑΤΦΟΡΜΑΣ 4 ΒΑΣΙΚΑ ΣΤΟΙΧΕΙΑ

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

ΚΕΠΛΗΝΕΤ ΕΒΡΟΥ. Καλτσίδης Χρήστος

ΚΕΠΛΗΝΕΤ ΕΒΡΟΥ. Καλτσίδης Χρήστος Καλτσίδης Χρήστος Μάρτιος 2009 Υπηρεσία Φιλοξενίας Ιστοσελίδων στο ΠΣΔ Η υπηρεσία φιλοξενίας σελίδων στο Πανελλήνιο Σχολικό Δίκτυο έχει σκοπό την προβολή των δραστηριοτήτων των σχολικών μονάδων και του

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

Τεχνολογίες Ανάπτυξης Ηλεκτρονικού Καταστήματος Μικρομεσαίας Επιχείρησης. Μικρομεσαίες Επιχειρήσεις και Καινοτομία

Τεχνολογίες Ανάπτυξης Ηλεκτρονικού Καταστήματος Μικρομεσαίας Επιχείρησης. Μικρομεσαίες Επιχειρήσεις και Καινοτομία Τεχνολογίες Ανάπτυξης Ηλεκτρονικού Καταστήματος Μικρομεσαίας Επιχείρησης Μικρομεσαίες Επιχειρήσεις και Καινοτομία Ηλεκτρονικό Εμπόριο H δυνατότητα των καταναλωτών και των εμπορικών καταστημάτων να κάνουν

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

Εφαρµογή: Σύστηµα ιαχείρισης ιαδικτυακού Περίπτερου / Ιστοσελίδας στον διαδικτυακό τόπο kalliergea.gr

Εφαρµογή: Σύστηµα ιαχείρισης ιαδικτυακού Περίπτερου / Ιστοσελίδας στον διαδικτυακό τόπο kalliergea.gr ..χτίζουµε την ιστοσελίδα σας στο Internet www.kalliergea.gr Λάουρα Π. Καζακράντε «Καλλιεργαία» Πληροφορική - Internet - ιαφήµιση - Μεταφράσεις Τηλ.: 211 0104925, 695 6118589 Email: info@kalliergea.gr

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

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

Χαρακτηριστικά ιστοσελίδας Χαρακτηριστικά ιστοσελίδας COSMOS4U e-shop Χαρακτηριστικά Επιπλέον Δυνατότητες Κατάλογος προϊόντων για πώληση Δυνατότητα δημιουργίας καταλόγου απεριόριστου αριθμού προϊόντων και κατηγοριών. Εμφάνιση χαρακτηριστικών

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

ΠΡΟΤΑΣΗ-ΑΝΑΘΕΣΗ ΕΡΓΟΥ ΠΟΥ ΑΦΟΡΑ ΣΤΗΝ ΑΝΑΠΤΥΞΗ WEB SITE ΓΙΑ ΤΗΝ ΕΤΑΙΡΕΙΑ ΣΑΣ ESHOP

ΠΡΟΤΑΣΗ-ΑΝΑΘΕΣΗ ΕΡΓΟΥ ΠΟΥ ΑΦΟΡΑ ΣΤΗΝ ΑΝΑΠΤΥΞΗ WEB SITE ΓΙΑ ΤΗΝ ΕΤΑΙΡΕΙΑ ΣΑΣ ESHOP ΥΠΗΡΕΣΙΕΣ INTERNET WEB SOLUTIONS ΠΡΟΤΑΣΗ-ΑΝΑΘΕΣΗ ΕΡΓΟΥ ΠΟΥ ΑΦΟΡΑ ΣΤΗΝ ΑΝΑΠΤΥΞΗ WEB SITE ΓΙΑ ΤΗΝ ΕΤΑΙΡΕΙΑ ΣΑΣ ESHOP Ηµεροµηνία:... E-mail Εταιρία:... Tηλ.. ΥΠΗΡΕΣΙΕΣ WEBSITE ΣΧΕ ΙΑΣΜΟΣ-ΠΡΟΤΑΣΗ ΕΦΑΡΜΟΓΗΣ

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

ΕΛΑΧΙΣΤΕΣ ΑΠΑΙΤΗΣΕΙΣ ΕΞΟΠΛΙΣΜΟΥ... 22 ΕΠΙΚΟΙΝΩΝΙΑ... 23

ΕΛΑΧΙΣΤΕΣ ΑΠΑΙΤΗΣΕΙΣ ΕΞΟΠΛΙΣΜΟΥ... 22 ΕΠΙΚΟΙΝΩΝΙΑ... 23 Πλατφόρµα Ασύγχρονης Τηλεκπαίδευσης GUnet e-class Ακαδηµαϊκό ιαδίκτυο GUnet Οµάδα Ασύγχρονης Τηλεκπαίδευσης Τίτλος Πλατφόρµα Ασύγχρονης Τηλεκπαίδευσης Συντάκτης Ακαδηµαϊκό ιαδίκτυο GUnet Οµάδα Ασύγχρονης

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

Information Technology for Business

Information Technology for Business Information Technology for Business Lecturer: N. Kyritsis, MBA, Ph.D. Candidate e-mail: kyritsis@ist.edu.gr Computer System Hardware Υποδομή του Information Technology Υλικό Υπολογιστών (Hardware) Λογισμικό

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

Μέρος 3 ο : Βασικές Έννοιες για δυναμικές ιστοσελίδες

Μέρος 3 ο : Βασικές Έννοιες για δυναμικές ιστοσελίδες Μέρος 3 ο : Βασικές Έννοιες για δυναμικές ιστοσελίδες Εισαγωγή-Σκοπός. Τρόποι δημιουργίας δυναμικών ιστοσελίδων. Dynamic Web Pages. Dynamic Web Page Development Using Dreamweaver. Τρόποι δημιουργίας δυναμικών

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

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

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

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

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

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

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

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

Χαρακτηριστικά ιστοσελίδας Χαρακτηριστικά ιστοσελίδας COSMOS4U Web Portal Χαρακτηριστικά Επιπλέον Δυνατότητες Έως 10 κατηγορίες αρθρογραφίας και 10 υποκατηγορίες Δημιουργούμε έως 10 κατηγορίες αρθρογραφίας που η κάθε μια μπορεί

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

Σταύρος Καουκάκης Ευτύχιος Βαβουράκης

Σταύρος Καουκάκης Ευτύχιος Βαβουράκης ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Βασικές Έννοιες Διαδικτύου Wordpress & Κοινωνικά Δίκτυα (Part 1) Σταύρος Καουκάκης Ευτύχιος Βαβουράκης 1 Περιεχόμενα Γενικές Έννοιες Διαδικτύου Η αρχιτεκτονική του Web Συστήματα Διαχείρισης

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

Κινητές τεχνολογίες;

Κινητές τεχνολογίες; Κινητές τεχνολογίες Κινητές τεχνολογίες; Ασύρματη δικτύωση Κινητές επικοινωνίες Τεχνολογίες Πληροφορικής Σύγχρονες κινητές συσκευές Πρόσβαση στο Internet Αισθητήρες Δέκτης GPS Ηλεκτρονική πυξίδα Επιταχυνσιόμετρο

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

ΤΕΙ Πειραιά, Τμήμα Αυτοματισμού Π. Ράλλη & Θηβών 250, 12244 Αιγάλεω ΠΤΥΧΙΑΚΉ ΕΡΓΑΣΙΑ

ΤΕΙ Πειραιά, Τμήμα Αυτοματισμού Π. Ράλλη & Θηβών 250, 12244 Αιγάλεω ΠΤΥΧΙΑΚΉ ΕΡΓΑΣΙΑ ΤΕΙ Πειραιά, Τμήμα Αυτοματισμού Π. Ράλλη & Θηβών 250, 12244 Αιγάλεω ΠΤΥΧΙΑΚΉ ΕΡΓΑΣΙΑ Κατασκευή διαδραστικής ιστοσελίδας για χρήση απο ασφαλιστική εταιρία. Αναζήτ11ση συμβολαίων Συμπληρώστε ένα. από τα.

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

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, Κωνσταντίνος

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

ΤΕΙ ΗΠΕΙΡΟΥ Τμήμα Τηλεπληροφορικής & Διοίκησης

ΤΕΙ ΗΠΕΙΡΟΥ Τμήμα Τηλεπληροφορικής & Διοίκησης ΤΕΙ ΗΠΕΙΡΟΥ Τμήμα Τηλεπληροφορικής & Διοίκησης ΕΓΚΑΤΑΣΤΑΣΗ & ΠΑΡΑΜΕΤΡΟΠΟΙΗΣΗ INTERNET INFORMATION SERVER (IIS) ΓΙΑ ΥΛΟΠΟΙΗΣΗ ΥΠΗΡΕΣΙΩΝ ΔΙΑΔΙΚΤΥΟΥ (WEB SERVICES) ΣΠΟΥΔΑΣΤΡΙΑ:Μπάρδα Μαρία ΕΙΣΗΓΗΤΗΣ: Τσιαντής

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

Εγκατάσταση Joomla 1. Στο Π.Σ.Δ. (www.sch.gr) 2. Τοπικά 3. Σε δωρεάν Server

Εγκατάσταση Joomla 1. Στο Π.Σ.Δ. (www.sch.gr) 2. Τοπικά 3. Σε δωρεάν Server Γεώργιος Χρ. Μακρής Εγκατάσταση Joomla 1. Στο Π.Σ.Δ. (www.sch.gr) 2. Τοπικά 3. Σε δωρεάν Server 2012 Γ ε ώ ρ γ ι ο ς Χ ρ. Μ α κ ρ ή ς ( h t t p : / / u s e r s. s c h. g r / g m a k r i s ) Περιεχόμενα

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

Το διαδίκτυο είναι ένα δίκτυο που αποτελείτε από πολλά μικρότερα δίκτυα υπολογιστών.

Το διαδίκτυο είναι ένα δίκτυο που αποτελείτε από πολλά μικρότερα δίκτυα υπολογιστών. Κεφάλαιο 2 Με το διαδίκτυο μπορεί κάποιος: να κάνει έρευνα, να ψωνίσει για διάφορες υπηρεσίες και προϊόντα, να δει καιρικούς χάρτες, να πάρει φωτογραφίες, ταινίες, και διάφορες άλλες πληροφορίες που βρίσκονται

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

Πλοήγηση www / Με τον Internet Explorer

Πλοήγηση www / Με τον Internet Explorer Πλοήγηση www / Με τον Internet Explorer Περιεχόμενα 1.Eισαγωγή 2.Το περιβάλλον του Internet Explorer 3.Οδηγίες πλοήγησης 4.Αποθήκευση αρχείων 5.Αγαπημένα 6.Ασφαλής σύνδεση 7.Διακομιστής μεσολάβησης 1.Εισαγωγή

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

ίκτυα - Internet Υπηρεσίες Internet O Παγκόσµιος Ιστός (World Wide Web) Ηλεκτρονική Αλληλογραφία (E-mail) Υπηρεσία FTP (File Transfer Protocol)

ίκτυα - Internet Υπηρεσίες Internet O Παγκόσµιος Ιστός (World Wide Web) Ηλεκτρονική Αλληλογραφία (E-mail) Υπηρεσία FTP (File Transfer Protocol) Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας-Βιβλιοθηκονοµίας Κέρκυρα ίκτυα - Internet 2 Υπηρεσίες Internet O Παγκόσµιος Ιστός (World Wide Web) ΜηχανέςΑναζήτησηςστοWeb Ηλεκτρονική Αλληλογραφία (E-mail) Υπηρεσία

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

Σχολή Προγραµµατιστών Ηλεκτρονικών Υπολογιστών (ΣΠΗΥ) Τµήµα Προγραµµατιστών Σειρά 112

Σχολή Προγραµµατιστών Ηλεκτρονικών Υπολογιστών (ΣΠΗΥ) Τµήµα Προγραµµατιστών Σειρά 112 Σχολή Προγραµµατιστών Ηλεκτρονικών Υπολογιστών (ΣΠΗΥ) Τµήµα Προγραµµατιστών Σειρά 112 Πλωτάρχης Γ. ΚΑΤΣΗΣ ΠΝ Γιατί χρησιµοποιούµε δίκτυα? Δίκτυο Σύνολο Η/Υ και συσκευών Συνδεδεµένα µε κάποιο µέσο Stand-alone

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

Linux Terminal Server Project

Linux Terminal Server Project Linux Terminal Server Project Ένα κεντρικό σύστημα διαχείρισης των τερματικών κοινού της Βιβλιοθήκης & Κέντρου Πληροφόρησης του Πανεπιστημίου Μακεδονίας Κολοβός Φίλιππος filippos@uom.gr Ευάγγελος Μπάνος

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

Αν Ναι, δείτε πως με το λογισμικό axes μπορείτε!

Αν Ναι, δείτε πως με το λογισμικό axes μπορείτε! Θέλετε να μάθετε πως μπορείτε να έχετε πρόσβαση στις 5250 οθόνες μέσω browser, χωρίς αλλαγή στις υπάρχουσες εφαρμογές και χωρίς εγκατάσταση στον client? Αν Ναι, δείτε πως με το λογισμικό axes μπορείτε!

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

ΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος... 13. Κεφάλαιο 1 ο Αρχές Διαχείρισης πληροφορίας στον Παγκόσμιο Ιστό... 15

ΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος... 13. Κεφάλαιο 1 ο Αρχές Διαχείρισης πληροφορίας στον Παγκόσμιο Ιστό... 15 ΠΕΡΙΕΧΟΜΕΝΑ Πρόλογος... 13 Κεφάλαιο 1 ο Αρχές Διαχείρισης πληροφορίας στον Παγκόσμιο Ιστό... 15 1.1 Εισαγωγή... 16 1.2 Διαδίκτυο και Παγκόσμιος Ιστός Ιστορική αναδρομή... 17 1.3 Αρχές πληροφοριακών συστημάτων

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

Business Software & Networks. Λύσεις Προώθησης Πωλήσεων µε τη πλατφόρµα mobile server. salesman. e-mailing software platform. www.bsn.

Business Software & Networks. Λύσεις Προώθησης Πωλήσεων µε τη πλατφόρµα mobile server. salesman. e-mailing software platform. www.bsn. Business Software & Networks Λύσεις Προώθησης Πωλήσεων µε τη πλατφόρµα mobile server Παραδοσιακό Μοντέλο Επικοινωνίας και Προώθησης Πωλήσεων Προϊόντων και Υπηρεσιών Η επιχείρηση χρησιµοποιεί: κατάλογους

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

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

1 ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΑΣ ΓΕΩΠΟΝΙΑΣ - ΤΜΗΜΑ ΦΥΤΙΚΗΣ ΠΑΡΑΓΩΓΗΣ 1 2 Περιεχόμενα 1. Εισαγωγή... 5 2. Επεξήγηση των εργαλείων που χρησιμοποιήθηκαν για την δημιουργία της ιστοσελίδας... 6 2.1 Γλώσσα προγραμματισμού ΗΤML για την δημιουργία της Ιστοσελίδας... 6 2.2 Γλώσσα

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

Σεμινάριο joomla! 3. Διοργάνωση: Άλφα Εκπαιδευτική Εισηγητής: Μοτσενίγος Ιωάννης Ηλεκτρονικός Μηχανικός-Σύμβουλος Internet Marketing- Web Designer

Σεμινάριο joomla! 3. Διοργάνωση: Άλφα Εκπαιδευτική Εισηγητής: Μοτσενίγος Ιωάννης Ηλεκτρονικός Μηχανικός-Σύμβουλος Internet Marketing- Web Designer Σεμινάριο joomla! 3 Διοργάνωση: Άλφα Εκπαιδευτική Εισηγητής: Μοτσενίγος Ιωάννης Ηλεκτρονικός Μηχανικός-Σύμβουλος Internet Marketing- Web Designer Ξεκινώντας:Τι είναι τα CMS Η Joomla είναι λογισμικό κατασκευής

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

ΠΡΟΤΑΣΗ-ΑΝΑΘΕΣΗ ΕΡΓΟΥ ΠΟΥ ΑΦΟΡΑ ΣΤΗΝ ΑΝΑΠΤΥΞΗ WEB SITE ΓΙΑ ΤΗΝ ΕΤΑΙΡΕΙΑ ΣΑΣ

ΠΡΟΤΑΣΗ-ΑΝΑΘΕΣΗ ΕΡΓΟΥ ΠΟΥ ΑΦΟΡΑ ΣΤΗΝ ΑΝΑΠΤΥΞΗ WEB SITE ΓΙΑ ΤΗΝ ΕΤΑΙΡΕΙΑ ΣΑΣ ΥΠΗΡΕΣΙΕΣ INTERNET WEB SOLUTIONS ΠΡΟΤΑΣΗ-ΑΝΑΘΕΣΗ ΕΡΓΟΥ ΠΟΥ ΑΦΟΡΑ ΣΤΗΝ ΑΝΑΠΤΥΞΗ WEB SITE ΓΙΑ ΤΗΝ ΕΤΑΙΡΕΙΑ ΣΑΣ Ηµεροµηνία:... E-mail Εταιρία:... Tηλ... ΥΠΗΡΕΣΙΕΣ WEBSITE Κατοχύρωση Domain Name (.gr) Ανανέωση

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

Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή

Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή 1 Πίνακας Περιεχομένων 1. Εισαγωγή... 4 1.1 Περιβάλλον Moodle...4 1.2 Χρήση ονόματος χρήστη και κωδικού...4 1.3 Δημιουργία νέου μαθήματος...4 1.3.1

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

Κεφάλαιο 5. Δημιουργία φορμών για τη βάση δεδομένων DVDclub

Κεφάλαιο 5. Δημιουργία φορμών για τη βάση δεδομένων DVDclub Κεφάλαιο 5. Δημιουργία φορμών για τη βάση δεδομένων DVDclub Σύνοψη Σ αυτό το κεφάλαιο θα περιγράψουμε τη δημιουργία φορμών, προκειμένου να εισάγουμε δεδομένα και να εμφανίζουμε στοιχεία από τους πίνακες

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

PROXY SERVER. Άριστη πύλη διαχωρισμού μεταξύ του εσωτερικού δικτύου και του Internet.

PROXY SERVER. Άριστη πύλη διαχωρισμού μεταξύ του εσωτερικού δικτύου και του Internet. PROXY SERVER Άριστη πύλη διαχωρισμού μεταξύ του εσωτερικού δικτύου και του Internet. Αποτελεσματικό εργαλείο για την απόκρυψη των εσωτερικών λεπτομερειών και διευθύνσεων IP του δικτύου. Αυξάνει τη συνολική

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

Κεφάλαιο 5Β (επανάληψη) Εισαγωγή στην Πληροφορική. Τυπικοί χρόνοι πρόσβασης. Μέσος χρόνος πρόσβασης. Ταχύτητα µεταφοράς δεδοµένων

Κεφάλαιο 5Β (επανάληψη) Εισαγωγή στην Πληροφορική. Τυπικοί χρόνοι πρόσβασης. Μέσος χρόνος πρόσβασης. Ταχύτητα µεταφοράς δεδοµένων Κεφάλαιο 5Β (επανάληψη) Εισαγωγή στην Πληροφορική Χειµερινό Εξάµηνο 2006-07 Απόδοση των οδηγών αποθηκευτικών µέσων Μέσος χρόνος πρόσβασης (Average Access Time) Ταχύτητα µεταφοράς δεδοµένων (Data-Transfer

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

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

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

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

φιλοξενία & διαχείριση ιστοσελίδων

φιλοξενία & διαχείριση ιστοσελίδων φιλοξενία & διαχείριση ιστοσελίδων για Ηλεκτρονικό Εμπόριο και Internet Marketing κατάλογος προϊόντων & υπηρεσιών 2015 Πακέτα φιλοξενίας - Περιγραφή Cloud Hosting - Κατοχύρωση ονόματος - Οικονομικό START

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

Περιεχόµενα. Μέρος I Βασικά στοιχεία των Microsoft Windows XP Professional. Ευχαριστίες... 17 Εισαγωγή... 19

Περιεχόµενα. Μέρος I Βασικά στοιχεία των Microsoft Windows XP Professional. Ευχαριστίες... 17 Εισαγωγή... 19 Περιεχόµενα Ευχαριστίες... 17 Εισαγωγή... 19 Μέρος I Βασικά στοιχεία των Microsoft Windows XP Professional 1 Εισαγωγή στη διαχείριση των Microsoft Windows XP Professional... 25 Ξεκίνηµα µε τα Windows XP

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

------------------------------------------------------------------------------------------------------- (www.soapbyeleni.gr)

------------------------------------------------------------------------------------------------------- (www.soapbyeleni.gr) ------------------------------------------------------------------------------------------------------- ΠΡΟΣΦΟΡΑ ΔΥΝΑΜΙΚΗΣ E-SHOP ΙΣΤΟΣΕΛΙΔΑΣ (www.soapbyeleni.gr) -------------------------------------------------------------------------------------------------------

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

Τι είναι ένα δίκτυο υπολογιστών; Αρχιτεκτονική επιπέδων πρωτοκόλλων. Δικτυακά πρωτόκολλα

Τι είναι ένα δίκτυο υπολογιστών; Αρχιτεκτονική επιπέδων πρωτοκόλλων. Δικτυακά πρωτόκολλα Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15 Δίκτυα υπολογιστών (και το Διαδίκτυο) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι ένα δίκτυο υπολογιστών;

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

Θεσσαλονίκη Alert - Αναλυτική παρουσίαση εφαρμογής

Θεσσαλονίκη Alert - Αναλυτική παρουσίαση εφαρμογής Θεσσαλονίκη Alert - Αναλυτική παρουσίαση εφαρμογής Δεληγιαννίδης Θεόδωρος Περίληψη Η "Θεσσαλονίκη Alert" είναι μια εφαρμογή του τύπου crowdsourcing που αφορά το Δήμο Θεσσαλονίκης και τους πολίτες του.

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

Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας - Βιβλιοθηκονοµίας. Υπηρεσίες Internet. ίκτυα Η/Υ. Επίπεδο Εφαρµογής. Ενότητα θ

Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας - Βιβλιοθηκονοµίας. Υπηρεσίες Internet. ίκτυα Η/Υ. Επίπεδο Εφαρµογής. Ενότητα θ Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας - Βιβλιοθηκονοµίας Υπηρεσίες Internet ίκτυα Η/Υ Επίπεδο Εφαρµογής O Παγκόσµιος Ιστός (World Wide Web) Ηλεκτρονική Αλληλογραφία (E-mail) Υπηρεσία FTP (File Transfer

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

Οδηγός Εγκατάστασης και Χρήσης του Arebas Easy

Οδηγός Εγκατάστασης και Χρήσης του Arebas Easy Σ ε λ ί δ α 1 Οδηγός Εγκατάστασης και Χρήσης του Arebas Easy Περιεχόμενα 1. Download Arebas Easy... 2 2. Εγκατάσταση Arebas Easy... 3 3. Εγγραφή στον Arebas Server... 7 4. Παραμετροποίηση Arebas Easy...

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

ΟΔΗΓΙΕΣ ΓΙΑ ΤΗ ΧΡΗΣΗ ΤΟΥ CONTROL PANEL RACKSPACE

ΟΔΗΓΙΕΣ ΓΙΑ ΤΗ ΧΡΗΣΗ ΤΟΥ CONTROL PANEL RACKSPACE ΟΔΗΓΙΕΣ ΓΙΑ ΤΗ ΧΡΗΣΗ ΤΟΥ CONTROL PANEL RACKSPACE Περιεχόμενα 1 Γενικά...2 2 Πρόσβαση στο Control Panel...2 3 Εμφάνιση Λίστας Domains...2 3.1 Καρτέλα General Settings...3 3.2 Καρτέλα Permissions...5 3.3

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

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

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

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

Πειραιάς S 2 Ε Lab Ιούνιος 2012. Εισηγητής: Δ. Ν. Καλλέργης, MSc. Εργ. Συνεργάτης

Πειραιάς S 2 Ε Lab Ιούνιος 2012. Εισηγητής: Δ. Ν. Καλλέργης, MSc. Εργ. Συνεργάτης Πειραιάς S 2 Ε Lab Ιούνιος 2012 Εισηγητής: Δ. Ν. Καλλέργης, MSc. Εργ. Συνεργάτης Πνευµατικά δικαιώµατα Τα πνευµατικά δικαιώµατα χρησιµοποίησης του µη πρωτότυπου υλικού της εργασίας ανήκουν στο/στη φοιτητή/-τρια

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

Special edition of the Technical Chamber of Greece on Video Conference Services on the Internet, 2000. PIRCH 32 v0.92b

Special edition of the Technical Chamber of Greece on Video Conference Services on the Internet, 2000. PIRCH 32 v0.92b PIRCH 32 v0.92b A.S. DRIGAS Applied Technologies Department NCSR DEMOKRITOS Ag. Paraskevi GREECE dr@imm.demokritos.gr http://imm.demokritos.gr Το Pirch 32 είναι ένα από τα καλύτερα προγράµµατα επικοινωνίας

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

ICOP - ΥΠΗΡΕΣΙΕΣ - INTERNET WEBMARKETING ΠΡΟΣΦΟΡΑ ΣΥΣΤΗΜΑΤΑ ΦΙΛΟΞΕΝΙΑΣ

ICOP - ΥΠΗΡΕΣΙΕΣ - INTERNET WEBMARKETING ΠΡΟΣΦΟΡΑ ΣΥΣΤΗΜΑΤΑ ΦΙΛΟΞΕΝΙΑΣ Θρασυμάχου 14, Αθήνα - 6ος όροφος Τηλέφωνο: 210 2139880 Fax: 210 2139916 E-mail: sales@icop.gr www.icop.gr ICOP - ΥΠΗΡΕΣΙΕΣ - INTERNET WEBMARKETING ΠΡΟΣΦΟΡΑ Ημερομηνία.. E-mail. Όνομα υπευθύνου Εταιρεία.

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

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

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

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

e-κπαίδευση Πλατφόρµα Ασύγχρονης Τηλε-κπαίδευσης Οδηγίες χρήσης για τους σπουδαστές του ΤΕΙ Αθήνας και τους επισκέπτες της δικτυακής πύλης e-κπαίδευση

e-κπαίδευση Πλατφόρµα Ασύγχρονης Τηλε-κπαίδευσης Οδηγίες χρήσης για τους σπουδαστές του ΤΕΙ Αθήνας και τους επισκέπτες της δικτυακής πύλης e-κπαίδευση e-κπαίδευση Πλατφόρµα Ασύγχρονης Τηλε-κπαίδευσης Οδηγίες χρήσης για τους σπουδαστές του ΤΕΙ Αθήνας και τους επισκέπτες της δικτυακής πύλης e-κπαίδευση - 0 - Πίνακας Περιεχοµένων 1 Εισαγωγή.. 2 1.1 Σχολές/Τµήµατα

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

Εγχειρίδιο εγκατάστασης Megasoft 2009

Εγχειρίδιο εγκατάστασης Megasoft 2009 Εγχειρίδιο εγκατάστασης Megasoft 2009 Περιεχόμενα Εγκατάσταση Joomla, JoomFish και VirtueMart... 3 Αποστολή αρχείων Joomla στο Διακομιστή (Host)... 3 Εγκατάσταση Joomla... 4 Εγκατάσταση VirtueMart... 9

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

Η εφαρµογή ClassWeb δίνει στους διδάσκοντες χρήστες του συστήµατος τη δυνατότητα πρόσβασης µέσω του ιαδικτύου σε ποικίλες υπηρεσίες, όπως:

Η εφαρµογή ClassWeb δίνει στους διδάσκοντες χρήστες του συστήµατος τη δυνατότητα πρόσβασης µέσω του ιαδικτύου σε ποικίλες υπηρεσίες, όπως: 1. Υπηρεσία ClassWeb 1.1. Γενικά Η εφαρµογή ClassWeb δίνει στους διδάσκοντες χρήστες του συστήµατος τη δυνατότητα πρόσβασης µέσω του ιαδικτύου σε ποικίλες υπηρεσίες, όπως: εµφάνιση στατιστικών στοιχείων

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

Μέρος Ι: Εγκατάσταση και ιαμόρφωση των MySQL, Apache και PHP

Μέρος Ι: Εγκατάσταση και ιαμόρφωση των MySQL, Apache και PHP Εισαγωγή... 1 Σε Ποιους Απευθύνεται το Βιβλίο... 1 Η Οργάνωση του Βιβλίου... 2 Ο Πηγαίος Κώδικας του Βιβλίου... 3 Συμβάσεις που Χρησιμοποιούνται σε Αυτό το Βιβλίο... 3 Μέρος Ι: Εγκατάσταση και ιαμόρφωση

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

Συστήματα πανταχού παρόντος υπολογιστή σε περιβάλλοντα υβριδικών βιβλιοθηκών

Συστήματα πανταχού παρόντος υπολογιστή σε περιβάλλοντα υβριδικών βιβλιοθηκών Συστήματα πανταχού παρόντος υπολογιστή σε περιβάλλοντα υβριδικών βιβλιοθηκών Βερονίκης Σπύρος Τμήμα Αρχειονομίας- Βιβλιοθηκονομίας, Ιόνιο Πανεπιστήμιο spver@ionio.gr Stoica Adrian Τμήμα Ηλεκτρολόγων Μηχανικών

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

Αντιγραφή με χρήση της γυάλινης επιφάνειας σάρωσης

Αντιγραφή με χρήση της γυάλινης επιφάνειας σάρωσης Γρήγορη αναφορά Αντιγραφή Δημιουργία αντιγράφων Γρήγορη δημιουργία αντιγράφου 3 Στον πίνακα ελέγχου του εκτυπωτή πατήστε το κουμπί αντίγραφο 4 Εάν τοποθετήσατε το έγγραφο στη γυάλινη επιφάνεια σάρωσης

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

ICOP - ΥΠΗΡΕΣΙΕΣ - INTERNET WEBSOLUTIONS ΠΡΟΤΑΣΗ-ΑΝΑΘΕΣΗ ΕΡΓΟΥ

ICOP - ΥΠΗΡΕΣΙΕΣ - INTERNET WEBSOLUTIONS ΠΡΟΤΑΣΗ-ΑΝΑΘΕΣΗ ΕΡΓΟΥ Θρασυµάχου 14, Αθήνα - 6ος όροφος Τηλέφωνο: 210 2139880 Fax: 210 2139916 E-mail: sales@icop.gr ICOP - ΥΠΗΡΕΣΙΕΣ - INTERNET WEBSOLUTIONS ΠΡΟΤΑΣΗ-ΑΝΑΘΕΣΗ ΕΡΓΟΥ Ηµεροµηνία: E-mail: Όνοµα υπευθύνου: Εταιρία:

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

FROM TESTOTA.REGISTRY

FROM TESTOTA.REGISTRY ΟΤΑ Επιχειρησιακή Νοηµοσύνη Ενότητα: Βc1.1.3 Επιχειρησιακή Νοηµοσύνη και Τεχνολογίες της Πληροφορικής και των Επικοινωνιών (BI & IT) Πρακτική Άσκηση (επίπεδο 1): Στόχος της άσκησης είναι η εµβάθυνση στην

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

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

Εισαγωγή στην Πληροφορική Εισαγωγή στην Πληροφορική Χειµερινό Εξάµηνο 2006-07 ρ. Παναγιώτης Χατζηδούκας (Π..407/80) Εισαγωγή στην Πληροφορική 1 Γενικές πληροφορίες Εισαγωγή στην Πληροφορική ιδασκαλία: Παναγιώτης Χατζηδούκας Email:

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

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

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

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

ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ. Ακαδημαϊκό Έτος 2011 2012, Εαρινό Εξάμηνο. Εργαστηριακή Άσκηση 2 24/01/2012

ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ. Ακαδημαϊκό Έτος 2011 2012, Εαρινό Εξάμηνο. Εργαστηριακή Άσκηση 2 24/01/2012 ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΕΠΙΚΟΙΝΩΝΙΑΣ & ΣΠΟΥΔΩΝ ΔΙΑΔΙΚΤΥΟΥ ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ Ακαδημαϊκό Έτος 2011 2012, Εαρινό Εξάμηνο Εργαστηριακή Άσκηση 2 24/01/2012

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

7.11 Πρωτόκολλα Εφαρµογής. 7.11.2 Βασικές και Προηγµένες Υπηρεσίες ιαδικτύου. Ηλεκτρονικό Ταχυδροµείο. Τεχνολογία ικτύων Επικοινωνιών ΙΙ

7.11 Πρωτόκολλα Εφαρµογής. 7.11.2 Βασικές και Προηγµένες Υπηρεσίες ιαδικτύου. Ηλεκτρονικό Ταχυδροµείο. Τεχνολογία ικτύων Επικοινωνιών ΙΙ Τεχνολογία ικτύων Επικοινωνιών ΙΙ 7.11 Πρωτόκολλα Εφαρµογής 104. Αναφέρετε ονοµαστικά τις πιο χαρακτηριστικές εφαρµογές που υποστηρίζει η τεχνολογία TCP/IP οι οποίες είναι διαθέσιµες στο ιαδίκτυο 1. Ηλεκτρονικό

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

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

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

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

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15. Δίκτυα υπολογιστών. (και το Διαδίκτυο)

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15. Δίκτυα υπολογιστών. (και το Διαδίκτυο) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15 Δίκτυα υπολογιστών (και το Διαδίκτυο) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι ένα δίκτυο υπολογιστών;

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

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ Σύντομη εισαγωγή στο εργαστήριο

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ Σύντομη εισαγωγή στο εργαστήριο ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ Σύντομη εισαγωγή στο εργαστήριο Στο φετινό εργαστήριο του μαθήματος, έχετε τη δυνατότητα να δουλέψετε σε 2 περιβάλλοντα. Ένα σε περιβάλλον UNIX μέσω απομακρυσμένης σύνδεσης σε

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

ΠΡΟΤΑΣΗ-ΑΝΑΘΕΣΗ ΕΡΓΟΥ ΠΟΥ ΑΦΟΡΑ ΣΤΗΝ ΑΝΑΠΤΥΞΗ WEB SITE ΓΙΑ ΤΗΝ ΕΤΑΙΡΕΙΑ ΣΑΣ ESHOP

ΠΡΟΤΑΣΗ-ΑΝΑΘΕΣΗ ΕΡΓΟΥ ΠΟΥ ΑΦΟΡΑ ΣΤΗΝ ΑΝΑΠΤΥΞΗ WEB SITE ΓΙΑ ΤΗΝ ΕΤΑΙΡΕΙΑ ΣΑΣ ESHOP ΥΠΗΡΕΣΙΕΣ INTERNET WEB SOLUTIONS ΠΡΟΤΑΣΗ-ΑΝΑΘΕΣΗ ΕΡΓΟΥ ΠΟΥ ΑΦΟΡΑ ΣΤΗΝ ΑΝΑΠΤΥΞΗ WEB SITE ΓΙΑ ΤΗΝ ΕΤΑΙΡΕΙΑ ΣΑΣ ESHOP Ηµεροµηνία:... E-mail Εταιρία:... Tηλ.. ΥΠΗΡΕΣΙΕΣ WEBSITE ΣΧΕ ΙΑΣΜΟΣ-ΠΡΟΤΑΣΗ ΜΑΚΕΤΑΣ demo

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

Ανάπτυξη Υπηρεσίας Τηλεκπαίδευσης σε ΙP Δίκτυα. Υλοποίηση Σύγχρονης Τηλεκπαίδευσης

Ανάπτυξη Υπηρεσίας Τηλεκπαίδευσης σε ΙP Δίκτυα. Υλοποίηση Σύγχρονης Τηλεκπαίδευσης Ανάπτυξη Υπηρεσίας Τηλεκπαίδευσης σε ΙP Δίκτυα. Υλοποίηση Σύγχρονης Τηλεκπαίδευσης Σπουδαστές: Μιχαήλ Μιχάλης ΑΜ:5089 Αναγνωστόπουλος Σπύρος ΑΜ:3692 Υπεύθυνος καθηγητής: Αναλυτή Κατερίνα Άρτα 2006 E- learning

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

ίκτυα υπολογιστών Στόχοι κεφαλαίου ίκτυα

ίκτυα υπολογιστών Στόχοι κεφαλαίου ίκτυα Στόχοι κεφαλαίου ίκτυα υπολογιστών (Κεφαλαιο 15 στο βιβλιο) Περιγραφή των κύριων θεµάτων σχετικά µε τα δίκτυα υπολογιστών Αναφορά στα διάφορα είδη δικτύων Περιγραφή των διαφόρων τοπολογιών των τοπικών

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

ΟΔΗΓΟΣ ΧΡΗΣΗΣ(ΜΑΝUΑL) ΔΙΑΧΕΙΡΙΣΤΗ-ΧΡΗΣΤΗ.

ΟΔΗΓΟΣ ΧΡΗΣΗΣ(ΜΑΝUΑL) ΔΙΑΧΕΙΡΙΣΤΗ-ΧΡΗΣΤΗ. ΟΔΗΓΟΣ ΧΡΗΣΗΣ(ΜΑΝUΑL) ΔΙΑΧΕΙΡΙΣΤΗ-ΧΡΗΣΤΗ. Οδηγός Διαχειριστή Το m-learning Toolkit είναι μια ολοκληρωμένη πλατφόρμα εξ αποστάσεως εκπαίδευσης που έχει σχεδιαστεί για να υπάρχει η δυνατότητα της πρόσβασης

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

Η HTML 5 θα αλλάξει το Web?

Η HTML 5 θα αλλάξει το Web? Η HTML 5 θα αλλάξει το Web? (ή αλλιώς, έρχεται το τέλος των plugins?) Αλέξανδρος Καράκος Εργαστήριο Προγραµµατισµού και Επεξεργασίας Πληροφοριών Internet 2... Είναι ένα ξεχωριστό µέσο δηµοσίευσης πληροφοριών

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

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

ΠΛΗΡΟΦΟΡΙΑΚΑ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Οικονοµικό Πανεπιστήµιο Αθηνών Τµήµα ιοικητικής Επιστήµης & Τεχνολογίας ΠΛΗΡΟΦΟΡΙΑΚΑ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Κεφάλαιο 5 Λογισµικό - Software Γιώργος Γιαγλής Το σηµερινό µάθηµα Λογισµικό (Software)

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

ΤΕΧΝΟΛΟΓΙΕΣ ΣΧΕΔΙΑΣΗΣ ΔΙΑΔΙΚΤΥΑΚΟΥ ΤΟΠΟΥ (Web Site Design Technologies)

ΤΕΧΝΟΛΟΓΙΕΣ ΣΧΕΔΙΑΣΗΣ ΔΙΑΔΙΚΤΥΑΚΟΥ ΤΟΠΟΥ (Web Site Design Technologies) ΕΠΛ 012 ΤΕΧΝΟΛΟΓΙΕΣ ΣΧΕΔΙΑΣΗΣ ΔΙΑΔΙΚΤΥΑΚΟΥ ΤΟΠΟΥ (Web Site Design Technologies) Διδάσκων Καθηγητής: Δημήτριος Τσουμάκος Εαρινό Εξάμηνο 2010 Βασικές Πληροφορίες Πότε: Δευτέρα & Πέμπτη 10:30-12μμ Πού: ΧΩΔ01

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

Αν παρ όλα αυτά αντιμετωπίζετε πρόβλημα, επικοινωνήστε με το Κέντρο Δικτύου της ΑΣΠΑΙΤΕ Τηλ 210 2896709, 210 2896722, 210 2896721, noc@aspete.

Αν παρ όλα αυτά αντιμετωπίζετε πρόβλημα, επικοινωνήστε με το Κέντρο Δικτύου της ΑΣΠΑΙΤΕ Τηλ 210 2896709, 210 2896722, 210 2896721, noc@aspete. H υπηρεσία VPN προσφέρει τη δυνατότητα σε χρήστες της ΑΣΠΑΙΤΕ που συνδέονται στο Internet από άλλους φορείς (πχ ISP, άλλα ιδρύματα, κτλ) να αποκτούν ασφαλή πρόσβαση στο δίκτυο και στις υπηρεσίες της Σχολής.

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

ΤΕΧΝΟΛΟΓΙΑ ΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

ΤΕΧΝΟΛΟΓΙΑ ΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ Ηυιοθέτησητης τεχνολογίαςκαι αρχιτεκτονικής TCP/IP δεν έρχεται σε σύγκρουσηµε το µοντέλο του OSI και αυτό γιατί και τα δυο συστήµατααναπτύχθηκαν συγχρόνως. Παρόλα αυτά, υπάρχουν ορισµένες ουσιώδεις διαφορές

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

Περιεχόµενα 1. Εγκατάσταση 2. Εισαγωγή 3. Σύνδεση 4. Ρυθµίσεις 2.1 Περιοχή εργασιών και πλοήγησης 2.2 Περιοχή απεικόνισης "Λεπτοµέρειες" 2.3 Περιοχή απεικόνισης "Στατιστικά" 4.1 Προφίλ 4.2 ίκτυο 4.2.1

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

Ειδικά θέματα σε κινητά και ασύρματα δίκτυα

Ειδικά θέματα σε κινητά και ασύρματα δίκτυα Ειδικά θέματα σε κινητά και ασύρματα δίκτυα Εύη Παπαϊωάννου Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διαχείρισης Πολιτισμικού Περιβάλλοντος και Νέων Τεχνολογιών Σκοποί ενότητας Παρουσίαση θεμάτων

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

QEMS TUTORIAL CRM. Οδηγίες για το νέο πρωτοποριακό πρόγραμμα της QEMS.

QEMS TUTORIAL CRM. Οδηγίες για το νέο πρωτοποριακό πρόγραμμα της QEMS. QEMS TUTORIAL CRM Οδηγίες για το νέο πρωτοποριακό πρόγραμμα της QEMS. ΕΚΔΟΣΗ 1.0.1 + 26/6/2014 ΠΕΡΙΕΧΟΜΕΝΑ ΕΙΣΑΓΩΓΗ... 2 LOGIN... 3 δικαιωματα ΕΦΑΡΜΟΓΗς... 4 ΙΔΙΟΚΤΗΤΗΣ... 4 ADMIN / MANAGER... 4 ΥΠΑΛΗΛΟΣ...

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

World Wide Web: Ο παγκόσµιος ιστός Πληροφοριών

World Wide Web: Ο παγκόσµιος ιστός Πληροφοριών Περιεχόµενα World Wide Web: Ο παγκόσµιος ιστός Πληροφοριών Εισαγωγή Ιστορική Αναδροµή Το ιαδίκτυο και το WWW Υπερκείµενο Εντοπισµός πληροφοριών στο WWW Search Engines Portals Unicode Java Plug-Ins 1 2

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

Α.Τ.Ε.Ι. ΚΑΒΑΛΑΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ

Α.Τ.Ε.Ι. ΚΑΒΑΛΑΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ σελ. 1 Α.Τ.Ε.Ι. ΚΑΒΑΛΑΣ ΤΜΗΜΑ ΒΙΟΜΗΧΑΝΙΚΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΔΙΑΧΕΙΡΙΣΗ ΧΡΗΣΤΩΝ ΔΙΚΤΥΟΥ ΜΕΣΩ ΙΣΤΟΣΕΛΙΔΑΣ ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ ΤΣΕΤΣΟΣ ΚΩΝΣΤΑΝΤΙΝΟΣ ΣΠΟΥΔΑΣΤΕΣ ΣΑΡΗΜΑΝΩΛΗΣ ΧΡΗΣΤΟΣ ΚΟΡΚΟΥ ΕΥΑΓΓΕΛΙΑ

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

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΉΜΙΟ ΚYΠΡΟΥ

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΉΜΙΟ ΚYΠΡΟΥ ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΉΜΙΟ ΚYΠΡΟΥ ΟΔΗΓΟΣ ΣΥΝΔΕΣΗΣ ΣΤO ΔΙΚΤΥΟ ΤΟΥ ΤΠΚ ΜΕΣΩ ΤΗΣ ΥΠΗΡΕΣΙΑΣ ΑΠΟΜΑΚΡΥΣΜΕΝΗΣ ΠΡΟΣΒΑΣΗΣ VPN ΥΣΠΤ Η υπηρεσία πρόσβασης στο δίκτυο δεδομένων του ΤΠΚ μέσω εικονικού ιδιωτικού δικτύου

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

Π ΤΥ Χ ΙΑ Κ Η ΕΡΓΑΣΙΑ

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

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

Cubitech Hellas Ακροπόλεως 24, Καλλιθέα, Αθήνα Τ.Κ. 176 75, Ελλάδα, Τηλ. 210 9580887-8 Φαξ.2109580885

Cubitech Hellas Ακροπόλεως 24, Καλλιθέα, Αθήνα Τ.Κ. 176 75, Ελλάδα, Τηλ. 210 9580887-8 Φαξ.2109580885 CubisLITE Client Οδηγίες Χρήσεως Cubitech Hellas Ακροπόλεως 24, Καλλιθέα, Αθήνα Τ.Κ. 176 75, Ελλάδα, Τηλ. 210 9580887-8 Φαξ.2109580885 1 ΠΕΡΙΕΧΟΜΕΝΑ Γενικά 1. Τι είναι ο CubisLITE Server 2. Τι είναι ο

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

Cloud Computing with Google and Microsoft. Despoina Trikomitou Andreas Diavastos Class: EPL425

Cloud Computing with Google and Microsoft. Despoina Trikomitou Andreas Diavastos Class: EPL425 Cloud Computing with Google and Microsoft Despoina Trikomitou Andreas Diavastos Class: EPL425 Σχεδιάγραμμα Εισαγωγή Τεχνολογίες Cloud Computing Περιγραφή Εργασίας Επιτεύγματα Εργασίας Συμπεράσματα Cloud

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 003.1 - Επιστήµη της Πληροφορικής και Πληροφοριακά Συστήµατα Ακαδηµαϊκό έτος 2010 2011, Χειµερινό εξάµηνο Τελική Εξέταση: Σάββατο - 04/12/10, Ώρα: 08:30-11:30,

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

SGA Διαχείριση Πρωτόκολλου

SGA Διαχείριση Πρωτόκολλου SGA Διαχείριση Πρωτόκολλου SGA Διαχείριση Πρωτόκολλου 1. SGA Διαχείριση Πρωτοκόλλου... 2 1.1. Καινοτομία του προσφερόμενου προϊόντος... 2 1.2. Γενικές αρχές του προσφερόμενου συστήματος... 2 1.3. Ευκολία

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

ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ CLASSWEB Εισαγωγή βαθμολογιών από διδάσκοντες μέσω Διαδικτύου

ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ CLASSWEB Εισαγωγή βαθμολογιών από διδάσκοντες μέσω Διαδικτύου ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΔΙΕΥΘΥΝΣΗ ΜΗΧΑΝΟΡΓΑΝΩΣΗΣ ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ CLASSWEB Εισαγωγή βαθμολογιών από διδάσκοντες μέσω Διαδικτύου Συντάκτες: Παναγιώτα Μπούγια Θεοδώρα Νάνου Ιανουάριος 2015 Περιεχόμενα 1. Εισαγωγή...

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

K9 Γονικός έλεγχος. Εισαγωγή

K9 Γονικός έλεγχος. Εισαγωγή Εισαγωγή Το Κ9 αποτελεί ένα εύχρηστο πρόγραμμα γονικού ελέγχου με το οποίο μπορούμε να φιλτράρουμε τις δραστηριότητες του παιδιού μας στο Διαδίκτυο. Το παρόν αποτελεί ένα συνοπτικό οδηγό για την εγκατάσταση

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