Ссылки на полезные ресурсы для изучающих PHP
Этот пост может быть полезен для тех, кто недавно начал изучать язык программирования PHP и теряется в количестве информации. Ниже полезные ссылки, которые я использую на постоянной основе в своей работе. Информации, доступной по этим ссылкам, в целом хватит для хорошего погружения в язык и мир веб-разработки.
В скобочках указаны доступные по ссылке языки материалов.
Официальный мануал (ru, en). Он довольно сложен для новичка, чтобы разобраться в основных концептах, однако, в нём описаны все конструкты языка, поэтому к нему можно и нужно обращаться на ежедневной основе как к словарю.
Учебник от W3Schools (en). Довольно качественная и краткая подача информации, есть упражнения и тесты. Хороший учебник для новичков.
Неплохой учебник с Двача (ru). Анонимы на форуме «Двач» написали довольно неплохой учебник для самых новичков. В качестве способа разобраться в базовых концепциях языка вполне неплохо.
Учебник от code-basics.com (ru). Ещё один неплохой учебник для новичков.
Дорожная карта развития PHP-разработчика. Описание всех навыков, которые требуются в профессиональной разработке.
Гайд по изучению языка от TProger (ru). Тоже что-то вроде дорожной карты с полезными ссылками.
PHP. Правильный путь (ru, en). Качественный мануал о том, как писать код эффективно и красиво. Стандарты, best practices etc.
PHP 7 в подлиннике. Котеров Дмитрий Владимирович, Симдянов Игорь Вячеславович, 2019. Очень качественная книга по языку, разжёвывающая все концепты и особенности языка.
PHP. Объекты, шаблоны и методики программирования. Мэтт Зандстра, 2010. Сильная книга для разработчиков среднего и выше среднего уровня.
Laravel (en) — документация по Laravel, лучшему из созданных PHP-фреймворков.
Laracasts (en) — видео-уроки по Laravel и не только, один из лучших обучающих ресурсов.
Symfony (en) — документация по Symfony, одному из мощнейших PHP-фреймворков. Symfony лежит в основе Laravel.
https://t.me/web_craft — Телеграм-канал по Laravel и Vue.js.
Шпаргалки (cheatasheets) по языку
Учебник от W3Schools.(en) Аналогично учебнику по PHP, краткий и ёмкий, с упражнениями и тестами.
Гайд по стилю SQL. (en) Как писать SQL-код качественно и по стандартам.
Если у вас есть полезные ссылки, кидайте их в комментарии!
А может кто-то запилить аналог для Java? Современный только, старых-то в интернете полно, естественно
Спасибо огромное за подробный список по изучению языка, уже м взял себе книгу «PHP 7 в подлиннике», но чувствую что немного поспешил, в самой книге советуют изучить для начала основы программирования, можете посоветовать что можно из книг взять новичку по основам?
2019 не нашел в электронном виде, только 2016.
2016 тоже норм или уже устарело?
Блог Дмитрия Елисеева и его сайт deworker.pro забыли добавить, вот где реально отличные уроки
Ай спасибо тебе мил человек. Давно искал что-то подобное в актуальном виде, к тому же так всеобъемлюще. От души)
Ответ на пост «Трудности с изучением JS»
Ответ для самых начинающих программистов на любом языке.
Практика программирования это отдельный предмет для изучения. При нормальном учебном процессе практика усваивается сама собой в школе и на младших курсах универа. Поэтому отдельных книг по ней особо и нет (буду рад, если кто посоветует пару толковых!).
По JavaScript есть два прекрасных текстовых ресурса: https://learn.javascript.ru/ и https://developer.mozilla.org/ru/docs/Web/JavaScript для других языков найти сложнее, но почти всегда можно. Например A byte of Python — бесплатная книга по Питону.
Практика — критерий понимания. Можешь сделать — понял. У тебя должна быть открыта книжка и тестовое окружение, где ты можешь сразу все пробовать. Минимально пользуйся автодополнением кода и копипастой. Прочитал, попробовал, сделал пометку в конспект на память.
Сам придумывай себе задачи. Освоил текстовый ввод-вывод и условный оператор? Делай текстовый квест, калькулятор. Освоил простецкий цикл? Думай как с его помощью можно улучшить предыдущие работы (ещё как можно). Теперь конкретно для JavaScript. Можно в HTML делать инпуты и кнопки. Тег . Кнопке можно назначить обработчик события, например onclick=»make()». И поехали эксперименты: создаешь функцию make(), в ней пишешь код. Чтобы получить доступ к содержимому поля ввода input достаточно document.getElementById(«myinput»).value — используй эту запись как переменную.
Автору исходного поста, если ты в теории добрался уже до мутации и прототипов а в практике проблемы — это уже беда. Теория сильно опередила практику. Тебе нужно убедиться, что ты в состоянии создать нормальную HTML страницу для практики. Базовый HTML изучил? Можешь накидать кнопок, инпутов, табличек? Да так, чтоб красиво было? Рекомендую для новичка Bootstrap. Для взаимодействия с тегами на странице возьми jQuery. Он позволяет найти тег или группу тегов по условию, и манипулировать этими тегами.
И начинай создавать простые но интерактивные страницы. Например создай калькулятор с кнопочками, сначала простецкий. Потом такой как в Windows. Тебе нужно научиться пользоваться условными операторами, писать условия. Научиться работать с массивами и циклами. Тут как практика — алгоритмы сортировки. Изучи функции, научись выделять осмысленный кусок кода в отдельную функцию. Научись нормально передавать параметры в функцию, никаких глобальных переменных! Научись возвращать значение из функции. Освой рекурсию как закрепление знаний о функциях. Только потом берись за ООП классы объекты прототипы и далее.
А дальше фреймворки. Выбери React или Vue и разбирайся зачем оно вообще.
DOCKER БЫТОВОЙ УРОВЕНЬ
Привет! Это небольшой гайд для новичков в Docker, который должен помочь тебе начать пользоваться докером!
Мой план-лист по бесплатным IT курсам и ресурсам
В посте про «наставление» накидали кучу годноты + в телегу.
По всему этому я пройдусь, буду иногда постить об успехах.
Некоторые глянул мельком. Поэтому если там есть продукт-плейсмент — отпишите и я удалю. На первый взгляд очень даже хорошо. Искал с нуля т.к. лучше повторить, чем вспоминать и ошибиться.
Первое я уже успел попробовать (находил сам), прохожу в текущий момент.
Stepik — python для начинающих
Если что-то хотите предложить — пишите в комментарии.
UPD: даже в начале написал, что я не в курсе ни о какой рекламе на тех ресурсах. И первый же начал разводить вонь о том, что я продажный и сайт вообще мой. Ууух я конечно злой гений.
Предлагайте ваши варианты, что сами пробовали. Обязательно попробую.
UPD2: я без понятия почему «это» вылетело в горячие. Не бейте блин тапком.
Ответ UehalVOmsk в «О собеседованиях на 700к/месяц»
Я одно время (около года) проводил тех собесы для расширения фронт команды, искали мидл+. Кандидаты были максимально разношерстые, ну и я сам попроходил очень много собесов за свою рабочую жизнь (каждая смена работы выходила в пару тройку недель по 2-3 собеса ежедневно)
Для тех, кто удивляется, почему вопросы одни и те же для джуна \ мидла \ сеньора и для разных уровней зп вот ответ:
1) Первичный отсев. Это базовые вопросы, 90% которых встречается в работе. Я принимал как технически верные ответы как по документации, так и в свободной форме верно описанные. Но и на этом валилось где то 40% кандидатов. Видимо из разряда «попробую пройти на шару». Технически не грамотные, с плавающими знаниями, некоторые и с подсказками не отвечали на вопрос
2) Проверка софт скилов, как общается кандидат, как быстро оперирует знаниями в голове, не валится ли от каверзных вопросов, выражается ли чисто по документации или объясняет более понятно своим языком. Тут отсевались люди, которые слабо могли коммуницировать (долго мямлили, на очень долгое время замолкали, сквернословили (были и такие, что было шоком для меня), всякие побратимушки тоже были, те, кто быстро начинал переходить на агресивный тон. На той работе были крупные созвоны, где были и менеджеры и бизнес представители, в корпоративную этику такие кандидаты бы не вписались
3) На части написания кода смотрелось на то, как быстро, насколько чисто пишется код, рассуждает ли кандидат вслух (Была просьба рассуждать вслух и описывать свои действия). Рефакторит ли свой код кандидат по ходу написания. Задачи я составил свои, связанные как с базовыми вопросами js и react, так и обезличенные рабочие задачи. Все это так же помогало в
выявлении степени подготовки кандидата.
По итогам собеседования я писал короткое ревью о кандидате, минусах плюсах и передавал дальше HR’ам
По итогу за год было отобрано 4 кандидата, один из которых очень быстро слился в неизвестном направлении, бросив важную задачу, которую как оказалось он не сделал. До сих пор не понимаю, что это было, то ли как то за него рядом проходили задачи, то ли какие то жизненые проблемы случились.
Было это около 3х лет назад, позиция мидл+ реакт фронт, зп 3к$