CakePHP - wozu braucht man das?
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
anlehnung
apache
architektur
code
controller
erstellen
finger
interpreter
jemand
klasse
konsole
laufen
modell
nachteil
programmiersprache
regel
setzen
sprache
technologie
url
-
Ich bin jetzt vor kurzem mal auf CakePHPgestoßen, als Erklärung hab ich bei Wikipedia aber nur gefunden, dass das wie Rugy on Rails ist... aber was ist das genau und wozu ist das gut? Sind das CMS Systeme, oder wozu braucht man das?
lg
P.S. kann sein, dass das auf der Seite von cakephp.org steht, aber das meiste dort ist leider in Englisch... ;)
Beitrag zuletzt geändert: 5.5.2009 21:58:50 von zenks -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Um das zu verstehen, musst du dich mit Softwarearchitektur auseinander setzen. Ruby on Rails verfolgt einige Konzepte, zum Beispiel das MVC-Modell (Model-View-Controller, trennt das Modell (Datenbank), die View (Templates) und Controller (Steuereinheit) voneinander) oder auch das sogenannte Scaffolding ("Gerüstbau", damit kann man Scripte per Programm (meist über die Konsole) erstellen lassen).
Ruby ist eine Scriptsprache, so wie PHP auch, Ruby on Rails ist die komplette Serverumgebung (wie Apache+PHP-Interpreter, nur eben Apache+Ruby-Interpreter und noch einige Zusatzprogramme). PHP lässt dem Programmierer sehr viel Freiraum, wodurch man PHP zwar schnell lernen kann, aber kaum jemand professionell PHP entwickelt, da es nichts vorschreibt (im Gegensatz zu anderen Scriptsprachen für die serverseitige Webentwicklung).
CakePHP ist ein Framework in PHP geschrieben, das ähnlich wie Ruby on Rails ist. Es nutzt die auch das MVC-Modell und Scaffolding, da das wesentliche Vorteile, insbesondere der Architektur mit sich bringt.
Wenn du aber noch nicht fitt in PHP bist, lass am besten erst einmal die Finger davon, lerne PHP und Objektorientierte Programmierung und erst dann kannst du mit großen Frameworks wie CakePHP etwas anfangen. -
Danke für deine ausführliche Erklärung :)
Als Autodidakt denke ich wird man nie komlett fit in einer Programmiersprache, ich würde mich dennoch schon als Fortgeschrittenen definieren ;).
Naja ich habe es mir jetzt mal heruntergeladen und probier das mal aus, auch wenn ich iwie gerade nur eine Startseite habe...
Backend heißt also nicht, dass es dazu eine graphische Oberfläche gibt? Ist das dann nach wie vor PHP-Code, den ich in Anlehnung an die CakeClassen verwende?
Verwendest du CakePHP?
Du sagtest, dass "kaum jemand professionell PHP entwickelt", sind dann die Webseiten von Google und Co auf solchen Backends wie CakePHP geschrieben oder laufen die mit aspx?
lg -
Google und Co nutzen häufig wie du schon richtig erkannt hast Technologien wie ASP.net, JSP/JSF/etc, Ruby und was es noch so alles gibt. Was im einzelnen verwendet wurde sieht man als Anwender in der Regel recht selten. Man kann eine Website schließlich auch mit Perl und anderen Sprachen erstellen. Am Ende kommt die HTML Seite heraus und für den Benutzer gibt es keinen signifikanten Unterschied.
-
zenks schrieb:
Backend heißt also nicht, dass es dazu eine graphische Oberfläche gibt?
CakePHP ist kein CMS sondern ein Framework, was grob gesagt bedeutet, dass du deine Webseite mit hilfe der Cake-Klassen programmierst statt wie in einem CMS zusammenklickst.
Ist das dann nach wie vor PHP-Code, den ich in Anlehnung an die CakeClassen verwende?
CakeCMS ist komplett in PHP geschrieben.
Verwendest du CakePHP?
Ich habe mich eine Zeit lang in Ruby on Rail eingearbeitet, aber bin nunmal in PHP fitter, darum habe ich eine Alternative in PHP gesucht, worunter ich unter anderem CakePHP gefunden habe. Mittlerweile habe ich meine eigenen Klassen, verwende es also nicht.
Du sagtest, dass "kaum jemand professionell PHP entwickelt", sind dann die Webseiten von Google und Co auf solchen Backends wie CakePHP geschrieben oder laufen die mit aspx?
Der Vorteil von PHP ist auch gleichzeitig der Nachteil und zwar, dass PHP sehr einfach ist. In anderen Sprachen wird man zB zur Objektorientierung gezwungen, wodurch ein ordentlcher Code entsteht (relativ). Große Webseiten wie zB Amazon, eBay oder Google sind meist nicht mit Scriptsprachen, sondern über Servlets umgesetzt. Hat alles seine Vor- und Nachteile, für den Hobbyprogrammierer reicht PHP, wer professionell entwickelt sollte aber mehr Ahnung von Sprachen an sich (und Architektur) haben und wie man mit diesen effizient umgeht. -
Okay, vielen Dank. Jetzt seh ich das ganze etwas klarer: Ein Framework ist quasi nur eine Programmierumgebung, somit ist PHP letztlich ja auch ein Framework, nur das das direkt auf dem Server läuft, oder?
Sollte mir vlt. noch weitere Programmiersprachen anlernen, um mehr den Überblick zu haben :) und evtl. noch besseren PHP-Code zu zaubern ;).
schönen Tag noch
Beitrag zuletzt geändert: 6.5.2009 10:48:57 von zenks -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage