codez Posted October 25, 2013 Report Share Posted October 25, 2013 (edited) Vai vari pamatot savu ironiju? Vispār jau modernās ORM ir iebūvēta kaudze dažādu automātisku optimizāciju un kešošanu, tā kā vēl nevar zināt, vai vidējs programmētājs jebkad dabūs ko ātrāku, ko var panākt ar ORM. P.S.: Vēl bieži ir tā, ka tie, kas pirmo reizi nonāk pie ORM, īsti nezin kā tas strādā un problēmas sākas, kad pieprasot relācijas objektus, tie tiek ielasīti katrs ar savu kveriju. Moderna ORM bieži ļauj: 1) pateikt, ka tādas un tāds relācijas objektus ielādēt uzreiz (ar join) 2) uzrakstīt pašam savu join kveriju, kurā tiek pateikt, kuri relācijas objekti un kā ir jāielādē, bet ORM bibliotēka tev atgriezis smukas objektu kolekcijas, izpildot tikai vienu kveriju. Ja šis tiek ņemts vērā, ORM ir tik pat ātrs attiecībā uz kveriju daudzumu un izpildes laiku, taču klāt nāk kaudze ar bonusiem. Edited October 25, 2013 by codez Quote Link to comment Share on other sites More sharing options...
rpr Posted October 26, 2013 Report Share Posted October 26, 2013 Runa bija par performani. Jo vairāk php slāņi un funkcionalitàte, jo lēnāk. Kompilējamās valodās tā nav, bet skriptu gan. Jo sarežģītāki kveriji - lēnāk. Quote Link to comment Share on other sites More sharing options...
F3llony Posted October 26, 2013 Report Share Posted October 26, 2013 Veiktspēja nav arguments lai neizmantotu ORM. Neatkarīgi, vai tu lieto "kompilējamu valodu" vai koka bluķi. Quote Link to comment Share on other sites More sharing options...
101111 Posted October 26, 2013 Report Share Posted October 26, 2013 Veiktspēja nav arguments lai neizmantotu ORM. Neatkarīgi, vai tu lieto "kompilējamu valodu" vai koka bluķi. So true Quote Link to comment Share on other sites More sharing options...
Zefirs Posted October 26, 2013 Author Report Share Posted October 26, 2013 Veiktspēja ir arguments, lai neizmantotu ORM,bet tā vietā lietot raw SQL, pārējās vietās droši to var lietot. Quote Link to comment Share on other sites More sharing options...
F3llony Posted October 26, 2013 Report Share Posted October 26, 2013 Veiktspēja ir arguments, lai neizmantotu ORM,bet tā vietā lietot raw SQL, pārējās vietās droši to var lietot. Implying, ka tu zini, kā to raw sql rakstīt. Quote Link to comment Share on other sites More sharing options...
codez Posted October 26, 2013 Report Share Posted October 26, 2013 (edited) Jā par šo arī iedomājos. Tas darbojas, ja sistēma jāveido no 0, bet esošas sistēmas pārnest uz orm ir dažreiz neiespējami. Starp citu vajag papētīt, bet labiem ORM ir arī iespēja no esošas db automātiski uzģenerēt visus modeļus. Ja runa ir par PHP, tad man šķiet, ka Doctrine to mācēja tīri labi. P.S.: http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/tools.html#reverse-engineering bet škiet, ka jāņem vērā: Reverse Engineering is a one-time process that can get you started with a project. Converting an existing database schema into mapping files only detects about 70-80% of the necessary mapping information. Additionally the detection from an existing database cannot detect inverse associations, inheritance types, entities with foreign keys as primary keys and many of the semantical operations on associations such as cascade. Edited October 26, 2013 by codez Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.