Christian_ Skrevet 11. oktober 2005 Skrevet 11. oktober 2005 Jeg har holdt på med PHP en stund, og har kommet over dette med klasser. men alle eksempler ol. som jeg leser for å prøve å lære meg det kan løses med funksjoner uten klasser iallefall slik jeg forstår det. Hva er poenget med klasser? Hvorfor bruke klasser? Som sagt, jeg har lest utallige mange guider om dette, men jeg skjønner ikke poenget med det og da er det veldig vanskelig å lære seg det. kan noen komme med et eksempel på oop som ikke kan løses uten? Takker for alle oppklarende svar mvh Christian
ThOms-N Skrevet 11. oktober 2005 Skrevet 11. oktober 2005 Lurt litt på dette eg og.. Hadde vært kjekt å fått svar på dette.
???????? Skrevet 11. oktober 2005 Skrevet 11. oktober 2005 Dette er et spørsmål som fort vil besvare seg selv når du begynner å jobbe på større prosjekter. Så fort du har kode som du bruker i flere sider så er det enkelt å samle alt dette i en class. På den måten blir koden din mye mer ryddig, i tillegg til at dersom du må endre på den så holder det med å endre et sted. Jeg kan forsøke å illustrere litt enklt. Databaser, de fleste scripts er avhengig av de, og derfor vil en kode som dette være aktuell: $connect = mysql_connect("localhost", "user", "pass") or die("Beklager, kunne ikke koble til databaseserveren"); $select_db = mysql_select_db("databasenavn") or die("Beklager, kan ikke finne databasen"); if (!$connect or !$select_db) { // varsle admin om at det er problemer mail ("[email protected]", "Problemer med database", "bla bla bla"); } $query = "SELECT * FROM tabellnavn"; .... Dette er en kode du må plassere på ALLE sider som bruker denne tilkoblingen. Tenk deg nå at du vil gå over til persistent tilkobling - og at denne koden ligger i ca. 20 - 50 forskjellige sider. Da må du åpne alle sidene og endre de... det tar tid! Eller tenk deg at du vil gå over til mysqli_... - like mye jobb - glem ikke at du må teste sidene også etter du har endret de. Den praktiske delen burde derfor være lett å forstå. Tenk deg at alt scriptet over kan skrives slik i PHP sidene: $sql->connect("localhsot", "user", "pass", "database"); $sql-query("SELECT * FROM tabellnavn"); Vil ikke de se mye bedre ut? Ulempen der i mot med OOP er at det faktisk er litt tregere, men dette er veldig minimalt - og fordelene veier fort opp. Så lenge man utvikler enkle scripts på en side så er det ikke noen spesiell fordel, men man begynner på scripts med totalt flere tusen linjer fordelt på mange sider så er det veldig nødvendig.
Magnus Holm Skrevet 11. oktober 2005 Skrevet 11. oktober 2005 Men hvorfor bruke OOP? Hvorfor ikke bare funksjoner?
Me sjøl Skrevet 11. oktober 2005 Skrevet 11. oktober 2005 Med klasser kan du lagre data internt, ikke bare funksjonalitet som med funksjoner. Tenk deg: du har ti funksjoner som arbeider med en databasetilkobling. For hver funksjon må du ha databasetilkoblingen som et parameter. Samtidig får du tilbake et resultatsett fra databasen. Så skal du jaggu meg holde styr på det som parameter også, og så baller det på seg. En annen fordel med OOP er at du kan tenke i mer abstrakte baner, og kan innkapsle den funksjonaliteten du trenger. Så benytter du bare klassens interface mot utverdenen, og er fri til å endre på klassens interne struktur. Dette er nyttig for mange ting, f.eks. databaseabstraksjon. Når det er sagt, er ikke OOP alltids løsningen i php.
Christian_ Skrevet 11. oktober 2005 Forfatter Skrevet 11. oktober 2005 Hm, ble ikke akuratt overbevist om å lære meg det, men som sagt så vil jeg finne ut av det når jeg kommer til større prosjekter. Vi får se. Dere sier at OOP ikke er den beste løsningen i php, da regner jeg med at det ikke haster så veldig å lære seg det. Jeg får ta det som det kommer. Takk for en fin forklaring ???? og Me sjøl mvh Christian
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå