![]() |
ni som använder CI använder ni enbart CI:s funktioner. Förstår inte riktigt detta med $this->db->get?
Så objektetn $this instantieras från databas klassen. vad är db om get är funktionen? är db klassen? fast i vanlig php skriver man som Danjel ovan nämnde: $page->title ? där andra segmentet är method/property. vad är db segmentet alltså? förstår inte heller $this->load->helper(). någon som kan förklara? grejen är att jag vill förstå varför man skriver som man skriver så man förstår hur allt hänger ihop. |
$this är CodeIgniter objektet
sen anropar du bibliotek, models, views etc. db i det här fallet är databasbiblioteket (http://codeigniter.com/user_guide/database/index.html) Själv kör jag alltid egna sql-frågor istället för de funktionerna som finns med. Antar att de ska göra det enklare och snabbare men jag vill ha kontroll över frågorna själv och ofta kan de bli lite småkrångliga och måste då ändå skrivas själv... |
Ett ganska intressant inlägg i debatten. http://www.brandonsavage.net/why-eve...own-framework/
Själv skapade jag min lilla konkurrent till PHP 1997 - 1998 i C, sedan skapade jag i PHP ett ramverk/CMS som hette Firesite 1999... Naturligtvis skapade jag även eget ajax-ramverk 2004 - 2005, som döptes till SRSS och senare Toxic (http://www.dotvoid.com/2005/03/remot...jax-framework/), innan prototype och jquery och de tog över helt. (Från 2001/2002 använde jag mig av remote scripting (http://www.dotvoid.com/2002/08/remot...th-javascript/) vilket man sen började använda för att modulärt ladda javascript-moduler). Man lär sig, som författaren skriver, väldigt mycket även om man sen i slutänden inte bör sitta med tidsödande underhåll av egna ramverk. (Vilket jag inte heller längre gör...) |
Citat:
En något högre utvecklingskostnad är ofta att föredra framför ett mer resurskrävande resultat, särskilt om man arbetar på sina egna tjänster vilket webbaserade företag normalt sett gör. |
$this tillhör php objektorienterat och går till instansen av det aktuella objektet. i CI så är det en instans av CI
$this->db är alltså att db är en variabel eller eller ett objekt innuti CI.. $this->db->get är alltså (get) en funktion eller en variabel innuti db innuti CI |
jag använder .net framework 3.5 :-)
|
Citat:
Och att du som programmerare som borde koncentrera dig på affärslogiken i projektet alltid skapar bättre prestanda än de som koncentrerar sig på ramverket i sig är kanske inte helt sant. Ramverken kan också innehålla metoder för prestandaökning som kan vara för tidsödande att implementera inom ramen för ett visst projekt. Som jag skrev ovan. Det rimliga är att jobba med ramverk för att spara tid och få en bra struktur. För det gör man och det får man. När man ser att vissa delar inte håller prestandamässigt håller måttet tittar man på att byta ut de delarna för optimering. Mycket bättre hushållning med resurser som tid och pengar... (Vill bara tillägga att jag har ca 17 års erfarenhet av att jobba med både egna ramverk och tredjepartsramverk - i både kompilerad och interpreterad form...) |
Citat:
Dessutom sparar man sällan tid heller. Jag har bra fungerande funktioner och säkrad kod sedan tidigare (som har förbättrats och korrigerats då det behövts) till säkerligen 95% av allt nytt jag gör. Skulle jag använda ett ramverk istället så skulle jag vara tvungen att pilla en hel del för att få samma effektivitet utan att en massa onödigt ska finnas med. Det finns dock undantag där jag av olika anledningar (oftast just tidsbrist) inte använder egna lösningar. |
Citat:
Citat:
|
Citat:
Citat:
|
Alla tider är GMT +2. Klockan är nu 18:42. |
Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson