Этот текст о том, с чего начать прежде чем писать в @phpGeeksJunior
Так же у нас есть https://t.me/phpGeeks и https://t.me/dbGeeks
-
Тема чата - php и связанное с ним. Оффтоп не приветствуется
-
Общение стикерами оставьте для флудилок
-
Спам и боты банятся как только, так сразу. Если заметили спам, то смело зовите модератора
-
Прежде чем задать вопрос - попробуй найти ответ сам
-
За флуд можно отправиться в RO на день или неделю.
-
Постинг вакансии запрещен.
-
Код выкладывать на gist.github.com, 3v4l.org или аналогичный сервис. Картинки запрещены, уважайте других людей. Telegram позволяет форматировать куски кода:
public function index() { return 'hello phpgeeks!'; }
-
Постарайтесь не писать односложные сообщения в ряд. Осмыслите и сформулируйте свой вопрос, далее задайте его одним-двумя сообщениями.
-
Не надо писать "Кто работал с ...", задавайте сразу вопрос.
-
Не нужно задавать вопросы "Как взломать, как украсть". Это не чат для юных хакеров
Начало жизни в мире php(читать ссылки в порядке очередности):
- http://www.phptherightway.com/ 🇺🇸 или http://getjump.github.io/ru-php-the-right-way/
- https://ru.code-basics.com/languages/php
- Паттерны проектирования PHP
- https://github.com/roistat/php-code-conventions
- https://github.com/phptodayorg/php-must-watch 🇺🇸
- https://git-scm.com/book/ru/v1 или https://git-scm.com/book/en/v1
- https://habrahabr.ru/post/136110/
- https://github.com/arturpanteleev/webdev-map
- https://roadmap.sh/backend 🇺🇸
- https://github.com/jupeter/clean-code-php или https://github.com/peter-gribanov/clean-code-php
- https://github.com/hellerve/programming-talks 🇺🇸
- https://habr.com/ru/companies/skyeng/articles/666626/
Очень и очень рекомендуется иметь профиль https://github.com
- Basic Coding Standard: http://www.php-fig.org/psr/psr-1/
- Coding Style Guide: http://www.php-fig.org/psr/psr-2/
- Extended Coding Style Guide: https://www.php-fig.org/psr/psr-12/
- PER Coding Style 2.0 https://www.php-fig.org/per/coding-style/
Ваши проекты редко не требуют подключения сторонних дополнений. Очень много задач было решено до вас, очень много библиотек написано. Но не стоит руками их скачивать и ложить в папку проекта, а стоит использовать composer и искать пакеты на packagist. Подробнее про него https://habrahabr.ru/post/145946/
Лучшим IDE для php, в котором много инструментов из коробки, является phpstorm. Новичкам строго рекомендуется. На втором месте советуем VS Code. А в остальном, любой редактор(vim, emacs, atom, sublime text and etc.) можно настроить для удобной работы с php.
В этом разделе собраны ресурсы, которые помогут тебе быстрее освоится в мире php и веб-разработки в целом. Есть информация как для начинающих так и для более опытных программистов.
- https://map.hexlet.io/stacks/php - Платный ресурс, но в бесплатном режиме можно увидеть карту обучения и все темы которые нужно изучить.
- http://ruhighload.com/ - Рассказывают просто о сложных вещах.
- https://www.sitepoint.com/php/ 🇺🇸 - Статьи о РНР и не только, уровень читателя - разный.
- http://www.phpdeveloper.org/ 🇺🇸 - Подборка новостей из мира РНР.
- http://stackoverflow.com/documentation/php/topics 🇺🇸 - новый проект от SO(раздел о php)
- https://arturpanteleev.gitbook.io/phpinterview/ - Что нужно знать для собеседования
- https://github.com/index0h/php-conventions 🇺🇸 - Рекомендации по написанию PHP кода
- http://old.code.mu/books/php 🇺🇸 - азы php
--Фримен Эр., Фримен Эл., Сьерра К., Бейтс Б. - Паттерны проектирования
—Б. Маклафлин - Объектно-ориентированный анализ и проектирование
—Мэтт Вайсфельд — Объектно-ориентированное мышление
—Мэт Зандстра - PHP. Объекты, шаблоны и методики программирования
—Kristopher Wilson - The Clean Architecture in PHP
—Мартин Фаулер. Архитектура корпоративных программных приложений
—Харольд Абельсон, Джеральд Джей Сассман - Структура и Интерпретация Компьютерных Программ
—Эрик Эванс - Предметно-ориентированное проектирование (DDD). Структуризация сложных программных систем
—Чарльз Петцольд - Код. Тайный язык информатики
—М. Фаулер - Рефакторинг
—Боб Мартин «Чистый код»
и еще:
- Working effectively with legacy code
- Refactorin фаулера
- Agile Software Development, Principles, Patterns, and Practices дяди боба про SOLID
- Applying UML and patterns от Крэйга Лармана (про GRASP)
- XP от кента бэка
- Эрик Эванс про DDD
- The Goal про теорию ограничений
- Symfony 🇺🇸
- Best practices 🇺🇸
- PHPUnit
- Docker, Docker compose
- Любая СУБД (MySQL, Postgreql)
- Фреймворки (Laravel, Symfony,
Yii3 (Ждем релиза)) - NoSQL СУБД (Redis)
- PHPStan, Psalm
Взято с phppro7