Изучение чего-то с нуля почти всегда является трудным делом — вы просто не представляете, с чего начать или не начинать, с чего начинать. Мне не нравилось узнавать об идиосинкразиях синтаксиса C ++, когда все, что я хотел выучить, было некоторыми чертовыми концепциями программирования. Как я уверен, вы можете согласиться, что это не идеальная ситуация.
Вот тут-то и начинается серия Nettuts + «Лучший способ учиться». Эта серия призвана стать вашим планом, вашей дорожной картой, вашим планом действий по изучению выбранной вами темы! Вам не нужно беспокоиться о поиске лучших ресурсов, сортировке плохих и выяснении того, чему учиться дальше. Это все здесь. Просто следуйте ему, шаг за шагом.
Сегодня мы собираемся выяснить лучший способ изучения PHP.
Ищете быстрое решение?
Если вам нужна немедленная помощь, попробуйте поработать с одним из опытных разработчиков PHP в Envato Studio. Они могут исправить ошибки PHP, добавить функции или даже создать новые приложения для вас.
Задание № 1: игнорировать скептиков
Если вы читаете это, скорее всего, вы много гуглили, чтобы решить, какой язык выучить и как. И, без сомнения, вы, должно быть, натолкнулись на массу статей о том, что язык X намного лучше, чем PHP — и PHP скоро умрет от неясности.
Ненавистники пусть ненавидят!
Как гласит народная поговорка, ненавистники будут ненавидеть! PHP был у руля сети, как вы знаете, и это по очень веской причине. Это зрелый язык, отличная документация и огромное количество учебных ресурсов, а также большое количество утилит, созданных на его основе.
И давайте не будем забывать об огромном количестве хостов и фреймворков, которые породил PHP. Нравится Heroku, как хостинг? Не волнуйтесь, есть множество отличных опций для PHP!
Задание № 2: Установить PHP через [X] AMP
Вы можете просто установить PHP, но без сервера и какой-то базы данных становится довольно скучно. И как новичок, это не совсем простая работа, чтобы установить все это и настроить каждый для работы с другими без проблем.
Здесь вы можете получить пакет, такой как XAMPP. Эти спасатели обычно устанавливают Apache, ваш веб-сервер, вместе с mySQL, системой баз данных и PHP, что значительно сокращает время установки.
Бонусные баллы, если вы набираете код обезьяны и устанавливаете все вручную.
Задание № 3: Изучить основы
Прежде чем я отправлю вас в альтернативные источники для просвещения PHP, позвольте мне сначала отослать вас к нашей собственной серии для абсолютных новичков от не кого иного, как ваш любимый редактор, Джеффри Уэй.
В этой серии более 40 скринкастов рассказывается обо всем, от установки PHP до переменных, от функций до работы с MySQL.
Вы не найдете лучшего представления о языке PHP, чем эта серия, и, хотя он, к сожалению, не бесплатный, вы можете подписаться на Tuts + Premium всего за 19 долларов. Это абсолютно стоит того!
Задание № 4: Зарегистрируйтесь в Академии Хана и Линде
Хан Академия может показаться странным выбором, так как там нет уроков PHP, но поверьте мне, это хороший выбор. То, что вы не можете найти в чистом PHP, вы можете найти в основах программирования. Например, если вы новичок во всем программировании, это отличное место для начала.
Еще одно замечательное место для начала — Линда. Здесь, в Envato, мы с огромным уважением относимся к тем, кто преподаёт там — содержание обычно на высшем уровне и хорошо освещает их темы. И они охватывают широкий круг тем. Если вам нужен конкретный урок, это то , где вы должны начать.
Задание № 5: прочитайте несколько хороших книг
Видео должно дать вам очень хороший трамплин, но, надеюсь, жаждущий большего количества знаний. Приведенные ниже книги должны дать вам более подробное введение и множество разнообразных тем, которые вы можете поглотить.
Если вам скучно читать начальные части, хорошо, просто переходите к тем частям, где болит голова.
Решения PHP: динамический веб-дизайн стал проще
Автор: Дэвид Пауэрс
«Так почему же еще одна книга по PHP? Ну, не каждый, кто использует PHP, является программистом. PHP является наиболее распространенным динамическим веб-языком, используемым дизайнерами, если их веб-сайтам требуется динамическая функциональность, и есть множество начинающих пользователей, которые хотят создавать динамические веб-сайты ».
PHP для абсолютных новичков
Автор: Джейсон Ленгсторф
«PHP для абсолютных новичков начинается с самых начальных стадий веб-программирования, показывая на примерах даже самым неопытным веб-разработчикам, как построить базовую систему управления контентом. Книга погружается непосредственно в написание веб-приложений с сопроводительным объяснением, а не с объяснением элементов языка, а затем с примерами ».
PHP Cookbook
Автор: Адам Трахтенберг
«PHP Cookbook предлагает множество решений для проблем, с которыми вы будете регулярно сталкиваться. С темами, которые варьируются от вопросов для начинающих до продвинутых методов веб-программирования, это руководство содержит практические примеры — или «рецепты» — для тех, кто использует этот язык сценариев для создания динамического веб-контента ».
Задание № 6: Создать что-то простое
Это идеальное время для создания чего-то простого с вашими новыми знаниями.
Хорошо! Со всей этой информацией, циркулирующей внутри, вы должны чувствовать себя рок-звездой. Если нет, не волнуйтесь, это совершенно нормально. Поговори со мной позже, чтобы мы могли поделиться своими заметками о том, как мы чувствуем себя глупо.
Это идеальное время, чтобы попытаться создать что-то простое с помощью новых знаний. Лучше не пытаться создать что-то слишком сложное и потерпеть неудачу, хотя это гораздо более уныло, чем вы думаете. Представьте, что вас отвергают впервые. Теперь умножьте это на несколько сотен, и вы будете близки.
Поскольку вы только начинаете, будьте осторожны и создайте что-то абсолютно простое, например, приложение CRUD. Ничего особенного — несколько входов и таблица «uncool» для отображения сохраненных результатов. Это крошечное упражнение проверит ваши знания многих основ PHP, в том числе хваленого навыка взаимодействия с базой данных.
Задание № 7: Создать что-то более сложное
Чувствую себя лучше? Вам следует! Вы смотрели туда, где ничего не было, и говорили: «Это не сработает!» и создал что-то с нуля. Если бы это был я, я был бы накачан. Давайте использовать его, чтобы расширить наши знания немного больше.
В то время как простое приложение CRUD — отличное начало, в идеале вам понадобятся более сложные. Простая система входа / пользователя абсолютно подходит для этого.
Вы узнаете, как работают сеансы, как выполняется базовая аутентификация, как реализовать базовые меры безопасности и многое другое.
Примечание: если вам нужно небольшое руководство, начните здесь.
Задание № 8: опробуйте Lean, Lightweight Framework
На этом этапе, после создания нетривиальной системы, вы, вероятно, заметили, насколько повторяющимися являются некоторые работы. Какого черта вам нужно написать собственный класс сессий или работать над хэшированием паролей самостоятельно? Ответ, друзья мои, заключается в том, чтобы использовать легкие рамки.
Фреймворк абстрагирует множество повторяющихся, типовых функций в вашем типичном приложении, таким образом, освобождая ваш мозг для реального достижения цели.
Примечание: не говоря уже о нашем собственном гудке, но у нас есть очень тщательный сеанс, который охватывает почти все важные части CodeIgniter, очень легкого, но мощного фреймворка. Если вы предпочитаете Kohana, мы тоже это делаем !
Задание № 9: опробуйте фреймворк с полным стеком
Теперь, когда вы работали с облегченным фреймворком, вы можете проверить альтернативный путь — фреймворк с полным стеком. Полная структура стека обычно поставляется с гораздо большим количеством функций, включая генераторы кода, ORM и встроенный сервер. Отличным выбором будет CakePHP — PHP-эквивалент Rails.
Причина, по которой вам нужно проверить это позже, заключается в том, что происходит много «магии». Без четкого понимания того, как работают легковесные фреймворки, трудно по-настоящему разобраться с лучшими фреймворками, так как вы в основном потеряетесь и не поймете, как все работает.
Примечание. Команда Nettuts + рекомендует и FuelPHP, и Laravel в качестве первоклассных современных сред PHP.
Дополнительное Чтение
- Начало работы с платформой FuelPHP
- Создайте админ-панель с FuelPHP
- Простая проверка формы в FuelPHP
- Создание веб-приложений с нуля: введение
- Создание веб-приложений с нуля: красноречивый
- Создание веб-приложений с нуля: фильтры, проверки и файлы
Задание № 10: Создайте что-нибудь удивительное
Имея всю эту информацию позади вас, давая вам чванливость Индианы, сейчас самое время создать что-то действительно потрясающее. Это конечный пункт назначения PHP нирваны — и выбор за вами.
Так что именно вы должны строить? Вот несколько идей:
- Блог — это всегда безопасный вариант. Существует множество решений с открытым исходным кодом, чтобы вы могли вдохновиться архитектурой программного обеспечения, а требования к функциональности однозначны.
- Это немного старая школа, но доска обсуждений — еще один отличный выбор. Права модератора и количество сообщений, ахой! Если вам нужно небольшое руководство, этот учебник — отличное место для начала.
- Или, если вы слишком умны для любого из них, создайте себе приложение для управления проектами или даже просто список задач. Их всегда весело создавать, и вы почти всегда будете использовать их лично.
Конечно, есть только предложения. Никто не мешает вам создавать многопользовательский чат в реальном времени или службу, которая получает информацию от случайных незнакомцев с Интернетом и освещает вещи в вашей комнате. Никто не судит, сходи с ума!
Задание № 11: Продвижение в элиту развития
Разработка касается как рабочего процесса, так и кода.
Разработка касается как рабочего процесса, так и кода. В последнее время типичный рабочий процесс разработчика был значительно улучшен с помощью контроля версий, а также решений для платформы и сервиса.
Управление версиями, как и ожидалось, освобождает вас от необходимости управлять ревизиями вручную, в то время как решения PaaS избавляют вас от необходимости выполнять большую часть работы системного администратора только для масштабирования вашего приложения.
Ресурсы для последнего немного сложно найти, но вот отличная заставка по началу работы с Git.
Задание № 12: присоединяйтесь и будьте в курсе событий
Новые методы и инструменты внедряются каждый день.
Индустрия веб-разработок редко находится в состоянии равновесия — все постоянно меняется. Новые методы и инструменты внедряются каждый день, и важно, чтобы вы не только читали о них, но и начинали вносить свой вклад.
Найти небольшой глюк в некоторых рамках? Отправить патч. Добавлен новый функционал? Патч прочь! Это принесет вам не только хорошую карму, но и ценные очки в вашем резюме.
И, о, о том, чтобы быть в курсе? Подпишитесь на нашу рассылку и следите за нами в Twitter, и я обещаю, что вы будете знать все, что вам нужно знать!
Задание № 13: Сохраняйте открытость и исследуйте
Даже если вы владелец домена PHP, вы не можете позволить себе или не должны отдыхать. PHP — великий язык, но это не значит, что он делает абсолютно все идеально.
Существует все больше и больше новых языков, каждый из которых добавляет свое вращение к решению очень специфической проблемы, которую вы просто не можете позволить себе пропустить. А изучение чего-то нового действительно не уничтожает знания, полученные ранее, не так ли? Ну, кроме «Звездных войн», конечно. Эти новые фильмы были потрясающими.
Ruby, Python и Clojure — это те языки, которые меня постоянно поражают, и я думаю, что они также заслуживают вашего внимания. Ни один из этих языков не обязательно «лучше», чем PHP, но каждый из них делает все по-своему, и у вас есть шанс взглянуть и выяснить, подходит ли вам этот подход. Несмотря на то, что у нас немного мало информации, связанной с Clojure, у нас есть отличные учебники по Ruby и Python прямо здесь.
Вывод
Ну, это конец пути, партнер! Надеемся, что этот план поможет вам стать мастером PHP и, действительно, захватить весь мир.
Если вы чувствуете, что я упускаю некоторые очевидные ресурсы здесь, не стесняйтесь кричать на меня в разделе комментариев ниже, и я обновлю эту статью, пока плачу молча. Большое спасибо за чтение!
Кстати, вы также можете многому научиться, просматривая PHP-скрипты для продажи на Envato Market. Их почти 3000, охватывающих все: от систем бронирования до приложений для маркетинга по электронной почте . Они могут дать вам представление о том, что возможно с PHP, и кто знает, может быть, вы найдете что-то там, чтобы помочь вам с вашими проектами PHP!