Heim >Backend-Entwicklung >PHP-Tutorial >Ein PHP-Experte werden: das fehlende Glied

Ein PHP-Experte werden: das fehlende Glied

WBOY
WBOYOriginal
2016-08-08 09:31:44912Durchsuche

Dieser Beitrag ist der erste von vier Beiträgen in der Reihe „Ein PHP-Profi werden“.

Beim Durchsuchen verschiedener PHP-bezogener Blogs, wie Quora-Fragen, Google-Gruppen, Newsletter und Zeitschriften, fällt mir oft eine Hierarchie der Fähigkeiten auf. Fragen ähneln etwa „Wie verbinde ich mich mit einer MySQL-Datenbank?“ oder „Wie skaliere ich mein E-Mail-System, um mehr als 10.000 E-Mails pro Stunde zu versenden, ohne einen neuen Server einzuführen?“

Ich unterteile die PHP-Kompetenzstufen in 4 Stufen (die für jede Programmiersprache oder jedes Hauptfach gelten können): Anfänger, Mittelstufe, Experte und Elite.

Stufe

Für PHP-Anfänger lernen sie, wie man Variablen verwendet, Dateien einbindet, Formulare verarbeitet usw. Sie erlernen einfache logische Strukturen. Unter Anleitung des Tutorials habe ich das Versenden von E-Mails mit PHP implementiert und sogar die objektorientierte Programmierung berührt, ohne sie vollständig zu verstehen. Sie können auch mehrere CSS-Dateien von WordPress ändern. Mit diesem Wissen beginnen sie mit der Jobsuche, scheitern aber leider meist.

Experten sind diejenigen, die viele Projekte durchlaufen haben und über reiche Erfahrung verfügen. Sie haben viele kommerzielle Anwendungen entwickelt, nutzen dafür jedoch nicht ausschließlich Frameworks. Sie sind in der Lage, mithilfe von PHP effizient mit verschiedenen Datenbanken zu entwickeln und in Besprechungen Problemlösungen zu besprechen. Sie sind mit Entwurfsmustern vertraut und können die technischen Zeichnungen des Projekts problemlos in Code umsetzen. Sie halten sich von prozeduraler Programmierung fern.

Elite-Programmierer sind diejenigen, die 10.000 Stunden gearbeitet haben, um ihre beruflichen Fähigkeiten zu verbessern. Sie können PHP-Erweiterungen entsprechend ihren Anforderungen schreiben, Fehler einfach durch einen Blick auf die Quellcodedateien finden und ihr Code-Layout sehr gut verstehen. Sie arbeiten nur an den komplexesten Projekten und sind in der Lage, alternative und kreative Lösungen für Probleme zu finden. Sie haben einige beliebte Bücher über Programmiersprachen geschrieben, Dutzende Vorträge gehalten und verfügen möglicherweise sogar über eine eigene Version der PHP-Sprache oder ein äußerst erfolgreiches Framework oder beides.

Wer gehört also zur Mittelstufe?

Das fehlende Glied

Wie können Anfänger zu Profis werden und diese übertreffen? Wenn jemand über die Grundlagen hinaus nichts weiß, wie kann er dann seine Fähigkeiten verbessern, falsche Entwicklungsmethoden aufgeben und fortgeschrittenere Entwicklungsmethoden erlernen? Diese Frage wurde mir von vielen Anfängern gestellt. Um ein Experte zu werden, muss er zunächst ein Fortgeschrittener werden.

Die folgende Liste zeigt die PHP-Lernreise, die eine Person durchlaufen muss, um eine fortgeschrittene Person zu werden:

Vergessen Sie den Spaghetti-Code

Viele Leute denken, dass die Verwendung von Klassen das Schreiben von objektorientiertem Code bedeutet, während die Verwendung von Funktionen das Schreiben von prozeduralem Code bedeutet. Um diesen Standpunkt zu untermauern, gehen wir jedoch von einer weit verbreiteten Definition aus: Prozeduraler Code ist Code, der keine Klassen und Objekte verwendet, während OOP-Code Code ist, der Klassen und Objekte so weit wie möglich verwendet.

Mein Vorschlag ist, den prozeduralen Code vollständig aufzugeben. Programmieren Sie wann immer möglich in einem objektorientierten Stil – schreiben Sie Klassen, kapseln Sie die Logik und denken Sie über die Verwendung realer Terminologie nach. Die Leistungsvorteile von prozeduralem Code verblassen im Vergleich zu den Wiederverwendbarkeitsvorteilen, die Ihnen der richtige OOP-Code bietet, und der Leichtigkeit, mit der zukünftige Entwickler weiterhin an Ihrem Projekt arbeiten können. Der Einwand gegen diesen Standpunkt lautet: „Aber WordPress ist prozedural!“. Ehrlich gesagt mag das etwas hart klingen, aber ein „WordPress-Entwickler“ ist nicht wirklich ein PHP-Entwickler, genauso wie ein Instagram-Account Sie zum Fotografen machen würde. Bitte verstehen Sie das nicht so, dass WP nutzlos ist – wenn Sie nicht erwarten, zu viel Zeit mit der Entwicklung eines Blogs, einer einfachen Website und kleinen eintägigen Projekten zu verbringen, wird die Entwicklung mit WP Wunder für Sie bewirken. Es ist großartig für Leute, die es eilig haben oder nicht über viele Fähigkeiten verfügen, aber die Beherrschung von WP wird Sie nie zu einem professionellen PHP-Entwickler machen – es verwendet Spaghetti-Codierung und bringt Ihnen unangemessene Designprinzipien bei.

Beginnen Sie mit kleinen Dingen. Denken Sie an ein reales Konzept und versuchen Sie, es im OOP-Code darzustellen. Gehen Sie einige grundlegende Tutorials durch und beherrschen Sie OOP langsam. Bleiben Sie beim Schreiben von Code im OOP-Denken, bis Sie Klassen im Allgemeinen verstanden haben, bevor Sie zu den richtigen Frameworks und verwirrenden Begriffen wie „Modell“, „Ansicht“ und „Controller“ übergehen – die alle in den Wolken liegen und keine solide Grundlage haben im OOP.

Analyse bestehender Projekte

Graben Sie tief in den vorhandenen Quellcode ein, den Sie finden können. Schauen Sie sich beispielsweise PHP-Projekte auf Github an, klonen Sie sie, stellen Sie sie auf Ihrem eigenen Host bereit und versuchen Sie, den Code zu lesen. Jede Datei, jede Zeile, bis Sie verstehen, was sie bewirken.

Suchen Sie nach Projekten mit standardisierten Anmerkungen, guter Struktur und fortlaufender Entwicklung. Projekte, die vor 2008 aktualisiert wurden, sind nicht besonders gut, wenn Sie PHP 5.5 verwenden möchten – andernfalls verpassen Sie möglicherweise die neuesten und besten Funktionen von PHP, die Sie in einem bereits überfüllten Bereich hervorheben können.

Lernen Sie, wie Sie Ihre eigene PHP-Entwicklungsumgebung erstellen

Wenn Sie Ihre eigene Umgebung erstellen können, ist das eine sehr gute Fähigkeit. Durch den Aufbau Ihrer eigenen Umgebung können Sie nicht nur geringfügige Anpassungen entsprechend Ihrer Situation vornehmen, sondern sich auch mit der Erstellung von Erweiterungen aus dem Quellcode vertraut machen.

Geben Sie die Entwicklung unter Windows auf – Wenn Ihre Hauptdesktopumgebung Windows ist, installieren Sie Virtualisierungssoftware und führen Sie eine virtuelle Linux-Maschine aus – Windows unterscheidet nicht zwischen Groß- und Kleinschreibung, seinen Zeilenenden und anderen Dingen unterscheidet sich von Großbuchstaben Das ist nicht der Fall, und die Entwicklung unter Windows wird nur eine Menge Ärger verursachen. Daher ist es am besten, auf einem System zu entwickeln, auf dem Sie das Projekt letztendlich ausführen.

Eine virtuelle Maschine kann Ihnen auch bei der Durchführung einiger Experimente helfen – wenn etwas schief geht, können Sie von vorne beginnen oder einen Rollback durchführen. Sie können es so niedrig versuchen, wie Sie möchten, ohne befürchten zu müssen, dass etwas durcheinander kommt. Es ist wichtig, die Werkzeuge zu beherrschen, aber es ist auch wichtig, über eine gute Arbeitsplattform zu verfügen.

Wenn Sie selbst Experimente durchführen, können Sie sich auch mit verschiedenen Servern vertraut machen – unabhängig davon, ob Sie Apache oder Nginx verwenden oder Appserver usw. verwenden.

Best Practices frühzeitig umsetzen

Stellen Sie beim Schreiben von Code sicher, dass Sie über ausreichend Dokumentationskommentare, schöne Einrückungen und eine gute Struktur verfügen. Wenn Sie eine Klasse, ein Projekt oder eine Bibliothek erstellen, verwenden Sie bekannte Dokumentationstools (PHPDocumentor, ApiGen), um Ihre Dokumentationskommentare zu extrahieren und zu verbessern.

Eine gute IDE ist ebenfalls sehr lohnenswert – die Verwendung eines plattformübergreifenden Editors kann Ihnen dabei helfen, jederzeit eine neue Entwicklungsumgebung einzurichten und sicherzustellen, dass Sie sich auf das Schreiben von Code konzentrieren können, anstatt Zeit mit der Änderung der Tastaturkürzel und -themen zu verschwenden . Stellen Sie sicher, dass Sie die Konfigurationsdateien der IDE an einem Ort wie Google Cloud Services sichern, damit Sie Ihre Konfigurationsdateien jederzeit für eine Neuinstallation importieren können. Eine gute IDE ist PHPStorm. Wenn Sie es sich nicht leisten können oder kein Open-Source-Projekt haben, für das eine kostenlose Lizenz erforderlich ist, ist Netbeans eine gute Wahl, und beide sind plattformübergreifend.

Durch die frühzeitige Implementierung von Best Practices bleibt Ihr Code konsistent und hilft anderen, Ihren Code reibungsloser zu lesen. Finden Sie Ihren Stil und bleiben Sie dabei – Sie helfen nicht nur sich selbst, sondern auch anderen. Versuchen Sie, die PSR-Standards (PSR-0, PSR-1, PSR-2, PSR-3) zu befolgen – es sind nicht ohne Grund Standards. Die meisten von uns nutzen und lieben diese Standards, die den Code aller wiederverwendbar und lesbar machen.

Eine großartige und ständig aktualisierte Ressource für Anfänger ist PHP auf die richtige Art – lernen Sie es und Sie werden mit den neuesten Praktiken, grundlegendem OOP, Sicherheit, Bereitstellung, Codierungsstandards und mehr, die ich erwähnt habe, vertraut sein.

Probieren Sie verschiedene Frameworks aus und wählen Sie eines aus

PHP war lange Zeit die Sprache, die von den meisten Frameworks verwendet wurde (in letzter Zeit wird JavaScript am häufigsten verwendet). Ich kann nicht sagen, ob dies an unserer Community oder an der unbeständigen Beliebtheit der Sprache liegt, aber Tatsache bleibt, dass die Auswahl eines Frameworks eine entmutigende Aufgabe sein kann, insbesondere wenn man zum ersten Mal anfängt.

Nachdem ich die meisten davon ausprobiert habe, kann ich das Phalcon-Framework aufgrund seiner Robustheit und Qualität sowie der Tatsache, dass es in C geschrieben und als Erweiterung zu PHP installiert ist (und somit leistungsfähiger als jedes andere Framework heutzutage ist, wärmstens empfehlen). Schneller). Es lohnt sich jedoch, verschiedene Frameworks selbst auszuprobieren.

Wenn Sie verschiedene Frameworks ausprobieren, werden Sie feststellen, dass dieselben Probleme auf neue Weise gelöst werden können. Jedes Framework hat Vorteile, die Ihnen gefallen, und Nachteile, die Sie hassen, aber was noch wichtiger ist: Sie lernen etwas über die Mentalität anderer (insbesondere der Entwickler des Frameworks). Sie werden neue Verwendungsmöglichkeiten und Ansätze kennenlernen. Die beste Vorgehensweise besteht darin, dasselbe experimentelle Projekt mit möglichst vielen Frameworks umzugestalten. Dies wird Ihnen helfen, die Wirksamkeit eines bestimmten Frameworks effektiv zu messen: die Geschwindigkeit der Entwicklung, mit der es verwendet wird, und seine Leistung.

Unterschätzen Sie nicht die Tipps und Tricks anderer Leute. Lesen Sie so viel wie möglich – wenn Sie dabei bleiben, wird es nicht so lange dauern, wie Sie denken. Finden Sie einen guten Blog und folgen Sie ihm, lesen Sie den Leitfaden der Website, durchsuchen Sie die StackOverflow-Fragen und -Antworten, besuchen Sie das SitePoint-Forum, abonnieren Sie den Newsletter, folgen Sie guten Ressourcen auf Google. Vermeiden Sie grundlegende PHP-Tutorials, da diese zum Zeitpunkt ihrer Veröffentlichung nicht mehr aktuell sind. Konzentrieren Sie sich stattdessen auf Auszüge und Anleitungen, die Sie online finden können und die den neuesten Code enthalten. Auch wenn Sie auf ein Thema stoßen, mit dem Sie sich bereits befasst haben, versuchen Sie, darüber zu lesen – oft werden Sie etwas Neues entdecken, wenn Sie die Ansichten anderer Leute zum gleichen Thema lesen.

Wenn es nichts zu tun gibt, versuchen Sie, etwas zu schaffen

Es gibt immer etwas zu tun. Sagen Sie niemals „Ich habe keine Projekte, an denen ich arbeiten kann“ oder noch schlimmer: „Mir ist langweilig“. Wenn Sie kein laufendes Projekt haben, an dem Sie arbeiten können, erstellen Sie eines. Sind Sie frustriert über ein Werkzeug, das Sie täglich verwenden, weil es nicht perfekt funktioniert? Machen Sie selbst ein besseres! Keine Ideen für neue Produkte? Erstellen Sie dann eine Kopie eines vorhandenen. Versuchen Sie, ein einfaches FaceBook neu zu erstellen, etwas, das Sie bereits kennen, nur um es üben zu können.

Das Wichtigste ist, niemals aufzuhören – wenn Sie nicht jede Stunde wertschätzen, werden Sie nicht in der Lage sein, 10.000 Stunden zu sammeln! Machen Sie weiter so und bleiben Sie interessiert und engagiert. Erstellen Sie eine einfache Adressbuchanwendung. Dann mit einem anderen Rahmen neu aufbauen. Und verwenden Sie eine andere Datenbank (z. B. Mongo statt MariaDB). Bleiben Sie beschäftigt!

Finden Sie einen Partner/Mentor

Lernen wird einfacher, wenn man jemanden dabei hat. Finden Sie einen Partner, der Ihre Leidenschaft teilt. Vielleicht gehören Sie zu den wenigen Glücklichen, die bereits einen Partner haben, der Ihre einzigartigen Interessen teilt. Vielleicht haben Sie einen Kommilitonen in der Schule oder im College, der gerne anfangen und hart mit Ihnen zusammenarbeiten würde. Sie können sogar einen Mentor finden und sich von Experten beraten lassen.

Unterschätzen Sie nicht die Macht eines Partners – wenn wir zusammen sind, wird es immer einen Lehrer unter uns geben!

Zusammenfassung

Wenn Sie sich auf all diese Dinge konzentrieren und sie so gut wie möglich beherrschen, wenn Sie erkennen, dass dies das ist, was Sie wollen, dann bleiben Sie dabei – Sie sind auf dem Weg, ein fortgeschrittener PHP-Entwickler zu werden. Behalten Sie Ihre Prinzipien bei, geben Sie niemals auf (auch wenn es jemand in Ihrem Umfeld tut) und üben Sie weiter.

Wenn Sie über einige nützliche Ressourcen verfügen und uns mitteilen möchten, wie Sie die Hürde für fortgeschrittene Entwickler überwunden haben (oder überqueren), hinterlassen Sie bitte unten einen Kommentar und lassen Sie es uns wissen!

Ursprünglicher Link: SitePoint-Übersetzung: Bole Online – rokety

Das Obige hat mich dazu gebracht, ein PHP-Experte zu werden: Der fehlende Link, einschließlich Aspekten des Inhalts, wird hoffentlich für Freunde hilfreich sein, die sich für PHP-Tutorials interessieren.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn