Kom ihåg mig?
Home Menu

Menu


Metodik för php-programmering

 
Ämnesverktyg Visningsalternativ
Oläst 2007-02-25, 21:20 #21
mr_lundis mr_lundis är inte uppkopplad
Medlem
 
Reg.datum: May 2006
Inlägg: 218
mr_lundis mr_lundis är inte uppkopplad
Medlem
 
Reg.datum: May 2006
Inlägg: 218
Citat:
Ungefär till vad använder ni dessa frameworks till? Är det till allt ni gör eller bara avancerade lösningar?

Vilka direkta fördelar får man av att använda dem?
Fördelarna med att använda ramverk som CakePHP, Symfony och liknande är att:

1. Strukturera koden på ett bra sätt, ramverken "tvingar" ofta dig till det. Både Cake och Symfony bygger på MVC strukturen (Model-view-controller), vilket innebär att man separerar de olika lagren i koden.
Så alla visuella saker hamnar i vyn, all databas logik i modellen och all applikations logik i controllern.
Vad är fördelarna med detta då? Jo, genom att strukturera koden så är det möjligt att gå in och designa om hela sidan utan att behöva bry sig ett dyft om logiken i applikationen.
Eller tvärt om, skriva om hela logiken utan att fronten påverkas.
Detta går att uppnå även utan ramverk, men då krävs det mycket energi, tålamod och tid.

2. Slippa allt för person beroende system. Detta då genom punkt 1, genom att följa vissa "standard"
strukturer kan någon annan relativt snabbt sätta sig in i applikationen och förstå hur den fungerar.

3. Minska produktions tiden! Man slipper otroligt mycket "dödkodande". Ramverket sköter det mesta åt dig.
Du behöver till exempel inte fånga varenda mysql fråga eller skriva någon smart algoritm för språk hantering.
Sedan kan man även använda sig utav de kod generatorer som de flesta större ramverk erbjuder.
De kan t.ex genera ett admingränssnittet på sekunder!

4. Koden du skriver går ofta att använda om och om igen, du följer ju alltid samma struktur.

5. Det är enkelt att utöka applikationen med nya funktioner.

Detta va då några utav fördelarna med att använda ramverk det finns säkert flera jag inte kommer på nu, återkommer i så fall :P

Att använda ramverk är ändå mest fördelaktigt vid större projekt,
vid små projekt kan det bli så att dt tar mer tid att använda ramverk än vad du sparar på det.
mr_lundis är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-02-25, 23:12 #22
Hjalle Hjalle är inte uppkopplad
Medlem
 
Reg.datum: Dec 2006
Inlägg: 181
Hjalle Hjalle är inte uppkopplad
Medlem
 
Reg.datum: Dec 2006
Inlägg: 181
Tar inte det egna lärandet skada om man bara tar "färdig kod" istället för att skriva den själv? Istället för att göra en egen algoritm så tar man en annan istället och behöver inte tänka alls. Jag kan förstå att det är fruktansvärt praktiskt, men är det att rekommendera för en som inte är riktigt fullärd?

Tack för ditt svar btw.
Hjalle är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-02-26, 10:31 #23
Kaffe Kaffe är inte uppkopplad
Medlem
 
Reg.datum: Dec 2003
Inlägg: 227
Kaffe Kaffe är inte uppkopplad
Medlem
 
Reg.datum: Dec 2003
Inlägg: 227
Citat:
Originally posted by Hjalle@Feb 25 2007, 23:12
Tar inte det egna lärandet skada om man bara tar "färdig kod" istället för att skriva den själv? Istället för att göra en egen algoritm så tar man en annan istället och behöver inte tänka alls. Jag kan förstå att det är fruktansvärt praktiskt, men är det att rekommendera för en som inte är riktigt fullärd?

Tack för ditt svar btw.
Eftersom delar av grunderna rör sig bortom PHP kapacitet, exempelvis är PHP weak typed och PHP4 saknar i princip OOP stöd helt. Man får helt enkelt själv definiera vad som är publika funktioner eller privata. Skall man lära sig alla aspekter av programmering är jag rädd att PHP inte är helt rätt val.

Sedan skulle jag nog inte hävda att ramverk är skadliga. .NET-plattformen är inte mer än ett ramverk och det är många programmerare som börjar där. Problemet med .NET är väl mest att det går att bygga en applikation nästan uteslutande genom drag 'n drop. PHP ramverken tvingar en förr eller senare att rulla upp ärmarna och faktiskt skriva kod.

Det finns ju inget som säger att det ena utesluter det andra heller för den delen. Hittar du ett ramverk med bra dokumentation som du märker att "Oj, det här var ju lätt att jobba i" så kan du ju alltid börja rota under huven lite och kanske skriva dina egna komponenter.
Kaffe är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-02-26, 13:04 #24
mr_lundis mr_lundis är inte uppkopplad
Medlem
 
Reg.datum: May 2006
Inlägg: 218
mr_lundis mr_lundis är inte uppkopplad
Medlem
 
Reg.datum: May 2006
Inlägg: 218
Citat:
Originally posted by Hjalle@Feb 26 2007, 00:12
Tar inte det egna lärandet skada om man bara tar "färdig kod" istället för att skriva den själv? Istället för att göra en egen algoritm så tar man en annan istället och behöver inte tänka alls. Jag kan förstå att det är fruktansvärt praktiskt, men är det att rekommendera för en som inte är riktigt fullärd?

