Python και Python και Νίκος Νοδαράκης 17 Μαΐου 2010
Python και Τι είναι το ; Περιγραφή του Ορισµός Το είναι µια στοίβα λογισµικού για ϕορητές συσκευές που περιλαµβάνει ένα λειτουργικό σύστηµα, middleware και εφαρµογές. Είναι open source και ϐασίζεται σε µια τροποποιηµένη έκδοση του πυρήνα του Linux. Το SDK παρέχει εργαλεία και APIs προκειµένου να µπορέσει κάποιος να αναπτύξει εφαρµογές για την πλατφόρµα σε Java.
Python και Τι είναι το ; Χαρακτηριστικά του Χαρακτηριστικά Πλαίσιο εφαρµογών Dalvik virtual machine Browser Βελτιστοποιηµένα γραφικά SQLite Υποστήριξη πολυµέσων GSM Telephony Bluetooth, EDGE, 3G, WiFi Κάµερα, GPS, πυξίδα και accelerometer Πλούσιο περιβάλλον ανάπτυξης εφαρµογών
Python και Τι είναι το ; Αρχιτεκτονική Σχήµα: Αρχιτεκτονική του
Python και Μόνο Java; Μόνο Java; Και αν δεν ϑέλω Java; Η ανάπτυξη εφαρµογών γίνεται σε Java. Υπάρχουν κατάλληλα εργαλεία που διευκολύνουν την συγγραφή κώδικα, το debugging, την εξοµοίωση κλπ. Υπάρχει άλλη λύση;
Python και Μόνο Java; Oh yes!!!!
Python και NDK NDK Τι είναι το NDK; Είναι ένα toolset που επιτρέπει την ενσωµάτωση components που χρησιµοποιούν C και C++. Προσφέρει παροχές σε κάποιες κλάσεις εφαρµογών. Επαναχρησιµοποίηση ήδη υπάρχοντα κώδικα. Αύξηση της ταχύτητας εκτέλεσης.
Python και Scripting Environment Scripting Environment(ASE) Τι είναι το Scripting Environment; Εφαρµογή που επιτρέπει την δηµιουργία και εκτέλεση scripts και διαδραστικών διερµηνευτών κατευθείαν για την πλατφόρµα. Πρόσβαση µε τη ϐοήθεια πολλών διαθέσιµων APIs σε πολλές εφαρµογές της πλατφόρµας Απλοποιηµένα interfaces που ϐοηθούν στην ανάπτυξη. Τα scripts µπορούν να τρέχουν διαδραστικά σε ένα terminal, στο background ή µέσω Locale. Προς το παρόν υποστηρίζει Python, Perl, JRuby, Lua, BeanShell, JavaScript, Tcl και shell.
Python και Scripting Environment ιαφορές Υπάρχουν διαφορές; Καµία διαφορά απολύτως! Υπάρχουν όµως επιπλέον δυνατότητες! Εκµετάλευση των APIs που υπάρχουν για αλληλεπίδραση µε την συσκευή! ηµιουργία εφαρµογών µε περισσότερες δυνατότητες!
Python και Scripting Environment Παράδειγµα 1 Hello,! p r i n t ( H e l l o )
Python και Scripting Environment Παράδειγµα 2 Hello, again! import android d r o i d = android. ( ) d r o i d. maketoast ( Hello, again! )
Python και Scripting Environment Παράδειγµα 3 Say the weather(1) import import android weather def say_weather ( d r o i d ) : " " " Speak the weather at the c u r r e n t l o c a t i o n. " " " p r i n t F i n d i n g Z I P code addresses = d r o i d. geocode ( 3 8. 2 5 4 4 7, 2 1. 7 3 7 0 7, 3 ) z i p = addresses. r e s u l t [ 0 ] [ l o c a l i t y ] i f z i p i s None : msg = F a i l e d to f i n d location
Python και Scripting Environment Παράδειγµα 3 Say the weather(2) e l s e : p r i n t Fetching weather report r e s u l t = weather. fetch_weather ( z i p ) msg = %( temperature ) s degrees and %( c o n d i t i o n ) s, i n %( c i t y ) s. % r e s u l t d r oid. speak ( msg ) i f name == main : d r oid = android. ( ) say_weather ( d r o id )
Python και Πλεονεκτήµατα και µειονεκτήµατα Πλεονεκτήµατα Πλεονεκτήµατα του Scripting Environment Επιτρέπει την εκτέλεση scripts από πολλές scripting languages. Αλληλεπίδραση µε λειτουργίες της κινητής συσκευής µέσω διάφορων APIs και δηµιουργία όµορφων εφαρµογών. Ανάπτυξη ισχυρών εφαρµογών µε λίγες γραµµές κώδικα µε λιγότερες απαιτήσεις σε resources από τις αντίστοιχες Java εφαρµογές. Τα scripts µπορούν να τρέχουν διαδραστικά σε ένα terminal, στο background ή µέσω Locale.
Python και Πλεονεκτήµατα και µειονεκτήµατα Μειονεκτήµατα Μειονεκτήµατα του Scripting Environment Προγραµµατισµός στην συσκευή και όχι σε κάποιο IDE. υσκολία στην συγγραφή κώδικα, στο debugging και σε όποιες άλλες ευκολίες προσφέρει ένα IDE. Πιο αργή εκτέλεση των scripts. Υπαρξη bugs.
Python και vs iphone vs Windows Mobile 7 Γιατί ; Και αν δεν ϑέλω ; Γιατί να τρέξω python scripts σε πλατφόρµα και όχι σε κάποια άλλη;
Python και vs iphone vs Windows Mobile 7 Τι προσφέρει Open source πλατφόρµα. Καλό framework. Υποστήριξη multitasking. Εύχρηστο IDE, εύκολο debugging δωρεάν το development SDK. Υποστήριξη και άλλων γλωσσών(πχ Python, C κλπ ). Υποστήριξη widgets. Αλληλεπίδραση και υπερσκέλιση όλων των λειτουργιών της κινητής συσκευής. Πρόσβαση στην sdcard της συσκευής και χρησιµοποίησής της σαν USB stick. Αµεσο publishing των εφαρµογών.
Python και vs iphone vs Windows Mobile 7 iphone Τι (δεν) προσφέρει Κλειστή πλατφόρµα. Μη υποστήριξη multitasking. Το development kit κοστίζει περίπου 90Ε. Στην επόµενη έκδοση δεν ϑα υποστηρίζει άλλες γλώσσες πέρα από Objective C. Μη υποστήριξη widgets. Τα applications δεν µπορούν να χρησιµοποιήσουν την λειτουργικότητα της συσκευής. εν υποστηρίζει πρόσβαση στην sdcard της συσκευής. Χρονοβόρο και πιο δύσκολο publishing των εφαρµογών.
Python και vs iphone vs Windows Mobile 7 Windows Mobile 7 Τι προσφέρει Κλειστή πλατφόρµα. Μη υποστήριξη multitasking για εφαρµογές πέρα από αυτές της συσκευής. Καλό IDE για ανάπτυξη εφαρµογών. εν υποστηρίζει άλλες γλώσσες πέρα από C#. Ασυµβατότητα µε Windows Mobile 6.x.
Python και vs iphone vs Windows Mobile 7 Python και Windows Mobile Python CE Το Python CE είναι ένα version του διερµηνευτή της python για κινητές συσκευές που τρέχουν Windows Mobile. Εκτέλεση εντολών διαδραστικά σε terminal. Εκτέλεση έτοιµων scripts. εν υπάρχει αλληλεπίδραση µε τις λειτουργίες της συσκεύης.
Python και vs iphone vs Windows Mobile 7 Python και iphone Λύση 1: PyObjC Χρησιµοποίηση της PyObjC. Απαιτείται χακάρισµα της συσκευής. Λύση 2: tinypy και Xcode tinypy: Μια περιορισµένη υλοποίηση της python. Συγγραφή εφαρµογής σε tinypy. Μετατροπή του κώδικα σε C++ µέσω του tinypy. ηµιουργία εφαρµογής κατάλληλης για το iphone µέσω του Xcode εργαλείου.
Python και vs iphone vs Windows Mobile 7 Python και Απάντηση Η απάντηση τελικά είναι προφανής! Μπορώ να τρέξω python scripts. Μπορώ να αναπτύξω εφαρµογές που αλληλεπιδρούν µε την συσκευή. Εχω περισσότερες δυνατότητες. Και κυρίως πολύ πιο εύκολα.
Python και Σύνοψη Σύνοψη Scripting Environment υνατότητα εκτέλεσης python scripts και όχι µόνο σε. Παρά τα όποια µειονεκτήµατά του είναι µια πάρα πολύ καλή προσπάθεια. Υποστήριξη νέων scripting languages µε το πέρασµα του χρόνου. Συνεχείς ϐελτιώσεις και προσθήκη νέων δυνατοτήτων. Αρκετό documentation και tutorials.
Python και How to begin; Χρήσιµα links SDK http://developer.android.com/index.html Scripting Environment http://code.google.com/p/android-scripting/ Eclipse IDE http://www.eclipse.org/downloads/
Python και The end The end!!!