Citat:
Ursprungligen postat av ConnyWesth
Det går givetvis att använda ett befintligt ramverk, men då lär man sig inte så mycket, dessutom måste man först lära sig ett antal olika ramverk för att testa vilket som passar bäst för ens behov.
|
Där håller jag inte med.
Om man använder ett bra ramverk och verkligen sätter sig in i hur det fungerar(läser källkoden) lär man sig väldigt mycket, men framför allt lär man sig rätt. De flesta ramverk prioriterar best practices och hög kvalitet i koden så långt det är möjligt vilket gör att lär sig att skriva bra kod själv när man utökar och utvecklar i ramverket. Det finns inte, åtminstone inte enligt mig, något bättre sätt att lära sig än att kolla på bra kod och använda den om man vill lära sig rätt och skriva bra kod.
Givetvis lär man sig mycket att experimentera och bygga eget också, men risken är att man då lär sig fel och får dåliga vanor när man kodar. Börjar man med ett ramverk utan väldigt goda kunskaper om mjukvaruarkitektur så kommer man mes största sannolikhet också få skriva om hela ramverket eller kasta det när man blivit en duktigare utvecklare. Det är inget jag kan rekommendera oavsett vilken kunskapsnivå man ligger är på. Jag egentligen inte någon poäng med att skriva egna ramverk från grunden alls. Det är ett enormt jobb att hålla sitt egna ramverk modernt och up to date.
En väldigt intressant trend är det som tartareandesire skrev om ovan, dvs att man plockar komponenter ifrån olika ramverk och på så sätt syr ihop ett eget ramverk där man plockat de bästa modulerna för varje uppgift. I och med att Composer blivit en standard kan man numera på ett väldigt smidigt sätt hantera dessa beroenden och uppdatera komponenterna separat från sin egen "app"- eller "core"-kod. Man får då både extremt flexibel kod som man har väldigt mycket kontroll över samtidigt som den inte är så jobbig att underhålla. Modulerna uppdateras löpande av tredje part och har redan bra dokumentation vilket förenklar enormt mycket.