Tack för ditt svar btw.
Jag häller med kaffe, det väll dumt att uppfinna hjulet flera gånger om. Visserligen har jag programmerat PHP i flera år,
men min erfarenhet är att man tendenserar att utan ramverk endå bara skriva enkel (query-fetch-echo) kod i slut ändan.
Det är ju faktiskt väldigt sällan man gör något "nytt".

Men om du nu vill skriva mkt kod själv så kan du precis som kaffe säger skriva egna komponenter och använda istället för ramverkets egna,
det är upp till dig.

Sedan om man ska skriva OO i PHP så är det v. 5 som gäller.
mr_lundis är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-02-26, 13:26 #25
Kaffe Kaffe är inte uppkopplad
Medlem
 
Reg.datum: Dec 2003
Inlägg: 227
Kaffe Kaffe är inte uppkopplad
Medlem
 
Reg.datum: Dec 2003
Inlägg: 227
Citat:
Originally posted by mr_lundis@Feb 26 2007, 13:04
Men om du nu vill skriva mkt kod själv så kan du precis som kaffe säger skriva egna komponenter och använda istället för ramverkets egna,
det är upp till dig.
Tänkte mer på att de flesta ramverk behöver kompletteras.

Men att bygga ett eget ramverk är ju antagligen den bästa övningen, så sett. Men det lär ju bli några versioner innan man blir klar
Kaffe är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-08-28, 23:51 #26
demomusic demomusic är inte uppkopplad
Nykomling
 
Reg.datum: Sep 2004
Inlägg: 23
demomusic demomusic är inte uppkopplad
Nykomling
 
Reg.datum: Sep 2004
Inlägg: 23
Mina bästa tips:
* Använd program med integrerad sftp/ftp stöd:
- PDT - PHP Developer Toolki till Eclipse
- Om inte ovan, gå över till Linux (rekommenderar Ubuntu) och använd Quanta+
* Använd en egen errorhandler som visar backtrace vid fel (Det finns fria sådana ErrorHandler-klasser)
* Om du inte behöver ensamrätt till koden: Bygg gärna nya projekt på befintliga CMS-ramverk, exempelvis Joomla eller Drupal
* Annars, använd ett ramverk som CakePHP, Symfony eller CodeIgniter (fråga mig inte vilken som är bäst - klurar på det själv men jag har valt CakePHP)
demomusic är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-08-29, 00:02 #27
Innocast Innocast är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Aug 2004
Inlägg: 688
Innocast Innocast är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Aug 2004
Inlägg: 688
Jag rekommenderar VERKLIGEN INTE program med inbyggt FTP/SFTP stöd. Problemet vi har där jag jobbar, är att Dreamweaver cache:ar filer och laddar upp dessa lite hur som (när de e i relation med den nedladdade filen) utan att kolla om de ändrats... Suger verkligen när man förstår någon annans arbete...
Innocast är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-08-29, 00:27 #28
WizKid WizKid är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Apr 2004
Inlägg: 618
WizKid WizKid är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Apr 2004
Inlägg: 618
Vi har satt upp egna utvecklingsmiljöer på en Ubuntu burk. Sen använder jag WinSCP som direkt synkar upp mina ändringar till mitt konto. När jag sen är nöjd med ändringarna och testat att det fungerat så checkar jag in filerna via SVN. Väldigt smidigt att slippa ha Apache, MySQL mm på min dator. Och Ubuntuburken är väldigt mycket mer lik produktionsservern än om jag skulle köra det lokalt på min Windows dator.
WizKid är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-08-30, 13:18 #29
stakess avatar
stakes stakes är inte uppkopplad
Medlem
 
Reg.datum: May 2005
Inlägg: 219
stakes stakes är inte uppkopplad
Medlem
stakess avatar
 
Reg.datum: May 2005
Inlägg: 219
Intressant tråd det här!

Själv använder jag mig inte av ramverk utan har under året byggt upp en hel del användbara klasser, som input-validation, image-hantering, db-hantering. Fördelen med det är väl att jag har full insikt på vad som sker under ytan vilket kan vara till stor hjälp vid optimering och felsökning av ett projekt. Nackdelen är väl, som andra framfört att mitt "Personliga ramverk" saknar någon utförligare dokumentation vilket gör den praktiskt taget oanvändbar för utomstående utvecklare. En annan nackdel var väl tiden det tog att utveckla sina egna klasser men så här i efterhand känns det bra att man lärt sig PHP genomgående. Använder dock vissa externa klasser som känns väldigt självklara och "onödiga" att duplicera. t.ex swiftmailer.org och htmlpurifier.org. Många kanske menar på att vilken klass som helst är onödigt att duplicera då det i princip redan finns allt, men jag gillar detaljer och ogillar överflödigt med kodrader och klasser :P

Ang. utvecklingsmiljön sitter jag med ZEND studio(under xp) som syncar med hjälp av NetDrive direkt mot servern, känns något segt ibland. Vid trial->error testing så brukar jag hinna före med att trycka refresh i browsern innan den nya versionen finns på plats. Handlar bara om några sekunders fördröjningen men kan vara ack så irriterande ibland. Använder även ett program lokalt på datorn: HeidiSQL för hantering av mySQL databas då jag tröttnat på phpMyAdmin's otroliga seghet!
stakes är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 15:54.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017