La meilleure façon d'apprendre PHP

Apprendre quelque chose à partir de zéro est presque toujours une affaire ardue - vous ne savez tout simplement pas par où commencer ou ne pas commencer. Je détestais apprendre les particularités de la syntaxe de C ++ alors que tout ce que je voulais apprendre, c'étaient des concepts de programmation maudits. Comme je suis sûr que vous pouvez être d'accord, cette situation est loin d'être idéale.

C’est là que la série Nettuts + "Le meilleur moyen d’apprendre" entre en scène. Cette série se veut votre plan directeur, votre feuille de route, votre plan d’action pour apprendre le sujet de votre choix! Vous n'avez pas à vous soucier de trouver les meilleures ressources, de trier les mauvaises et de déterminer ce qu'il faut apprendre par la suite. Tout est là. Il suffit de le suivre, étape par étape.

Aujourd'hui, nous allons trouver le meilleur moyen d'apprendre PHP.

À la recherche d'une solution rapide?

Si vous avez besoin d’une aide immédiate, essayez de travailler avec l’un des développeurs expérimentés de PHP sur Envato Studio. Ils peuvent réparer les erreurs PHP, ajouter des fonctionnalités ou même créer de nouvelles applications pour vous..

Développeurs PHP sur Envato Studio

Devoir n ° 1: Ignorer les opposants

Si vous lisez ceci, il y a des chances que vous ayez beaucoup cherché sur Google pour décider quelle langue apprendre et comment. Et, sans aucun doute, vous avez sûrement rencontré une tonne d'articles sur la façon dont le langage X est tellement meilleur que PHP - et PHP va bientôt disparaître dans l'obscurité..

Les haineux continueront de détester!

Comme le dit le dicton populaire, les ennemis vont détester! PHP a été à la barre du Web tel que vous le connaissez et c’est pour une très bonne raison. C'est un langage mature, avec une excellente documentation et un grand nombre de ressources d'apprentissage, ainsi qu'une grande variété d'utilitaires construits autour de celui-ci..

Et n'oublions pas la prolifération des hôtes et des frameworks créés par PHP. Vous aimez Heroku comme hébergement? Ne vous inquiétez pas, il existe également un certain nombre d'excellentes options pour PHP!

Devoir n ° 2: Installer PHP avec [X] AMP

Vous pouvez simplement installer PHP, mais cela devient assez ennuyeux sans serveur ni base de données pour jouer. Et en tant que débutant, ce n’est pas vraiment un travail trivial d’installer tous ces logiciels et de les configurer pour qu’ils fonctionnent avec les autres sans problème..

C'est ici que vous récupérez un paquet tel que XAMPP. Ces épargnants de la vie installent généralement Apache, votre serveur Web, ainsi que mySQL, un système de base de données et PHP réduisant considérablement le temps de configuration..

Points bonus si vous êtes du type singe de code et installez tout à la main.

Devoir n ° 3: Apprendre les principes fondamentaux

Avant de vous envoyer vers d’autres sources pour éclairer PHP, permettez-moi de vous renvoyer à notre propre série pour débutants absolus de nul autre que votre éditeur préféré, Jeffrey Way..

Dans cette série, au cours de plus de 40 screencasts, tout est couvert, de l'installation de PHP aux variables, des fonctions au fonctionnement de MySQL..

Vous ne trouverez pas une meilleure introduction au langage PHP que cette série et, même si ce n’est malheureusement pas gratuit, vous pouvez vous abonner à Tuts + Premium pour la modique somme de 19 $. Ça vaut vraiment le coup!

Mission n ° 4: Inscrivez-vous avec Khan Academy et Lynda

Khan Academy peut sembler un choix étrange, car il n'y a pas de leçons de PHP, mais croyez-moi, c'est un bon choix. Ce que vous ne pouvez pas trouver en PHP pur, vous pouvez le trouver dans les bases de la programmation. Par exemple, si vous débutez dans la programmation, ceci est un excellent point de départ pour commencer.

Lynda est un autre excellent endroit pour commencer. Ici à Envato, nous avons un immense respect pour ceux qui y enseignent - le contenu est généralement excellent et couvre bien leurs sujets. Et ils couvrent également une vaste gamme de sujets. Si vous avez besoin d'une leçon spécifique, c'est ici que vous devriez commencer.

Devoir n ° 5: Lire un Peu, bon Livres

Les vidéos devraient vous donner un très bon tremplin, mais, espérons-le, envie de plus de connaissances. Les livres ci-dessous devraient vous donner une introduction plus élaborée et de nombreux sujets variés à dévorer..

Si vous vous ennuyez en lisant les portions initiales, bien, passez directement aux portions où vous avez mal à la tête..

Solutions PHP: la conception Web dynamique rendue facile

Auteur: David Powers

?Alors, pourquoi un autre livre PHP? Eh bien, tous ceux qui utilisent PHP ne sont pas des programmeurs. PHP est le langage Web dynamique le plus couramment utilisé par les concepteurs, si leurs sites Web requièrent des fonctionnalités dynamiques et qu'il existe un grand nombre d'utilisateurs novices qui souhaitent configurer des sites Web dynamiques..?

PHP pour les débutants absolus

Auteur: Jason Lengstorf

?PHP pour Absolute Beginners commence aux tout premiers stades de la programmation Web et montre, même à l'aide d'exemples, au développeur Web le moins expérimenté, comment construire un système de gestion de contenu de base. Le livre plonge directement dans l’écriture d’applications Web accompagnées d’une explication plutôt que d’expliquer des éléments du langage, puis de montrer.?

Livre de recettes PHP

Auteur: Adam Trachtenberg

?PHP Cookbook offre une multitude de solutions aux problèmes que vous rencontrerez régulièrement. Avec des sujets allant des questions pour débutants aux techniques de programmation Web avancées, ce guide contient des exemples pratiques - ou des "recettes"? - pour toute personne utilisant ce langage de script pour générer du contenu Web dynamique.?

Devoir n ° 6: Créer quelque chose de simple

C'est le moment idéal pour construire quelque chose de simple avec vos nouvelles connaissances.

Bien! Avec toutes ces informations qui tourbillonnent à l'intérieur, vous devriez vous sentir comme une rockstar. Sinon, ne vous inquiétez pas, c'est tout à fait normal. Parle-moi plus tard pour que nous puissions partager des notes sur notre sentiment de daft.

C'est le moment idéal pour essayer de construire quelque chose de simple avec vos nouvelles connaissances. Il est préférable de ne pas essayer de construire quelque chose de trop compliqué et d’échouer, c’est beaucoup plus décourageant que vous ne le pensez. Imaginez être rejeté pour la première fois. Maintenant, multipliez-le par quelques centaines et vous serez proche.

Puisque vous débutez, jouez la sécurité et construisez quelque chose d'absolument fondamental, comme une application CRUD. Rien de majeur - quelques entrées et un tableau "non cool" pour afficher les résultats sauvegardés. Cet exercice minuscule testera vos connaissances sur de nombreuses bases de PHP, y compris la compétence tant vantée "d'interfaçage avec une base de données"..

Devoir n ° 7: Créer quelque chose d'un peu plus compliqué

Je me sens mieux maintenant? Vous devriez! Vous avez regardé où il n'y avait rien et vous avez dit: "ça ne va pas!" et créé quelque chose à partir de zéro. Si c'était moi, je serais pompé. Utilisons-le pour approfondir un peu nos connaissances.

Bien qu'une simple application CRUD soit un bon début, vous auriez idéalement besoin de plus de complication. Un simple système de connexion / utilisateur est absolument génial pour cela.

Vous apprendrez comment les sessions fonctionnent, comment l'authentification de base est réalisée, comment implémenter les mesures de sécurité de base et bien plus encore..

Remarque: Si vous avez besoin d'un peu d'aide, commencez ici.

Devoir n ° 8: Essayez un framework Lean, Lightweight

À ce stade, après avoir créé un système non trivial, vous avez probablement remarqué à quel point le travail est répétitif. Pourquoi diable avez-vous besoin d'écrire votre propre cours ou de travailler vous-même sur le hachage de mots de passe? La réponse, mes amis, est d'aller avec un cadre léger.

Un cadre de travail résume un grand nombre des caractéristiques répétitives et récurrentes de votre application typique, libérant ainsi votre cerveau pour vous permettre de faire avancer les choses..

Remarque: Sans vouloir nous vanter, nous avons une session extrêmement complète qui couvre la quasi-totalité des parties importantes de CodeIgniter, un framework très léger et puissant. Si vous préférez Kohana, nous le faisons aussi!

Devoir n ° 9: Testez un framework de pile complète

Maintenant que vous utilisez un framework léger, vous pouvez maintenant vérifier le chemin alternatif - un framework complet. Une infrastructure de pile complète est généralement livrée avec beaucoup plus de fonctionnalités, notamment des générateurs de code, des ORM et un serveur intégré. CakePHP - l’équivalent PHP de Rails est un excellent choix.

La raison pour laquelle vous devez vérifier plus tard, c'est parce qu'il y a beaucoup de "magie". Sans une solide compréhension du fonctionnement des structures légères, il est difficile de vraiment se plonger dans celles qui sont les mieux décrites, car vous serez en grande partie perdu et ne comprendrez pas. Comment les choses fonctionnent.

Remarque: L’équipe Nettuts + recommande à la fois FuelPHP et Laravel comme infrastructures PHP de pointe et modernes.

Lecture supplémentaire

  • Débuter avec le framework FuelPHP
  • Construire un panneau d'administration avec FuelPHP
  • Validation de formulaire facile dans FuelPHP
  • Construire des applications Web à partir de zéro: Introduction
  • Construire des applications Web à partir de zéro: Eloquent
  • Construire des applications Web à partir de zéro: filtres, validations et fichiers

Devoir n ° 10: Construire quelque chose de génial

Avec toutes ces informations derrière vous, vous donnant le courage d'Indiana, le moment est venu de construire quelque chose de vraiment impressionnant. C’est la destination finale de PHP nirvana - et le choix vous appartient.

Alors, que devriez-vous construire exactement? Voici quelques idées:

  • Un blog est toujours une option sûre. Il existe une tonne de solutions open source pour vous inspirer de l'architecture logicielle et les exigences de fonctionnalité sont claires..
  • C'est un peu la vieille école mais un forum de discussion est un autre excellent choix. Les droits du modérateur et le nombre d'articles, ahoy! Si vous avez besoin de conseils, ce didacticiel est un excellent point de départ..
  • Ou, si vous êtes trop branchés pour créer l’un d’entre eux, créez-vous une application de gestion de projet ou même une liste de tâches. Ils sont toujours amusants à construire et vous finirez presque toujours par les utiliser personnellement.

Bien sûr, il n'y a que des suggestions. Personne ne vous empêche de créer une salle de discussion multi-utilisateur en temps réel ou un service qui reçoit des entrées d’étrangers inconnus sur Internet et illumine des choses dans votre chambre. Personne ne juge, deviens fou!

Devoir n ° 11: Avancer dans l'élit du développement

Le développement concerne autant le workflow que le code.

Le développement concerne autant le flux de travail que le code. Récemment, le flux de travail d'un développeur typique a été considérablement amélioré par le contrôle de version ainsi que par des solutions de plate-forme en tant que service.

Le contrôle de version, comme prévu, vous évite d'avoir à gérer les révisions manuellement, tandis que les solutions PaaS vous évitent d'avoir à effectuer beaucoup de travail administrateur système simplement pour que votre application soit à l'échelle..

Les ressources pour ce dernier sont un peu difficiles à trouver, mais voici un excellent aperçu de la prise en main de Git.

Mission n ° 12: Impliquez-vous et soyez à jour

De nouvelles techniques et outils sont introduits chaque jour.

L'industrie du développement Web est rarement en équilibre - tout change tout le temps. De nouvelles techniques et de nouveaux outils sont introduits chaque jour et il est important que vous lisiez à leur sujet, mais que vous commenciez également à contribuer..

Trouver un petit problème dans un cadre? Soumettez un patch. Ajout de nouvelles fonctionnalités? Patch loin! Ceux-ci vous rapportent non seulement un bon karma, mais également des points précieux sur votre CV.

Et, oh, à propos de rester à jour? Abonnez-vous à notre flux et suivez-nous sur Twitter et je vous promets que vous saurez tout ce que vous devez savoir.!

Devoir n ° 13: Gardez l'esprit ouvert et explorez

Même si vous êtes un maître du domaine PHP, vous ne pouvez vous permettre ou ne devriez pas vous reposer. PHP est une grande langue mais cela ne veut pas dire qu'il fait absolument tout parfaitement.

Il y a de plus en plus de nouvelles langues, chacune apportant sa propre contribution à la résolution d'un problème très spécifique que vous ne pouvez tout simplement pas vous permettre de rater. Et apprendre quelque chose de nouveau ne fait pas disparaître les connaissances acquises plus tôt? Eh bien, sauf Star Wars, bien sûr. Ces nouveaux films étaient un chaos.

Ruby, Python et Clojure font partie des langages qui m'émerveillent constamment et je pense qu'ils méritent également votre attention. Ni l'un ni l'autre de ces langages ne sont nécessairement «meilleurs» que le PHP, mais chacun d'entre eux fait les choses à sa manière et vous vous devez de jeter un coup d'œil pour déterminer si cette approche vous convient. Bien que nous ayons un faible niveau de contenu relatif à Clojure, nous avons d’excellents tutoriels sur Ruby et Python ici.

Conclusion

Eh bien, c'est la fin de la route, partenaire! Espérons que ce plan puisse vous aider à devenir un maître PHP et à conquérir le monde.

Si vous pensez qu'il me manque des ressources évidentes ici, n'hésitez pas à me crier dessus dans la section commentaires ci-dessous et je mettrai à jour cet article en pleurant silencieusement. Merci beaucoup pour la lecture!

En passant, vous pouvez aussi apprendre beaucoup en parcourant les scripts PHP en vente sur Envato Market. Il en existe près de 3 000, des systèmes de réservation aux applications de marketing par courrier électronique. Ils peuvent vous donner une idée de ce qui est possible avec PHP, et qui sait, vous y trouverez peut-être quelque chose pour vous aider dans vos projets PHP!

Scripts PHP sur Envato Market