Ankündigung
Einklappen
Keine Ankündigung bisher.
Video tutorial: Einführung in PSR-0 Autoloading
Einklappen
Neue Werbung 2019
Einklappen
X
-
Zitat von tomBuilder Beitrag anzeigenIch fang mal an,
auszusetzen habe ich an dem video nichts!
Zitat von tomBuilder Beitrag anzeigennaja man könnte rootdir noch variablen machen, aber ob es das bringt ?
Zitat von tomBuilder Beitrag anzeigendie sprache ist wesentich flüssiger und natürlicher, nur manchmal hackt noch die betonung.apt-get install npm -> npm install -g bower -> bower install <package> YOLO [URL]https://www.paypal.me/BlackScorp[/URL] | Mein Youtube PHP Kanal: [url]https://www.youtube.com/c/VitalijMik[/url]
Kommentar
-
- ~03:15 Vorschlag: Ich habe meine Autoloader als Klasse abgebildet und liefere über eine kleine Config die möglichen Ordner-Pfade. So kann ich bei Erweiterung der Ordner-Struktur reagieren, ohne den Autoloader selbst anfassen zu müssen.
- ~03:31 Windows versteht auch Slash, die Separierung ist nicht zwingend erforderlich.
- ~06:15 pathinfo() liefert alles, was man benötigst.
- ~05:30 Escaping erklärst Du in einem anderen Video, aber Namespaces werden einfach mal so mit reingeworfen? Ich denke, das könnte "Anfänger" überfordern.
Competence-Center -> Enjoy the Informatrix
PHProcks! • Einsteiger freundliche Tutorials • PreComposed Packages
Kommentar
-
Zitat von Arne Drews Beitrag anzeigen- ~03:15 Vorschlag: Ich habe meine Autoloader als Klasse abgebildet und liefere über eine kleine Config die möglichen Ordner-Pfade. So kann ich bei Erweiterung der Ordner-Struktur reagieren, ohne den Autoloader selbst anfassen zu müssen.
Zitat von Arne Drews Beitrag anzeigen- ~03:31 Windows versteht auch Slash, die Separierung ist nicht zwingend erforderlich.
Zitat von Arne Drews Beitrag anzeigen- ~06:15 pathinfo() liefert alles, was man benötigst.
Zitat von Arne Drews Beitrag anzeigen- ~05:30 Escaping erklärst Du in einem anderen Video, aber Namespaces werden einfach mal so mit reingeworfen? Ich denke, das könnte "Anfänger" überfordern.
apt-get install npm -> npm install -g bower -> bower install <package> YOLO [URL]https://www.paypal.me/BlackScorp[/URL] | Mein Youtube PHP Kanal: [url]https://www.youtube.com/c/VitalijMik[/url]
Kommentar
-
Zitat von BlackScorp Beitrag anzeigenJa aber auf der Offiziellen Seite von PSR-0 ist da halt ein strpos
Mal abgesehen davon verstehe ich nicht, warum Du Dich zwingend auf die PSR-0 berufst:
Deprecated - As of 2014-10-21 PSR-0 has been marked as deprecated. PSR-4 is now recommended as an alternative.Competence-Center -> Enjoy the Informatrix
PHProcks! • Einsteiger freundliche Tutorials • PreComposed Packages
Kommentar
-
Zitat von Arne Drews Beitrag anzeigenBei solchen Dingen versteckst Du Dich meiner Meinung nach zu sehr hinter der PSR. Die PSR gibt auch nur Richtlinien vor, kann Dir aber nicht vorschreiben, mit welchen PHP-Funktionen Du zum - auch von den PSR akzeptierten - Ziel kommst. Deshalb heißen die Code-Blöcke auch Example.
Mal abgesehen davon verstehe ich nicht, warum Du Dich zwingend auf die PSR-0 berufst:apt-get install npm -> npm install -g bower -> bower install <package> YOLO [URL]https://www.paypal.me/BlackScorp[/URL] | Mein Youtube PHP Kanal: [url]https://www.youtube.com/c/VitalijMik[/url]
Kommentar
-
Gut gemacht und als Einführung zur Funktionsweise des Autoloading total ausreichend.
Den Tipp gegen Ende des Videos mit dem Hack zum Laden von Funktionen halte ich aber für überflüssig.
Anstelle eine Dummy-Klasse aufzurufen welche die Funktionen mit lädt können die Funktionen doch gleich als statische Methoden einer Klasse ( = Funktionsbibliothek) realisiert werden und diese können dann z.B. mit
PHP-Code:$value = Db::meineFunktion1();
Mir ist kein Fall bekannt, wo in PHP eine Funktion benötigt wird was nicht auch durch den Aufruf einer statischen Methode abgedeckt werden kann.
Kommentar
-
Zitat von jspit Beitrag anzeigenGut gemacht und als Einführung zur Funktionsweise des Autoloading total ausreichend.
Den Tipp gegen Ende des Videos mit dem Hack zum Laden von Funktionen halte ich aber für überflüssig.
Anstelle eine Dummy-Klasse aufzurufen welche die Funktionen mit lädt können die Funktionen doch gleich als statische Methoden einer Klasse ( = Funktionsbibliothek) realisiert werden und diese können dann z.B. mit
PHP-Code:$value = Db::meineFunktion1();
Mir ist kein Fall bekannt, wo in PHP eine Funktion benötigt wird was nicht auch durch den Aufruf einer statischen Methode abgedeckt werden kann.
apt-get install npm -> npm install -g bower -> bower install <package> YOLO [URL]https://www.paypal.me/BlackScorp[/URL] | Mein Youtube PHP Kanal: [url]https://www.youtube.com/c/VitalijMik[/url]
Kommentar
-
Das Video hat mir auch sehr gut gefallen. Man merkt dass deine Videos immer besser werden.
Ggf. noch eine Video Idee:
Ich denke vielen Anfängern würde noch ein Video helfen, wie man mysql durch mysqli oder pdo ersetzt. Die Frage kommt aktuell ja wieder relativ häufig hier im Forum auf.
- 1 Likes
Kommentar
-
Zitat von Zeichen32 Beitrag anzeigenDas Video hat mir auch sehr gut gefallen. Man merkt dass deine Videos immer besser werden.
Zitat von Zeichen32 Beitrag anzeigenGgf. noch eine Video Idee:
Ich denke vielen Anfängern würde noch ein Video helfen, wie man mysql durch mysqli oder pdo ersetzt. Die Frage kommt aktuell ja wieder relativ häufig hier im Forum auf.apt-get install npm -> npm install -g bower -> bower install <package> YOLO [URL]https://www.paypal.me/BlackScorp[/URL] | Mein Youtube PHP Kanal: [url]https://www.youtube.com/c/VitalijMik[/url]
Kommentar
-
Zitat von BlackScorp Beitrag anzeigen
Es war halt darauf bezogen, wenn du schon eine Codebasis hast und in meisten Fällen hast du sowieso pro Datei eine Einordnung, dann kannst du mit zwei Zeilen code an jeder Datei deine includes überflüssig machen. Also aktuellen Code mit wenig Handgriffe verändern.
Das Laden der Datei in welcher sich deine Funktionen befinden wird ja im Video als Beispiel so gemacht:
PHP-Code:Db::functions;
Etwas besser finde ich dies:
PHP-Code:new Db;
PHP-Code:class Db{}
Lib1.php :
PHP-Code:class Lib1{
public static function load(){}
}
//Beispielfunktion
function myFunction1()
{
return __FUNCTION__;
}
PHP-Code:Lib1::load();
echo myFunction1();
Kommentar
-
Stimmt, eine Funktion wäre eventuell besser, im Nachhinein ist man immer schlauer Ich werde aber irgendwann eh noch ein Projekt komplett mit Funktionen umsetzen, da werde ich dann den Weg gehen.
apt-get install npm -> npm install -g bower -> bower install <package> YOLO [URL]https://www.paypal.me/BlackScorp[/URL] | Mein Youtube PHP Kanal: [url]https://www.youtube.com/c/VitalijMik[/url]
Kommentar
-
Noch ein Tipp:
Sind historisch bedingt sehr viele Dateien mit Funktionen in einen Verzeichnis vorhanden, müssen ja alle Dateien bei den Varianten wie #12 gezeigt bearbeitet werden.
Durch eine triviale Erweiterung der load-Methode in einer Datei können dann alle weiteren Dateien des Verzeichnisses so
PHP-Code:Lib1::load("Lib2");
Kommentar
-
Ich finde super dass du das durchziehst und am Ball bleibst. Wird schon!
Meine Kritik:- Auf der PHPStorm-Oberfläche ist immer so viel los und man verliert schnell den Blick bzw. der Blick wird nicht auf die relevanten Bereiche gelenkt. Ich empfehle hier speziell für Videos das drumherum auszublenden und nur den Code zu zeigen. Ggf. auch kontrastreichere Farben und die Schrift größer.
- Ich bin mir nicht sicher ob ein Anfänger den Erklärungen folgen kann. Gerade wenn man es mit Anfängern zu tun hat sollte man erstmal ganz pragmatisch zeigen was das Ziel ist (funktional), wie man zum Ziel kommt und dann in die Tiefe gehen (wie registriere ich eine Autoloading-Funktion?). Wobei der umgekehrte Weg vermutlich für einen Anfänger leichter zu bewältigen ist: Composer installieren, Autoloader konfigurieren, fertig.
- PSR-0 statt PSR-4 (wurde ja schon genannt)
[SIZE="1"]Atwood's Law: any application that can be written in JavaScript, will eventually be written in JavaScript.[/SIZE]
Kommentar
Kommentar