[!] PHP c нуля - Как научиться программировать. Как стать программистом
Primary tabs
Предварительные замечания
- Как проходит обучение
- Ответы на популярные вопросы о PHP,
смысле жизни,"самом лучшем языке программирования" и т.д. - Индивидуальная помощь: мы готовы оказать и личную помощь в обучении, для этого нужно написать сюда.
Программа подготовки программиста (PHP + MySQL)
- Обзорно прочитать из книжки [2] материал со стр. 43 по стр. 126. (общее представление о работе системы),
используйте наш Словарь Программиста для понимания/уточнения неясных терминов (как из этого пункта так и из всех последующих в ходе вашего обучения) - Устанавливаем Linux, разбираемся с командной строкой и правами пользователей
- Устанавливаем и настраиваем PHP и среду разработки для него.
- Далее читайте онлайн-учебник по PHP с главы 1 до главы 4 включительно, выполняйте (по желанию, чтобы понять) имеющиеся там упражнения и, если требуется, задавайте вопросы.
- После чтения из предыдущего пункта, приступайте к решению этого списка задач, следуя рекомендациям по оформлению (решения задач оформляем в один .php файл, перед каждой задачкой в комментариях ее номер и условие)
Пояснения по этому пункту:
Если вы ранее не программировали/почти не программировали, то для начала вам нужно подтянуть способность к алгоритмизации, то есть умению разбить задачу на шаги и решить её имеющимися программными средствами (например, языка PHP),
если же программировали, то будет полезно проверить как вы усвоили синтаксис PHP.Для отработки алгоритмизации вам не потребуется разворачивать систему на компьютере (в случае если у вас есть интернет) - достаточно просто использовать online-интерпретаторы PHP .
Если решать эти задачи самостоятельно получается с большим трудом, то рекомендуем пройти наш базовый курс по Паскалю, а потом уже вернуться к данной программе. - Возвращаемся к учебнику по PHP и читаем с 215 по 247 страницу (Глава 7. ООП и файлы) -- на этом завершается база (основы) изучения самого языка PHP.
- Далее приходит время программирования первых веб-страниц (элементарных "сайтов") -- основы чего описаны у Стивена Хольцнера на страницах со 143 по 213 (Глава 5. Элементы управления HTML и Глава 6. Web-приложения -- читаем и запускаем примеры). Здесь вам потребуется настроить среду разработки -- используйте инструкции по настройке для той ОС, которая уже используется вами для повседневных задач на вашем компьютере (т.е. если вы используете windows - пока что не надо его менять, к изучению Linux мы перейдем, но далее).
-
После первых примеров приложений, изученных выше, усилим наши теоретические познания в PHP, рассмотрев, как в нём реализовано ООП:
Из книги [2] читаем стр. 423 - 537 ("Объекты и классы" + "Наследование" + "Интерфейсы и трейты" + "Пространства имён" + "Обработка ошибок и исключений") -
- 9.1) Устанавливаем MySQL & разворачиваем дамп учебной БД
- 9.2) Читаем книгу Бена Форта SQL 10 минут на урок (Освой самостоятельно) -- стр. 1-233.
-
После чего пришло время использовать SQL из PHP:
Читаем из книги [2] страницы (666-715), особенно важно: стр. 704-715. (предыдущее должно быть уже знакомым) - Из книжки [2] читаем раздел "Работа с сессиями" -- стр. 622-634.
- Из книжки [2] читаем: Глава 20. Основы регулярных выражений стр. 377-412
- Из книжки [2] читаем: стр. 209-247 ("Функции и области видимости" + "Генераторы").
- Из книжки [2] читаем стр. 556-583 ("Итераторы" + "Отражения").
- Из книжки [2] читаем стр. 809-815 ("Документирование").
- Научимся работать с системой контроля версий Git.
- Из книги [3] читаем стр. 33 - 250.
При этом новый для вас материал по-идее должен начинаться со страницы 115 (начиная с неё нужно запускать примеры).
Исходный код примеров можно получить тут, клонировав данный репозиторий на ваш компьютер. - Первая CMS -- вникаем в существующий код и выполняем практические задания
- Изучим стандарты PSR, так мы сможем писать код, следуя общепринятым нормам.
- Материалы раздела o SimpleMVC доступны тут.
- Подготовка в практике: В чем особенности раздела.
- Управление зависимостями: Использование Composer в своем проекте.
- Автоматическое тестирование: Codeception - фреймворк для автоматического тестирования кода
- Реализация дополнения/важная правка к SimpleMVC или иному проекту (останется в основном репозитории IFF)
Введение в архитектуру web-приложений
Знакомство с Linux. Настройка среды разработки
PHP -- начало
Знакомство c SQL
PHP -- подробности
Git: Система контроля версий
JQuery -- как библиотека для программирования браузерных сценариев
Первый сайт: Первая CMS
PSR: Стандарты сообщества PHP для написания кода
SimpleMVC -- простейший MVC-фреймворк
Подготовка к практике
Практика: улучшаем существующее, создаем новое
PHP -- учим первый фрэймворк (Yii2)
Тут есть варианты:
- Yii2:
- Читаем русскую документацию (см. тут)
- Переписываем велосипед на Yii2.
- Symfony:
- Переносим проект с SimpleMVC на Symfony
Материалы
- Рекомендации к оформлениею материалов
- Примеры решения задач.
- Правила оформления кода.
- Правила именования переменных
- Теоретически вопросы по программе подготовки бэкэнд разработчиков (PHP, SQL, LINUX)
Учим параллельно
Сколько времени это занимает
Практические сведения о том, какая часть курса сколько занимает, доступны здесь.
Литература
- Стивен Хольцнер "PHP в примерах. Включая версию 6" - Москва, БИНОМ. 2007: http://fkn.ktu10.com/?q=node/7754
- Дмитрий Котеров, Игорь Симдянов - PHP7 (в подлиннике) - БХВ Петербург. 2016
- Адам Фримен "JQuery для профессионалов" - apress 2013
Дополнительная литература
Также могут оказаться полезными книги:
- Учебник PHP для новичков от Трепачёва Дмитрия: http://code.mu/books/php/
- Log in to post comments
- 52814 reads
vedro-compota
Wed, 11/08/2017 - 14:10
Permalink
там в первом задании написано
ответ:
обычно в текстах в квадратных скобках указывают номер источника — внизу есть список литературы, и там — да Котеров идёт под вторым номером)
_____________
матфак вгу и остальная классика =)
vedro-compota
Fri, 05/18/2018 - 21:56
Permalink
подробности -- об этой программе подготовки
Ответ: https://youtu.be/CwE7IfCw344
_____________
матфак вгу и остальная классика =)
vedro-compota
Sun, 09/02/2018 - 21:26
Permalink
Начинающим
Возможное сообщение для начинающего:
По процессу:
-- обязательно пиши. когда прошёл какой-то пункт, возможно я дам какой-то совет.
-- можно задавать любые вопросы, если что-то непонятно в текстах.
_____________
матфак вгу и остальная классика =)