acid18 Δημοσ. 4 Σεπτεμβρίου 2014 Δημοσ. 4 Σεπτεμβρίου 2014 Από τη μικρή εμπειρία που έχω σε εταιρία που ασχολείται με asp.net όλα γίνονται με nhibernate και δεν γράφουν ούτε γραμμή sql. Ήθελα να ρωτήσω σε όσους ασχολούνται επαγγελματικά με development σε php αν ισχυει το ίδιο ? Το doctrine είναι χρήσιμο ?
defacer Δημοσ. 5 Σεπτεμβρίου 2014 Δημοσ. 5 Σεπτεμβρίου 2014 Ναι, γενικά μιλώντας SQL δε γράφεις. To doctrine είναι πολύ χρήσιμο και διαδεδομένο αλλά κάθε εργαλείο έχει άλλου είδους "προσωπικότητα". Πρακτικά όλα τα frameworks συνοδεύονται από κάποιο ORM. Για standalone πράγματα που μπορείς να τα ενσωματώσεις σε κάτι μεγαλύτερο βλέπεις doctrine, propel και eloquent. Για πιο lightweight καταστάσεις αξίζει να δεις και redbeanphp.
ParhsG Δημοσ. 5 Σεπτεμβρίου 2014 Δημοσ. 5 Σεπτεμβρίου 2014 Δε γραφουν HQL στο hibernate; Στο doctrine προσωπικα (μπορει να ειμαι χαζος) μερικες φορες επρεπε να καταφυγω σε raw SQL. Οπως για παραδειγμα fulltext search σε postgresql δεν υποστηριζόταν. Δηλαδη μπορει να γράφεις sql αλλα δυσκολευομαι να πιστεψω οτι μπορει να βγει ενα project χωρις τη χρηση καποιας όπως πχ HQL που ειναι object oriented.
acid18 Δημοσ. 5 Σεπτεμβρίου 2014 Μέλος Δημοσ. 5 Σεπτεμβρίου 2014 Όχι αλλά γράφουν linq, φανταζομαι είναι το ίδιο με το να χρησιμοποιείς hql.
acid18 Δημοσ. 7 Σεπτεμβρίου 2014 Μέλος Δημοσ. 7 Σεπτεμβρίου 2014 π.χ υπάρχει αυτός ο κώδικας: public IList<Banner> SelectActive() { IQueryable<Banner> banners = from thisItem in _session.Query<Banner>() select thisItem; banners = from thisItem in banners where thisItem.Disabled == false orderby thisItem.UploadDate descending select thisItem; return banners.ToList(); } δεν είναι αυτός ο τρόπος ενναλακτικός του HQL ?
defacer Δημοσ. 9 Σεπτεμβρίου 2014 Δημοσ. 9 Σεπτεμβρίου 2014 δεν είναι αυτός ο τρόπος ενναλακτικός του HQL ? Ναι αλλά μόνο με την έννοια ότι και τα δύο καταλήγουν στο να πάρεις δεδομένα από τη βάση και να τα κάνεις objects -- αλλά αυτό είναι τόσο γενικό που έτσι θα μπορούσαμε να βγάλουμε το οτιδήποτε εναλλακτικό του σχεδόν οτιδήποτε άλλου. Το HQL παίρνει σαν είσοδο strings. Μπορείς να του δώσεις σαν είσοδο το κείμενο του moby dick και δε θα παραπονεθεί παρά μόνο όταν τρέξει. Το LINQ είναι πολύ μεγαλύτερο σε έκταση, ξεκινάει έχοντας ρητό compiler support (στην προκειμένη σ' αυτό που δείχνεις ο compiler πρώτα σε διευκολύνει μετατρέποντας το query syntax σε method syntax και στη συνέχεια από το method syntax δημιουργεί expression tree, που είναι βασικά runtime data structure) και βασικό του χαρακτηριστικό είναι πως μπορείς να το δουλέψεις και at runtime (composability κλπ). Δεν ξέρω βασικά σε ποιό βαθμό γνωρίζεις LINQ για να μιλήσω ανάλογα.
Web_Nerd Δημοσ. 16 Σεπτεμβρίου 2014 Δημοσ. 16 Σεπτεμβρίου 2014 Ναι, γενικά μιλώντας SQL δε γράφεις. To doctrine είναι πολύ χρήσιμο και διαδεδομένο αλλά κάθε εργαλείο έχει άλλου είδους "προσωπικότητα". Πρακτικά όλα τα frameworks συνοδεύονται από κάποιο ORM. Για standalone πράγματα που μπορείς να τα ενσωματώσεις σε κάτι μεγαλύτερο βλέπεις doctrine, propel και eloquent. Για πιο lightweight καταστάσεις αξίζει να δεις και redbeanphp. Τί εννοείς με το "γενικά μιλώντας SQL δε γράφεις."? Αν αναφέρεσαι στη χρήση μόνο των ORM οι ειδικοί έχουν άλλη γνώμη και υπάρχει μεγάλη διαφωνία για το θέμα ψηλέ. http://stackoverflow.com/questions/494816/using-an-orm-or-plain-sql Όπως και με τη NoSQL. Γενικά επικρατεί ενας πανικός και το παρακάνουμε. Δεν αποτελεί τη λύση -ούτε την καλύτερη φυσικά- σε κάθε πρόβλημα. Ξέρω φίλους και τουλάχιστον 50 μεγάλες εταιρίες (Ελληνικές και διεθνείς) που δεν κάνουν καν χρήση ORM και NoSQL και είναι επαγγελματίες στο χώρο για πάνω από 15 χρόνια. Μάλιστα διατηρούν και blogs σχετικά με το γιατί δεν κάνουν χρήση των παραπάνω τεχνολογιών και ο κάθε ένας έχει τους δικούς του καλούς λόγους. Μήπως το παραγενικεύεις αγαπούλα?
acid18 Δημοσ. 16 Σεπτεμβρίου 2014 Μέλος Δημοσ. 16 Σεπτεμβρίου 2014 Για δώσε link στα blogs. Μ'αρέσει να διαβάζω blogs προγραμματιστών.
Web_Nerd Δημοσ. 16 Σεπτεμβρίου 2014 Δημοσ. 16 Σεπτεμβρίου 2014 http://blog.arkency.com/2012/12/why-we-dont-use-orm/ http://stackoverflow.com/questions/194147/are-there-good-reasons-not-to-use-an-orm http://www.mehdi-khalili.com/orm-anti-patterns-part-4-persistence-domain-model http://mindref.blogspot.gr/2013/02/sql-vs-orm.html http://martinfowler.com/bliki/OrmHate.html http://mikehadlow.blogspot.gr/2012/06/when-should-i-use-orm.html http://use-the-index-luke.com/blog/2013-04/the-two-top-performance-problems-caused-by-ORM-tools http://www.troyhunt.com/2012/12/stored-procedures-and-orms-wont-save.html http://www.reddit.com/r/PHP/comments/164r3w/to_orm_or_not_to_orm/ http://programmers.stackexchange.com/questions/139319/when-not-to-use-orm-and-prefer-stored-procedures http://www.researchgate.net/publication/224651267_Why_(not)_ORM
ParhsG Δημοσ. 16 Σεπτεμβρίου 2014 Δημοσ. 16 Σεπτεμβρίου 2014 Α ρε ασχετε γιαννάκη George Delaportas ειναι 1
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα