Φορολογική Βιβλιοθήκη Θανάσης Φώτης Προγραμματιστής Εφαρμογών
Το έργο
Η φορολογική βιβλιοθήκη πρόκειται για ένα έργο που φιλοδοξεί να αποτελέσει σημαντικό βοήθημα για τον επαγγελματία λογιστή και όχι μόνο. Το έργο Συγκέντρωση των νόμων, ΠΟΛ, εγκυκλίων και δικαστικών αποφάσεων σε ένα portal. Εξελιγμένες λειτουργίες αναζήτησης και προβολής περιεχομένου. Η πλειοψηφία των λειτουργιών διατίθεται ελεύθερα σε όλους τους χρήστες ενώ κάποιες από αυτές είναι διαθέσιμες μόνο στους συνδρομητές.
LAMP http://en.wikipedia.org/wiki/lamp_(software_bundle) (L) Linux operating system: ελεύθερο λογισμικό ανοικτού κώδικα το οποίο χρησιμοποιείται σε πλήθος υπολογιστών και συσκευών Αρχιτεκτονική (A) Apache HTTP Server: ο πιο διαδεδομένος εξυπηρετητής παγκοσμίως (M) MySQL Database Server: σχεσιακή βάση δεδομένων με ευρεία υποστήριξη από την διαδικτυακή κοινότητα (P) PHP Hypertext Preprocessor: γλώσσα προγραμματισμού ειδικά σχεδιασμένη για ανάπτυξη διαδικτυακών εφαρμογών
Yii (Yes It Is!) http://www.yiiframework.com Περιβάλλον ανάπτυξης: Yii Το Yii είναι ένα open-source web application framework το οποίο έχει δημιουργηθεί με την PHP5 Δημιουργήθηκε το 2008 και δανείστηκε χαρακτηριστικά από άλλες open-source εφαρμογές όπως Prado, Symfony, Ruby on Rails και Joomla Μπορεί να χρησιμοποιηθεί σε projects όλων των ειδών, είτε πρόκειται για μια απλή εταιρική σελίδα είτε για μια σύνθετη εφαρμογή
Model-View-Controller (MVC) design pattern Yii: Χαρακτηριστι κά Database Access Objects (DAO), Query Builder, Active Record Form input and validation Authentication and authorization με τη χρήση RBAC (Role based access control) Αυξημένη ασφάλεια απέναντι σε επιθέσεις τύπου SQL injection, cross-site scripting (XSS), cross-site request forgery (CSRF)
Data caching, page caching, fragment caching and dynamic content Yii: Χαρακτηριστι κά Internationalization (I18N) and localization (L10N) Skinning and theming Error handling and logging Unit and functionality testing (PHPUnit and Selenium) Detailed documentation
Yii Σκοπός του MVC είναι να διαχωρίσει τo business logic κομμάτι της εφαρμογής (model) από το user interface (view). O controller αναλαμβάνει την επικοινωνία μεταξύ των δύο. Model-View- Controller (MVC) design pattern
To DAO επιτρέπει τη χρήση πολλαπλών βάσεων δεδομένων Yii Database Access Objects (DAO), Query Builder, Active Record Ο Query Builder προσφέρει έναν object-oriented τρόπο για την δημιουργία SQL queries To ActiveRecord αναπαριστά τον πίνακα μιας βάσης δεδομένων σαν ένα object και την γραμμή ενός πίνακα σαν ένα instance του object αυτού
Το Yii μας επιτρέπει να συνδέσουμε τις φόρμες δεδομένων με τα ίδια τα δεδομένα. Με αυτόν τον τρόπο συλλέγουμε τα δεδομένα από τις φόρμες αλλά και εκτελούμε validation στα δεδομένα αυτά. Yii Form input and validation
Yii Data caching, page caching, fragment caching and dynamic content Με την τεχνική caching, έχουμε την δυνατότητα να αποθηκεύσουμε δεδομένα σε κάποια προσωρινή τοποθεσία (δίσκο, μνήμη) και να τα ανακτήσουμε έπειτα χωρίς να χρειαστεί η επαναδημιουργία τους To Yii υποστηρίζει πολλές τεχνικές caching όπως: Memcache (in-memory key-value store) APC (opcode cache for for caching and optimizing PHP intermediate code) XCache (alternative to APC) EAccelerator (alternative to APC) File Cache Redis (in-memory key-value store) (με extension)
Η jquery είναι η πιο διαδεδομένη javascript βιβλιοθήκη και χρησιμοποιείται από εκατομμύρια ιστοσελίδες παγκοσμίως jquery write less, do more Χρησιμοποιείται για HTML document traversal, διαχείριση events, animation και κλήσεις AJAX Υποστηρίζει όλους του μεγάλους browsers όπως Chrome, Firefox, Safari, Opera και IE Επεκτείνεται με τη χρήση plugins
Το bootstrap είναι ένα CSS framework το οποίο μπορεί να χρησιμοποιηθεί για να απλοποιήσει την συγγραφή κώδικα για το web Bootstrap Δημιουργήθηκε και συντηρείται από την ομάδα του Twitter όπου και αρχικά χρησιμοποιήθηκε Αποτελείται από ένα σύνολο HTML, CSS και JavaScript αρχείων τα οποία διανέμονται ελεύθερα με την άδεια Apache Licence 2.0
Ερωτήσεις; Θανάσης Φώτης Tessera Multimedia S.A. tfotis@tessera.gr