Всем доброго дня...
У меня есть пару вопросов по продвижение в сфере веба. На данный момент у меня опыт работы около 1.5 года на фрилансе. До сих пор использую процедурный стиль и использовал mysql. Пол года назад только перешел только на mysqli. Недавно дали задание написать личный кабинет для фирмы, где введутся отчёты, формируются заявки и т.д.. Разработка длится уже 3 месяц (сейчас уже закончил, дальше идет сопровождение). Так вот сделав данный кабинет, у меня самого пропало желание вообще им заниматься, так сказать из за моего гавнокода. Как только мне говорят дописать дополнительный модуль к нему, у меня сразу же падает настроение и желание даже лезть туда уже нет.
Постоянно у кого не спрошу, ругают за процедурный стиль и mysql(i). Я не спорю, на данный момент хорошие разработчики используют более продвинутые технологии.
Но вот когда я начинаю вникать в ООП (все основы знаю), MVC я никак не могу уловить сути "зачем?", "чем лучше?" и т.д..
Читал самые простые статьи про mvc (на хабре), про ООП, но все равно не могу ничего запомнить. Не пользовался git'ом, composer'ом, json, DOM, GD, CURL. Ни разу не пользовался фреймворками (т.к. ооп и mvc не знаю), а хочется..
Проще говоря, я хочу добиться хотя бы middle уровня (в моем понимании это знание технологий что я указал выше и правильное мышление и подход перед созданием проекта). Если я не так все пониманию поправьте пожалуйста.
Подскажите пожалуйста, с чего мне начать дальнейшее продвижение. Книги, курсы или сразу практика ? Правильнее начать изучать mvc или опп ?
Вам бы в коллективе поработать, сразу поймете зачем всё это нужно. А вообще учите laravel, yii или любой другой фреймворк, через "не хочу" используйте его в работе. Через пару недель будете удивляться, как же вы без этого обходились. Почитайте вопросы безопастности, LFI, SQL injection. Вероятно узнаете много нового о своих проектах и, опять же, поймете зачем использовать фреймворк. Читайте "Чистый код", "Паттерны проектирования" и десяток других книг с хорошими отзывами. Ходите по собеседованиям, даже без цели устроиться на работу, сразу поймете что именно вы упускаете в знании своих инструментов.
Спасибо большое. Подскажите пожалуйста, все же, с какого мне фреймворка начать, чтобы как можно больше для себя извлечь ? Я готов учить "через не хочу".
AllReady: лично мои предпочтения скорее всего вам не помогут. Я бы последовал совету nimfai
и выбрал CodeIgniter, просто потому что он очень прост в освоении и построен по тому же принципу что и большинство других (потом легко перейти). Попробуйте посмотреть какие фреймворки требуются сейчас для устройства на хорошие вакансии, вероятно есть какая нибудь тенденция. Мне, если что, больше всего импонировал Laravel.
Если Вы выбрали язык программирования PHP, то первое что нужно изучить, как мне кажется, это материал на сайте http://getjump.me/ru-php-the-right-way/. Это фундаментальные основы программирования на PHP.
Так же рекомендую прочитать книгу "PHP. Объекты, шаблоны и методики программирования". Автор - Мэт Зандстра.
И главное это постоянная практика. Кодить каждый день и не бояться экспериментировать.
Возьми какой нибудь фреймворк полегче, например я брал CodeIgniter(не знаю что может быть проще его), и начни читать документацию(погугли, есть переведённая, только следи что бы версии фреймворка и движка совпадали). В MVC важно понять принцип, а дальше, с практикой, всё придёт.