Database Frameworks

Βοήθεια λύσεις και νέα από τον χώρο των open source ή έτοιμων εφαρμογών που έχουν φτιαχτεί με την PHP όπως oscommerce, κ.α.

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
Άβαταρ μέλους
nikirtsi
Δημοσιεύσεις: 169
Εγγραφή: 02 Ιουν 2006 16:35

Database Frameworks

Δημοσίευση από nikirtsi » 09 Νοέμ 2008 12:10

Καλησπέρα σας.

Κάνω μία εύρενα σχετική με τα PHP DataBase Frameworks
(Περιβάλλοντα προγραμματισμού βάσεων δεδομένων με PHP)
Και χρειάζομαι βοήθεια

Όποιος θέλει, ας αναφέρει κάποιο τέτοιο περιβάλλον (πχ pearDB, CAKEphp κτλ) ή ακόμα και δικό του, με σκοπό να το μελετήσω και να το εντάξω στην εύρενα μου.

Ή την εμπειρία του από την χρήση κάποιου.

Άν κάποιος γνωρίζει που μπορώ να βρώ υλικό σε θεωριτικό επίπεδο (λειτουργίες ενός DB Framework, πλεονεκτήματα του ενός έναντι του άλλου) θα το ήμουν ευγνώμων.
Ακόμα και ο ήλιος, στό αριστερό μελίγγι μου ανατέλλει καί στό ζερβό δύει.

Άβαταρ μέλους
tsiger
Honorary Member
Δημοσιεύσεις: 1431
Εγγραφή: 11 Νοέμ 2002 13:40
Τοποθεσία: Thessaloniki Observation Center
Επικοινωνία:

Database Frameworks

Δημοσίευση από tsiger » 09 Νοέμ 2008 13:20

Προσωπικά πλέον χρησιμοποιώ το Codeigniter (http://codeigniter.com/) το οποίο βρήκα εύκολο στην εκμάθηση και με το καλύτερο documentation.

Σε θεωρητικό επίπεδο τώρα αν οι γνώσεις σου πάνω σε OOP και στο MVC pattern είναι σε καλό επίπεδο τότε για το συγκεκριμένο το μόνο που χρειάζεσαι είναι το documentation του.

Άβαταρ μέλους
nikirtsi
Δημοσιεύσεις: 169
Εγγραφή: 02 Ιουν 2006 16:35

Database Frameworks

Δημοσίευση από nikirtsi » 09 Νοέμ 2008 13:39

Ευχαριστώ για την άμεση ανταπόκριση tsiger

Το CodeIgniter αν και σχετικά καινούργιο έχει πολλά πλεονεκτήματα
αλλά σφετερίζεται σε ποιο αφηρημένες έννοιες όπως το Web apllication frameworking
και όχι αποκλειστικά και μόνον στο Database frameworiking όπου το ενδιαφέρον μου κυμαίνετε.

Παρόλα αυτά έχει μία σχετική αυτοματοποίηση από ότι πρόλαβα να δω σε επίπδο βάσεων μέσω της τάξεως Database (http://codeigniter.com/user_guide/database/index.html)
Θα μελετήσω σε βάθος κατά πόσο το Database Model συσχετίζεται με το View Model στα πλαίσια των ΜVC λειτουργιών του.

Άν γνωρίζεις επιπρόσθετες πληροφορίες, θα μου ήταν χρήσιμες.
Ευχαριστώ.
Ακόμα και ο ήλιος, στό αριστερό μελίγγι μου ανατέλλει καί στό ζερβό δύει.

Άβαταρ μέλους
alexandr0s
Δημοσιεύσεις: 1064
Εγγραφή: 25 Απρ 2006 17:16
Τοποθεσία: localhost
Επικοινωνία:

Database Frameworks

Δημοσίευση από alexandr0s » 09 Νοέμ 2008 16:56

Καλησπέρα,
Χρησιμοποιώ εδώ και καιρό το CakePHP (την έκδοση 1.19, έχει βγει και έκδοση 1.20 αλλά δεν έχω αξιωθεί να κάνω migrate). Μπορώ να πω ότι είμαι πολύ ευχαριστημένος. Δυσκολεύτηκα στην αρχή (και ίσως ακόμα να μην τα έχω καταφέρει πλήρως) να μπω στη λογική του Model View Control. Αν θες να διαβάσεις για Database Frameworks σε frameworks όπως το CakePHP ή το Codeigniter θα πρέπει να εστιάσεις στο 'Model' κομμάτι. Επίσης το model κομμάτι κανονικά σχετίζεται με το view κομμάτι μέσω του controller.

Άβαταρ μέλους
nikirtsi
Δημοσιεύσεις: 169
Εγγραφή: 02 Ιουν 2006 16:35

Database Frameworks

Δημοσίευση από nikirtsi » 09 Νοέμ 2008 18:07

Ευχαριστώ alexandr0s

Έχω βρει αρκετά frameworks προς μελέτη όπως
Agavi, Akelos, CakePHP, CodeIgniter, Symphony, Zoop, Qcodo, Zend
Προσωπικά έχω αναπτύξει και ένα. Ονομάζεται Promitheus.

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

Σε θυμάμαι από παλιά alexandr0s όπου ήσουν υπέρ του cakePHP.
Μία φωτιστική απάντηση θα ήταν γιατί επέλεξες το εν λόγω έναντι των άλλων, τι επιπρόσθετα πλεονεκτήματα έχει εις βάρος ποιον μειονεκτημάτων.
Ακόμα και ο ήλιος, στό αριστερό μελίγγι μου ανατέλλει καί στό ζερβό δύει.

Άβαταρ μέλους
Basilakis
PHP Moderator
Δημοσιεύσεις: 8574
Εγγραφή: 17 Νοέμ 2003 13:03
Τοποθεσία: Womans' Brain
Επικοινωνία:

Database Frameworks

Δημοσίευση από Basilakis » 10 Νοέμ 2008 12:43

nikirtsi έγραψε:Μία φωτιστική απάντηση θα ήταν γιατί επέλεξες το εν λόγω έναντι των άλλων, τι επιπρόσθετα πλεονεκτήματα έχει εις βάρος ποιον μειονεκτημάτων.
Πολύ θα ήθελα να ακούσω και εγώ... Ψάχνομαι καιρό τι να χρησιμοποιήσω και δεν έχω καταλήξει...

Άβαταρ μέλους
alexandr0s
Δημοσιεύσεις: 1064
Εγγραφή: 25 Απρ 2006 17:16
Τοποθεσία: localhost
Επικοινωνία:

Database Frameworks

Δημοσίευση από alexandr0s » 11 Νοέμ 2008 01:13

nikirtsi έγραψε:Ευχαριστώ alexandr0s

Έχω βρει αρκετά frameworks προς μελέτη όπως
Agavi, Akelos, CakePHP, CodeIgniter, Symphony, Zoop, Qcodo, Zend
Προσωπικά έχω αναπτύξει και ένα. Ονομάζεται Promitheus.

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

Σε θυμάμαι από παλιά alexandr0s όπου ήσουν υπέρ του cakePHP.
Μία φωτιστική απάντηση θα ήταν γιατί επέλεξες το εν λόγω έναντι των άλλων, τι επιπρόσθετα πλεονεκτήματα έχει εις βάρος ποιον μειονεκτημάτων.
Το επέλεξα για τους παρακάτω λόγους:
1. Παίζει και σε PHP4 και σε PHP5 με ελάχιστες αλλαγές
2. Υποστηρίζει αρκετά RDBMS εκ των οποίων MySQL αλλά και MS SQL Server που ήθελα
3. Είχα παρακολουθήσει το community του και είχα δει ότι ήταν αρκετά ενεργό τόσο από άποψη Updates, όσο και βοήθειας και από google groups και από irc
4. Εϊδα ότι λόγο του ρυθμού ανάπτυξης που είχε μπορεί να είχε 1-2 features λιγότερα από κάποια άλλα, αλλά αναπτυσσόταν συνέχεια που σημαίνει ότι κάποια στιγμή θα τα ξεπερνούσε
5. Καλούτσικο documentation και tutorials
6. Μπορούσε να περάσει πολύ σύντομο χρονικό διάστημα από το διάβασμα μέχρι τη πρώτη ανάπτυξη μιας εφαρμογής
7. Έχει το bakery.cakephp.org, ένα πλήθος components κτλ
8. Δεν χρειάζεται να γράφεις συνέχεια SQL Statements :D

Αρνητικά που έχω συναντήσει ή που έχω αντιμετωπίσει
1. Όταν είχα ξεκινήσει ήταν στην 1.1 έκδοση και τώρα έχει πάει στην 1.2 με σημαντικές αλλαγές με αποτέλεσμα να πρέπει κάποια πράγματα να τα ξαναδιαβάσω
2. Είναι ένα framework, θα σε καλύψει για ένα μεγάλο ποσοστό πραγμάτων που θες να κάνεις, αλλά για ένα μικρό ποσοστό θα σε ταλαιπωρήσει
3. Θέλει προσοχή με ajax και να μη μπεις στη λογική να χρησιμοποιήσεις τις βιβλιοθήκες που έχει γιατι το 5% των πραγμάτων που θα θες να κάνεις θα σε πάρουν όσο το υπόλοιπο 95%
4. Για μερικά πράγματα αναγκαστικά θα γράψεις SQL
5. Μπορεί να έχει κάποιο bug που μπορεί να σε ταλαιπωρήσει αρκετά

Αυτά μπορώ να σκεφτώ προς το παρόν. Ελπίζω να σε βοήθησα κάπως

Άβαταρ μέλους
nikirtsi
Δημοσιεύσεις: 169
Εγγραφή: 02 Ιουν 2006 16:35

Database Frameworks

Δημοσίευση από nikirtsi » 13 Νοέμ 2008 18:19

Ευχαριστώ alexandros

Έθεσες μια χαρά τα επιχειρήματα σου.

Σαφώς και δεν γνωρίσεις εις βάθος τα υπόλοιπα frameworks για να μπορείς
να συγκρίνεις τα πλεονεκτήματα και τα μειονεκτήματα εναντί των άλλων.
αλλά έδωσες μια καλή εικόνα περί της απόψεως σου για το cakePHP.

Συντόμως θα ολοκληρώσω την έρευνα και θα συμπεριλάβω την γνώση που προσφέρεις.


Όσοι ενδιαφέρονται θα τους την στείλω (θα αποσκοπεί στην σύγκριση λειτουργιών
των δημοφιλών Web application framework).

Άν υπάρχει και κάποιος άλλος να μεταφέρει επιχειρηματολογώντας
την άποψη του για κάποιο framework θα του ημουν ευγνώμων.
Ακόμα και ο ήλιος, στό αριστερό μελίγγι μου ανατέλλει καί στό ζερβό δύει.

Άβαταρ μέλους
tsiger
Honorary Member
Δημοσιεύσεις: 1431
Εγγραφή: 11 Νοέμ 2002 13:40
Τοποθεσία: Thessaloniki Observation Center
Επικοινωνία:

Database Frameworks

Δημοσίευση από tsiger » 14 Νοέμ 2008 14:48

Αν αυτό βοηθάει στην ερευνά σου, επέλεξα το CodeIgniter για τους παρακάτω λόγους:

1. Τρομερό documentation
2. Η κοινότητα υποστήριξης είναι απλά τρομερή
3. Δεν με "πιέζει" στη χρήση του MVC pattern. (Μπορώ να χρησιμοποιήσω μόνο Views και Controllers για απλά πράγματα.
4. Έχει ωριμάσει αρκετά και τα όποια bugs προκύπτουν διορθώνονται άμεσα (όχι μέσω επίσημης release, αλλά είναι εύκολο να βρείς τα patches)
5. Μεγάλη έμφαση στην ασφάλεια δεδομένων που προέρχονται από POST και GET (GETs disabled by default)
6. Πολλά tutorials around

Άβαταρ μέλους
nikirtsi
Δημοσιεύσεις: 169
Εγγραφή: 02 Ιουν 2006 16:35

Database Frameworks

Δημοσίευση από nikirtsi » 04 Δεκ 2008 13:46

Ολοκλήρωσα και συνοπτικά σας αναφέρω τα εξής.


Χαρακτηριστικά διαδικτυακών πλαισίων
Υπάρχουν πολλά κριτήρια τα οποία μπορούν να χαρακτηρίζουν ένα διαδικτυακό πλαίσιο λογισμικού, τα ουσιαστικότερα όμως εξ αυτών είναι η ασφάλεια, η πρόσβαση σε βάσεις δεδομένων, η χαρτογράφηση των URLs, το σύστημα διαχείρισης περιγραμμάτων, οι τεχνικές προσωρινής αποθήκευσης, η υποστήριξη Ajax, η αυτόματη ρύθμιση και οι παρεχόμενες υπηρεσίες διαδικτύου.

• Ασφάλεια
Τα διαδικτυακά πλαίσια παρέχουν συνήθως λειτουργίες αναγνώρισης, πιστοποίησης και τελικώς εξουσιοδότησης επί των χρηστών της εφαρμογής, περιορίζοντας την πρόσβαση σε λειτουργίες με βάση ορισμένα θεμιτά κριτήρια.
• Πρόσβαση σε βάσεις δεδομένων
Τα διαδικτυακά πλαίσια δημιουργούν έναν ενοποιημένο τρόπο διαχειρίσεως βάσεων δεδομένων ο οποίος θα πρέπει να αποσκοπεί στην σύνδεση και χρήση των βάσεων δεδομένων σε ένα υψηλότερο επίπεδο εννοιών.
• Χαρτογράφηση URL
Η χαρτογράφηση ενός URL είναι εκείνος ο μηχανισμός ο οποίος έχει την ικανότητα να ερμηνεύει τα URLs.
• Σύστημα διαχείρισης περιγραμμάτων
Οι δυναμικές ιστοσελίδες συνήθως αποτελούνται από ένα στατικό μέρος (HTML) και ένα δυναμικό, το οποίο τελικώς με την σειρά του δημιουργεί περιεχόμενο τύπου HTML.
Το δυναμικό μέρος (όπου το δημιουργηθέν περιεχόμενο συνήθως προέρχεται από μια βάση δεδομένων) θα πρέπει να δίνει την ικανότητα της παραμετροποίησεως του προβολικού των δεδομένων αυτών και το εξής είναι υπ’ ευθύνη του συστήματος διαχείρισης περιγραμμάτων (Template Management System – TMS)
• Τεχνικές προσωρινής αποθήκευσης
Η διαδικασία της προσωρινής αποθήκευσης (Web Cashing) αναφέρεται στην μείωση του χρόνου που απαιτείται από την παραγωγή περιεχομένου μέσω δυναμικών μερών με διάφορες τεχνικές. Παραδείγματος χάριν μπορεί ένα δυναμικό μέρος να παράγει εξ ορισμού ένα στατικό μέρος έως ότου τελικώς το ουσιαστικό δυναμικό περιεχόμενο του (που συνήθως φιλοξενείται σε μία βάση) αλλάξει.Με διάφορα τέτοια κριτήρια μπορεί να αποδοθεί τελικώς αύξηση στην ταχύτητα εξυπηρέτησης. Χαρακτηριστικό των Web πλαισίων, είναι πως διαχειρίζονται τις τεχνικές Cashing, στην περίπτωση που υπάρχουν.
• Υποστήριξη Ajax
To Ajax (Asyncrhonous JavaScript and XML) είναι μία τεχνική όπου βασιζόμενη σε αιτήσεις εξυπηρέτησης τύπου XML_HTTP_Requests μπορεί να επιτυγχάνει ασύγχρονα διαδραστικά περιβάλλοντα στις εφαρμογές του διαδικτύου.
Η εννοια του ασύγχρονου βασίζεται στο να μην αιτηθεί εκ νέου μέσω HTTP Request περιεχόμενο, αλλα αυτή η διαδικασία να εκτελεστεί στο παρασκήνιο αντλώντας περιεχόμενο ασύγχρονα με χρήση Javascript από αποθήκες δεδομένων τύπου XML Data.. Η υποστήριξη και η χρήση της τεχνολογίας Ajax είναι ένα χαρακτηριστικό των διαδικτυακών πλαίσιων λογισμικού.
• Αυτόματη ρύθμιση
Ορισμένα πλαίσια επιτρέπουν μέσω καταλλήλων αυτοματοποιημένων διεπαφών την εύκολη και γρήγορη εγκατάσταση και παραμετροποίησή τους στις εκάστοτε ανάγκες μίας διαδυκτιακής εφαρμογής.
Επί παραδείγματι θα μπορούσε να υπάρχει ένα αυτοματοποιημένο περιβάλλον δημιουργίας βάσεων δεδομένων ή μία εύκολη τοποθέτηση των ρυθμίσεων συνδέσεως της βάσεως με το πλαίσιο υπό την χρήση ενός γραφικού περιβάλλοντος.
• Διαδικτυακές υπηρεσίες
Ορισμένα πλαίσια παρέχουν εργαλεία για τη δημιουργία και παροχή υπηρεσιών web. Αυτά τα βοηθητικά προγράμματα μπορούν να προσφέρουν παρόμοια εργαλεία όπως το υπόλοιπο της εφαρμογής και χαρακτηρίζει τα διαδικτυακά πλαίσια λογισμικού στην περίπτωση όπου υποστηρίζονται και κατά πόσο.


Σύγκριση PHP πλαισίων
Σκοπός του εξής κεφαλαίου είναι να αναφερθεί σε μία σύγκριση επί των PHP διαδικτυακών πλαισίων λογισμικού που παρουσιάστηκαν στο προηγούμενο κεφάλαιο.

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

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


*Όποιος ενδιαφέρετε για όλο το paper ας μου πει να του το στείλω.
Ακόμα και ο ήλιος, στό αριστερό μελίγγι μου ανατέλλει καί στό ζερβό δύει.

Άβαταρ μέλους
tsiger
Honorary Member
Δημοσιεύσεις: 1431
Εγγραφή: 11 Νοέμ 2002 13:40
Τοποθεσία: Thessaloniki Observation Center
Επικοινωνία:

Database Frameworks

Δημοσίευση από tsiger » 04 Δεκ 2008 14:58

"διαδικτυακά πλαίσια". Δε πιστεύω να γραφεις βιβλια για τον Γκουρδα; Οχι ρε μαν, μερικά πραγματα δε μεταφραζονται. Ο ορος διαδικτυακο πλαισιο μπορει να συμπεριλαβει οτι κατεβασει ο νους μου.

Άβαταρ μέλους
Basilakis
PHP Moderator
Δημοσιεύσεις: 8574
Εγγραφή: 17 Νοέμ 2003 13:03
Τοποθεσία: Womans' Brain
Επικοινωνία:

Database Frameworks

Δημοσίευση από Basilakis » 04 Δεκ 2008 16:41

Θα μπορούσα να το έχω;

email: basilis@jailbait.gr

Άβαταρ μέλους
nikirtsi
Δημοσιεύσεις: 169
Εγγραφή: 02 Ιουν 2006 16:35

Database Frameworks

Δημοσίευση από nikirtsi » 04 Δεκ 2008 18:32

Tsiger
"Οχι ρε μαν", μερικά πραγματα δε μεταφραζονται.

Εννοείς, "όχι ρε άνθρωπε" ?
:wink:

BasilakisWeb
Μόλις στο έστειλα
Ακόμα και ο ήλιος, στό αριστερό μελίγγι μου ανατέλλει καί στό ζερβό δύει.

Άβαταρ μέλους
tsiger
Honorary Member
Δημοσιεύσεις: 1431
Εγγραφή: 11 Νοέμ 2002 13:40
Τοποθεσία: Thessaloniki Observation Center
Επικοινωνία:

Database Frameworks

Δημοσίευση από tsiger » 04 Δεκ 2008 21:47

Α. ΟΚ.....

Άβαταρ μέλους
viktoras
Δημοσιεύσεις: 963
Εγγραφή: 05 Απρ 2001 03:00
Τοποθεσία: Γαλάτσι, Αθήνα
Επικοινωνία:

Database Frameworks

Δημοσίευση από viktoras » 05 Δεκ 2008 13:42

nikirtsi, θα ήταν καλό να είσαι πιο ευγενικός απέναντι σε ανθρώπους που σε βοηθούν στην ερευνά σου... δεν μας αναφέρεις καν για ποιον λόγο την κάνεις.

Μιας και αναφέρθηκε το θέμα μεταφράσεων. Συμφωνώ με τον tsiger, ΔΕΝ μεταφράζονται όλα, γιατί δεν βγάζουν νόημα στα Ελληνικά.

Και εξήγησε μου εν τέλει γιατί μετέφρασες τα Frameworks ως "διαδικτυακά πλαίσια" γιατί δεν μετάφρασες όρους όπως:
URL: Ενιαίος Εντοπιστής Πόρων
Template Management System: Σύστημα διαχείρησης εικαστικών προτύπων
Web Cashing: Διαδικτυακή εξαργύρωση - αν έγραφες Caching, ίσως γινόταν κάτι καλύτερο...

Και θα μπορούσα να συνεχίσω...

Παρεπιπτόντως, δεν υπάρχει όρος "PHP Database Frameworks", PHP Frameworks. Σκέτο. Δεν είναι η ευκολία που παρέχουν για τις εργασίες με τις βάσεις δεδομένων αλλά πολλά περισσότερα.

Χωρίς να θέλω να σε προσβάλλω, διαβάζοντας το απόσπασμα σου μπορώ να πω ότι δεν έβγαλα άκρη. Ορισμένα που γράφεις είναι τελείως λανθασμένα [ π.χ. "Ασφάλεια", "Templates" - τα *σοβαρά* frameworks δεν ασχολούνται με το πως θα εμφανίσει ο developer τα Models του αλλά ΜΠΟΡΕΙ να του παρέχουν ευκολίες. ] και αλλού απλά δεν βγάζω άκρη! [ "Διαδικτυακές υπηρεσίες" - ατυχής μετάφραση στην παροχή API για δημοφιλή web services ]

Γενικότερα, η χρήση βαρύγδουπων εκφράσεων χωρίς ουσιαστικό περιεχόμενο δεν κάνει σοβαρό κάποιο "paper"...

just my 0.02€
<?="Hello Freestuff";?>
Quality hosting by Cityhost

Απάντηση

Επιστροφή στο “PHP έτοιμες εφαρμογές”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες